...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
These tests test the total time taken to execute all of Boost.Math's test cases for these functions. In each case the best performing library gets a relative score of 1, with the total execution time given in brackets. The first three libraries listed are the various floating point types provided by this library, while for comparison, two popular C++ front-ends to MPFR ( mpfr_class and mpreal) are also shown.
Table 1.8. Bessel Function Performance
Library |
50 Decimal Digits |
100 Decimal Digits |
---|---|---|
mpfr_float |
1.2 (5.78s) |
1.2 (9.56s) |
static_mpfr_float |
1.1 (5.47s) |
1.1 (9.09s) |
mpf_float |
1.0 (4.82s) |
1.0(8.07s) |
cpp_dec_float |
1.8 (8.54s) |
2.6 (20.66s) |
1.3 (6.28s) |
1.2(10.06s) |
|
2.0 (9.54s) |
1.7 (14.08s) |
Table 1.9. Non-Central T Distribution Performance
Library |
50 Decimal Digits |
---|---|
mpfr_float |
1.3 (263.27s) |
static_mpfr_float |
1.2 (232.88s) |
mpf_float |
1.0 (195.73s) |
cpp_dec_float |
1.9 (366.38s) |
1.5 (286.94s) |
|
2.0 (388.70s) |
Test code was compiled with Microsoft Visual Studio 2010 with all optimisations turned on (/Ox), and used MPIR-2.3.0 and MPFR-3.0.0. The tests were run on 32-bit Windows Vista machine.