
John Maddock wrote:
Folks,
There are a few failures from Boost.Math (for example http://tinyurl.com/clvlq3) which I'm unable to reproduce locally - it seems only certain (possibly AMD x86-64 machines running Linux or *BSD) exhibit the problem. I can provide a test case to help with debugging what's going on, but I need to find someone who can reproduce the issue first. So... if you think you can help, then cd into libs/math/test and do a:
bjam gcc test_hypergeometric_dist0 test_hypergeometric_dist1 test_hypergeometric_dist2 test_hypergeometric_dist3 test_hypergeometric_dist4 test_hypergeometric_dist5
and if one or more fail then let me know the failure message and I'll put together a test case. I can reproduce the failure for dist1, dist2, dist3 and dist5. The full error message is too long for this list to accept, so I'm just posting the message of dist1.
Linux x86-64, GCC 4.3.3 Running 1 test case... Checking quantiles with Mathematica data with type float ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Checking quantiles with Random large data with type float ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Absolute tolerance:1.19209e-07 Tolerance for type f is 0.000596046 % Checking quantiles with Mathematica data with type double ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Checking quantiles with Random large data with type double ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ test_hypergeometric_dist.cpp(240): error in "test_main_caller( argc, argv )": check quantile(du, cp) >= x failed Failure was with data x = 30520, r = 130605, n = 130605, N = 523360, p = 1.315394088731268169855067478460234e-53, q = 1 Absolute tolerance:2.22045e-16 Tolerance for type d is 1.11022e-12 % Checking quantiles with Mathematica data with type long double ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Checking quantiles with Random large data with type long double ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ test_hypergeometric_dist.cpp(240): error in "test_main_caller( argc, argv )": check quantile(du, cp) >= x failed Failure was with data x = 30520, r = 130605, n = 130605, N = 523360, p = 1.3153940887312682609778382091540272e-53, q = 1 test_hypergeometric_dist.cpp(240): error in "test_main_caller( argc, argv )": check quantile(du, cp) >= x failed Failure was with data x = 4770, r = 130605, n = 130605, N = 1030167, p = 1.22798082982754627280320578058046e-3094, q = 1 test_hypergeometric_dist.cpp(240): error in "test_main_caller( argc, argv )": check quantile(du, cp) >= x failed Failure was with data x = 15134, r = 256574, n = 130605, N = 1030167, p = 1.1105244685326902267944526554403882e-3545, q = 1 test_hypergeometric_dist.cpp(240): error in "test_main_caller( argc, argv )": check quantile(du, cp) >= x failed Failure was with data x = 11903, r = 256574, n = 256574, N = 2427690, p = 1.9101122505923986270675426093883161e-2808, q = 1 test_hypergeometric_dist.cpp(240): error in "test_main_caller( argc, argv )": check quantile(du, cp) >= x failed Failure was with data x = 241837, r = 523360, n = 523360, N = 1030167, p = 2.6242122183575062859028854854238337e-1957, q = 1 test_hypergeometric_dist.cpp(240): error in "test_main_caller( argc, argv )": check quantile(du, cp) >= x failed Failure was with data x = 208651, r = 2063277, n = 256574, N = 2427690, p = 4.0582793494211428626917554262141244e-625, q = 1 Absolute tolerance:2e-16 Tolerance for type e is 1e-12 % Checking quantiles with Mathematica data with type real_concept ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Absolute tolerance:2e-16 Tolerance for type N5boost4math8concepts12real_conceptE is 1e-12 % *** 7 failures detected in test suite "Test Program" EXIT STATUS: 201