...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
By far the most important thing you can do when using this library is turn on your compiler's optimisation options. As the following table shows the penalty for using the library in debug mode can be quite large.
Table 47. Performance Comparison of Release and Debug Settings
Function |
Microsoft Visual C++ 8.0 Debug Settings: /Od /ZI |
Microsoft Visual C++ 8.0 Release settings: /Ox /arch:SSE2 |
---|---|---|
16.65
(1.028e-006s)
|
1.00
(1.483e-007s)
|
|
19.28
(1.215e-006s)
|
1.00
(4.888e-007s)
|
|
8.32
(1.540e-005s)
|
1.00
(1.852e-006s)
|
|
ibeta_inv and ibetac_inv |
10.25
(7.492e-005s)
|
1.00
(7.311e-006s)
|
8.57
(2.441e-004s)
|
1.00
(2.847e-005s)
|
|
10.98
(1.044e-005s)
|
1.00
(9.504e-007s)
|
|
10.25
(3.721e-005s)
|
1.00
(3.631e-006s)
|
|
11.26
(1.124e-004s)
|
1.00
(9.982e-006s)
|