...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.12. 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.13. 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.