<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> <title>Comparing Different Compilers</title> <link rel="stylesheet" href="../math.css" type="text/css"> <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> <link rel="home" href="../index.html" title="Math Toolkit 2.5.1"> <link rel="up" href="../perf.html" title="Chapter 16. Performance"> <link rel="prev" href="tuning.html" title="Performance Tuning Macros"> <link rel="next" href="comparisons.html" title="Comparisons to Other Open Source Libraries"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table cellpadding="2" width="100%"><tr> <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td> <td align="center"><a href="../../../../../index.html">Home</a></td> <td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td> <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> <td align="center"><a href="../../../../../more/index.htm">More</a></td> </tr></table> <hr> <div class="spirit-nav"> <a accesskey="p" href="tuning.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../perf.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="comparisons.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> </div> <div class="section"> <div class="titlepage"><div><div><h2 class="title" style="clear: both"> <a name="math_toolkit.comp_compilers"></a><a class="link" href="comp_compilers.html" title="Comparing Different Compilers">Comparing Different Compilers</a> </h2></div></div></div> <p> By running our performance test suite multiple times, we can compare the effect of different compilers: as might be expected, the differences are generally small compared to say disabling internal use of <code class="computeroutput"><span class="keyword">long</span> <span class="keyword">double</span></code>. However, there are still gains to be main, particularly from some of the commercial offerings: </p> <div class="table"> <a name="math_toolkit.comp_compilers.table_Compiler_Comparison_on_Windows_x64"></a><p class="title"><b>Table 16.5. Compiler Comparison on Windows x64</b></p> <div class="table-contents"><table class="table" summary="Compiler Comparison on Windows x64"> <colgroup> <col> <col> <col> <col> <col> </colgroup> <thead><tr> <th> <p> Function </p> </th> <th> <p> Microsoft Visual C++ version 14.0<br> boost 1.61 </p> </th> <th> <p> GNU C++ version 5.3.0<br> boost 1.61 </p> </th> <th> <p> GNU C++ version 5.3.0<br> boost 1.61<br> promote_double<false> </p> </th> <th> <p> Intel C++ C++0x mode version 1600<br> boost 1.61 </p> </th> </tr></thead> <tbody> <tr> <td> <p> assoc_laguerre </p> </td> <td> <p> <span class="green">1.16<br> (208ns)</span> </p> </td> <td> <p> <span class="blue">1.21<br> (217ns)</span> </p> </td> <td> <p> <span class="green">1.06<br> (190ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (180ns)</span> </p> </td> </tr> <tr> <td> <p> assoc_legendre </p> </td> <td> <p> <span class="blue">1.57<br> (151ns)</span> </p> </td> <td> <p> <span class="blue">1.80<br> (173ns)</span> </p> </td> <td> <p> <span class="green">1.16<br> (111ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (96ns)</span> </p> </td> </tr> <tr> <td> <p> beta </p> </td> <td> <p> <span class="blue">1.74<br> (176ns)</span> </p> </td> <td> <p> <span class="red">3.78<br> (382ns)</span> </p> </td> <td> <p> <span class="red">2.17<br> (219ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (101ns)</span> </p> </td> </tr> <tr> <td> <p> beta (incomplete) </p> </td> <td> <p> <span class="blue">1.44<br> (520ns)</span> </p> </td> <td> <p> <span class="red">3.03<br> (1096ns)</span> </p> </td> <td> <p> <span class="blue">1.84<br> (666ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (362ns)</span> </p> </td> </tr> <tr> <td> <p> cbrt </p> </td> <td> <p> <span class="red">3.21<br> (45ns)</span> </p> </td> <td> <p> <span class="red">3.43<br> (48ns)</span> </p> </td> <td> <p> <span class="red">3.07<br> (43ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (14ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_i </p> </td> <td> <p> <span class="green">1.11<br> (404ns)</span> </p> </td> <td> <p> <span class="red">2.78<br> (1016ns)</span> </p> </td> <td> <p> <span class="blue">1.21<br> (442ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (365ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_i (integer order) </p> </td> <td> <p> <span class="blue">1.29<br> (261ns)</span> </p> </td> <td> <p> <span class="red">3.16<br> (638ns)</span> </p> </td> <td> <p> <span class="blue">1.22<br> (247ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (202ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_j </p> </td> <td> <p> <span class="green">1.19<br> (488ns)</span> </p> </td> <td> <p> <span class="red">2.06<br> (841ns)</span> </p> </td> <td> <p> <span class="blue">1.25<br> (513ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (409ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_j (integer order) </p> </td> <td> <p> <span class="blue">1.36<br> (103ns)</span> </p> </td> <td> <p> <span class="red">2.39<br> (182ns)</span> </p> </td> <td> <p> <span class="blue">1.47<br> (112ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (76ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_k </p> </td> <td> <p> <span class="green">1.04<br> (747ns)</span> </p> </td> <td> <p> <span class="red">9.43<br> (6743ns)</span> </p> </td> <td> <p> <span class="green">1.03<br> (734ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (715ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_k (integer order) </p> </td> <td> <p> <span class="blue">1.26<br> (419ns)</span> </p> </td> <td> <p> <span class="red">10.49<br> (3494ns)</span> </p> </td> <td> <p> <span class="green">1.10<br> (367ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (333ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_neumann </p> </td> <td> <p> <span class="red">16.76<br> (11212ns)</span> </p> </td> <td> <p> <span class="red">2.01<br> (1346ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (669ns)</span> </p> </td> <td> <p> <span class="red">15.35<br> (10266ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_neumann (integer order) </p> </td> <td> <p> <span class="green">1.00<br> (225ns)</span> </p> </td> <td> <p> <span class="blue">1.79<br> (403ns)</span> </p> </td> <td> <p> <span class="blue">1.24<br> (279ns)</span> </p> </td> <td> <p> <span class="green">1.02<br> (229ns)</span> </p> </td> </tr> <tr> <td> <p> digamma </p> </td> <td> <p> <span class="green">1.20<br> (24ns)</span> </p> </td> <td> <p> <span class="red">3.75<br> (75ns)</span> </p> </td> <td> <p> <span class="red">2.15<br> (43ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (20ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_1 </p> </td> <td> <p> <span class="blue">1.87<br> (329ns)</span> </p> </td> <td> <p> <span class="blue">1.99<br> (350ns)</span> </p> </td> <td> <p> <span class="blue">1.32<br> (232ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (176ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_1 (complete) </p> </td> <td> <p> <span class="red">2.18<br> (61ns)</span> </p> </td> <td> <p> <span class="red">2.57<br> (72ns)</span> </p> </td> <td> <p> <span class="blue">1.57<br> (44ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (28ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_2 </p> </td> <td> <p> <span class="blue">1.78<br> (525ns)</span> </p> </td> <td> <p> <span class="red">2.17<br> (640ns)</span> </p> </td> <td> <p> <span class="blue">1.52<br> (449ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (295ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_2 (complete) </p> </td> <td> <p> <span class="red">2.14<br> (62ns)</span> </p> </td> <td> <p> <span class="red">2.07<br> (60ns)</span> </p> </td> <td> <p> <span class="blue">1.24<br> (36ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (29ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_3 </p> </td> <td> <p> <span class="blue">1.94<br> (1155ns)</span> </p> </td> <td> <p> <span class="red">2.91<br> (1733ns)</span> </p> </td> <td> <p> <span class="blue">1.65<br> (986ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (596ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_3 (complete) </p> </td> <td> <p> <span class="red">2.05<br> (721ns)</span> </p> </td> <td> <p> <span class="red">3.07<br> (1079ns)</span> </p> </td> <td> <p> <span class="blue">1.46<br> (514ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (352ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rc </p> </td> <td> <p> <span class="blue">1.58<br> (49ns)</span> </p> </td> <td> <p> <span class="red">2.68<br> (83ns)</span> </p> </td> <td> <p> <span class="blue">1.55<br> (48ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (31ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rd </p> </td> <td> <p> <span class="blue">1.75<br> (332ns)</span> </p> </td> <td> <p> <span class="blue">1.83<br> (348ns)</span> </p> </td> <td> <p> <span class="blue">1.40<br> (266ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (190ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rf </p> </td> <td> <p> <span class="blue">1.69<br> (71ns)</span> </p> </td> <td> <p> <span class="red">2.40<br> (101ns)</span> </p> </td> <td> <p> <span class="blue">1.57<br> (66ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (42ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rj </p> </td> <td> <p> <span class="blue">1.91<br> (344ns)</span> </p> </td> <td> <p> <span class="red">2.96<br> (532ns)</span> </p> </td> <td> <p> <span class="blue">1.43<br> (257ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (180ns)</span> </p> </td> </tr> <tr> <td> <p> erf </p> </td> <td> <p> <span class="blue">1.77<br> (23ns)</span> </p> </td> <td> <p> <span class="red">2.92<br> (38ns)</span> </p> </td> <td> <p> <span class="blue">1.92<br> (25ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (13ns)</span> </p> </td> </tr> <tr> <td> <p> erfc </p> </td> <td> <p> <span class="blue">1.29<br> (22ns)</span> </p> </td> <td> <p> <span class="red">3.41<br> (58ns)</span> </p> </td> <td> <p> <span class="red">2.06<br> (35ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (17ns)</span> </p> </td> </tr> <tr> <td> <p> expint </p> </td> <td> <p> <span class="blue">1.39<br> (39ns)</span> </p> </td> <td> <p> <span class="red">3.07<br> (86ns)</span> </p> </td> <td> <p> <span class="red">2.14<br> (60ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (28ns)</span> </p> </td> </tr> <tr> <td> <p> expint (En) </p> </td> <td> <p> <span class="green">1.10<br> (117ns)</span> </p> </td> <td> <p> <span class="red">2.19<br> (232ns)</span> </p> </td> <td> <p> <span class="blue">1.38<br> (146ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (106ns)</span> </p> </td> </tr> <tr> <td> <p> expm1 </p> </td> <td> <p> <span class="green">1.00<br> (10ns)</span> </p> </td> <td> <p> <span class="red">3.10<br> (31ns)</span> </p> </td> <td> <p> <span class="red">2.40<br> (24ns)</span> </p> </td> <td> <p> <span class="green">1.10<br> (11ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_p </p> </td> <td> <p> <span class="blue">1.29<br> (192ns)</span> </p> </td> <td> <p> <span class="red">2.64<br> (393ns)</span> </p> </td> <td> <p> <span class="blue">1.71<br> (255ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (149ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_p_inv </p> </td> <td> <p> <span class="blue">1.36<br> (706ns)</span> </p> </td> <td> <p> <span class="red">2.47<br> (1288ns)</span> </p> </td> <td> <p> <span class="blue">1.91<br> (997ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (521ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_q </p> </td> <td> <p> <span class="green">1.16<br> (179ns)</span> </p> </td> <td> <p> <span class="red">2.79<br> (429ns)</span> </p> </td> <td> <p> <span class="blue">1.61<br> (248ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (154ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_q_inv </p> </td> <td> <p> <span class="blue">1.37<br> (703ns)</span> </p> </td> <td> <p> <span class="red">2.38<br> (1225ns)</span> </p> </td> <td> <p> <span class="blue">1.89<br> (971ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (515ns)</span> </p> </td> </tr> <tr> <td> <p> ibeta </p> </td> <td> <p> <span class="blue">1.34<br> (520ns)</span> </p> </td> <td> <p> <span class="red">3.13<br> (1218ns)</span> </p> </td> <td> <p> <span class="blue">1.83<br> (711ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (389ns)</span> </p> </td> </tr> <tr> <td> <p> ibeta_inv </p> </td> <td> <p> <span class="blue">1.51<br> (2193ns)</span> </p> </td> <td> <p> <span class="red">2.81<br> (4085ns)</span> </p> </td> <td> <p> <span class="red">2.27<br> (3303ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (1452ns)</span> </p> </td> </tr> <tr> <td> <p> ibetac </p> </td> <td> <p> <span class="blue">1.29<br> (518ns)</span> </p> </td> <td> <p> <span class="red">2.94<br> (1179ns)</span> </p> </td> <td> <p> <span class="blue">1.73<br> (694ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (401ns)</span> </p> </td> </tr> <tr> <td> <p> ibetac_inv </p> </td> <td> <p> <span class="blue">1.41<br> (2045ns)</span> </p> </td> <td> <p> <span class="red">2.80<br> (4058ns)</span> </p> </td> <td> <p> <span class="blue">1.78<br> (2572ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (1447ns)</span> </p> </td> </tr> <tr> <td> <p> jacobi_cn </p> </td> <td> <p> <span class="blue">1.36<br> (182ns)</span> </p> </td> <td> <p> <span class="red">3.72<br> (499ns)</span> </p> </td> <td> <p> <span class="red">2.28<br> (306ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (134ns)</span> </p> </td> </tr> <tr> <td> <p> jacobi_dn </p> </td> <td> <p> <span class="blue">1.82<br> (262ns)</span> </p> </td> <td> <p> <span class="red">3.68<br> (530ns)</span> </p> </td> <td> <p> <span class="red">2.27<br> (327ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (144ns)</span> </p> </td> </tr> <tr> <td> <p> jacobi_sn </p> </td> <td> <p> <span class="blue">1.31<br> (179ns)</span> </p> </td> <td> <p> <span class="red">3.73<br> (511ns)</span> </p> </td> <td> <p> <span class="red">2.43<br> (333ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (137ns)</span> </p> </td> </tr> <tr> <td> <p> laguerre </p> </td> <td> <p> <span class="green">1.00<br> (121ns)</span> </p> </td> <td> <p> <span class="green">1.15<br> (139ns)</span> </p> </td> <td> <p> <span class="green">1.04<br> (126ns)</span> </p> </td> <td> <p> <span class="green">1.10<br> (133ns)</span> </p> </td> </tr> <tr> <td> <p> legendre </p> </td> <td> <p> <span class="green">1.07<br> (364ns)</span> </p> </td> <td> <p> <span class="green">1.16<br> (396ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (340ns)</span> </p> </td> <td> <p> <span class="green">1.13<br> (383ns)</span> </p> </td> </tr> <tr> <td> <p> legendre Q </p> </td> <td> <p> <span class="green">1.00<br> (427ns)</span> </p> </td> <td> <p> <span class="green">1.20<br> (512ns)</span> </p> </td> <td> <p> <span class="green">1.01<br> (430ns)</span> </p> </td> <td> <p> <span class="green">1.07<br> (455ns)</span> </p> </td> </tr> <tr> <td> <p> lgamma </p> </td> <td> <p> <span class="green">1.00<br> (73ns)</span> </p> </td> <td> <p> <span class="red">3.07<br> (224ns)</span> </p> </td> <td> <p> <span class="blue">1.82<br> (133ns)</span> </p> </td> <td> <p> <span class="green">1.05<br> (77ns)</span> </p> </td> </tr> <tr> <td> <p> log1p </p> </td> <td> <p> <span class="green">1.00<br> (14ns)</span> </p> </td> <td> <p> <span class="blue">2.00<br> (28ns)</span> </p> </td> <td> <p> <span class="green">1.14<br> (16ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (14ns)</span> </p> </td> </tr> <tr> <td> <p> polygamma </p> </td> <td> <p> <span class="green">1.16<br> (3773ns)</span> </p> </td> <td> <p> <span class="green">1.02<br> (3320ns)</span> </p> </td> <td> <p> <span class="red">2.24<br> (7270ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (3246ns)</span> </p> </td> </tr> <tr> <td> <p> sph_bessel </p> </td> <td> <p> <span class="green">1.17<br> (1005ns)</span> </p> </td> <td> <p> <span class="blue">1.55<br> (1325ns)</span> </p> </td> <td> <p> <span class="green">1.09<br> (931ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (857ns)</span> </p> </td> </tr> <tr> <td> <p> sph_neumann </p> </td> <td> <p> <span class="green">1.08<br> (1827ns)</span> </p> </td> <td> <p> <span class="red">2.07<br> (3483ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (1685ns)</span> </p> </td> <td> <p> <span class="green">1.01<br> (1702ns)</span> </p> </td> </tr> <tr> <td> <p> tgamma </p> </td> <td> <p> <span class="blue">1.31<br> (77ns)</span> </p> </td> <td> <p> <span class="red">4.03<br> (238ns)</span> </p> </td> <td> <p> <span class="red">2.49<br> (147ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (59ns)</span> </p> </td> </tr> <tr> <td> <p> tgamma (incomplete) </p> </td> <td> <p> <span class="blue">1.26<br> (276ns)</span> </p> </td> <td> <p> <span class="red">2.52<br> (552ns)</span> </p> </td> <td> <p> <span class="blue">1.73<br> (379ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (219ns)</span> </p> </td> </tr> <tr> <td> <p> trigamma </p> </td> <td> <p> <span class="blue">1.35<br> (23ns)</span> </p> </td> <td> <p> <span class="red">2.88<br> (49ns)</span> </p> </td> <td> <p> <span class="blue">1.41<br> (24ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (17ns)</span> </p> </td> </tr> <tr> <td> <p> zeta </p> </td> <td> <p> <span class="blue">1.34<br> (121ns)</span> </p> </td> <td> <p> <span class="red">3.83<br> (345ns)</span> </p> </td> <td> <p> <span class="red">2.52<br> (227ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (90ns)</span> </p> </td> </tr> </tbody> </table></div> </div> <br class="table-break"><div class="table"> <a name="math_toolkit.comp_compilers.table_Compiler_Comparison_on_linux"></a><p class="title"><b>Table 16.6. Compiler Comparison on linux</b></p> <div class="table-contents"><table class="table" summary="Compiler Comparison on linux"> <colgroup> <col> <col> <col> </colgroup> <thead><tr> <th> <p> Function </p> </th> <th> <p> GNU C++ version 5.3.0<br> boost 1.61 </p> </th> <th> <p> GNU C++ version 5.3.0<br> boost 1.61<br> promote_double<false> </p> </th> </tr></thead> <tbody> <tr> <td> <p> assoc_laguerre </p> </td> <td> <p> <span class="blue">1.36<br> (263ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (194ns)</span> </p> </td> </tr> <tr> <td> <p> assoc_legendre </p> </td> <td> <p> <span class="red">2.55<br> (258ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (101ns)</span> </p> </td> </tr> <tr> <td> <p> beta </p> </td> <td> <p> <span class="red">4.71<br> (734ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (156ns)</span> </p> </td> </tr> <tr> <td> <p> beta (incomplete) </p> </td> <td> <p> <span class="red">3.12<br> (1796ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (575ns)</span> </p> </td> </tr> <tr> <td> <p> cbrt </p> </td> <td> <p> <span class="red">2.53<br> (43ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (17ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_i </p> </td> <td> <p> <span class="red">3.47<br> (1410ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (406ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_i (integer order) </p> </td> <td> <p> <span class="red">3.38<br> (893ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (264ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_j </p> </td> <td> <p> <span class="red">2.69<br> (1071ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (398ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_j (integer order) </p> </td> <td> <p> <span class="red">2.59<br> (275ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (106ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_k </p> </td> <td> <p> <span class="red">6.86<br> (4589ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (669ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_bessel_k (integer order) </p> </td> <td> <p> <span class="red">10.17<br> (3673ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (361ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_neumann </p> </td> <td> <p> <span class="red">2.48<br> (1478ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (597ns)</span> </p> </td> </tr> <tr> <td> <p> cyl_neumann (integer order) </p> </td> <td> <p> <span class="red">2.20<br> (484ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (220ns)</span> </p> </td> </tr> <tr> <td> <p> digamma </p> </td> <td> <p> <span class="blue">1.92<br> (75ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (39ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_1 </p> </td> <td> <p> <span class="blue">1.94<br> (358ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (185ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_1 (complete) </p> </td> <td> <p> <span class="blue">1.86<br> (52ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (28ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_2 </p> </td> <td> <p> <span class="red">2.32<br> (805ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (347ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_2 (complete) </p> </td> <td> <p> <span class="blue">1.71<br> (60ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (35ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_3 </p> </td> <td> <p> <span class="red">2.75<br> (2154ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (783ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_3 (complete) </p> </td> <td> <p> <span class="red">2.23<br> (1172ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (525ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rc </p> </td> <td> <p> <span class="blue">1.57<br> (77ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (49ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rd </p> </td> <td> <p> <span class="red">2.23<br> (520ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (233ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rf </p> </td> <td> <p> <span class="blue">1.51<br> (95ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (63ns)</span> </p> </td> </tr> <tr> <td> <p> ellint_rj </p> </td> <td> <p> <span class="red">2.33<br> (481ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (206ns)</span> </p> </td> </tr> <tr> <td> <p> erf </p> </td> <td> <p> <span class="red">2.60<br> (39ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (15ns)</span> </p> </td> </tr> <tr> <td> <p> erfc </p> </td> <td> <p> <span class="red">2.68<br> (59ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (22ns)</span> </p> </td> </tr> <tr> <td> <p> expint </p> </td> <td> <p> <span class="red">2.47<br> (94ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (38ns)</span> </p> </td> </tr> <tr> <td> <p> expint (En) </p> </td> <td> <p> <span class="blue">1.86<br> (273ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (147ns)</span> </p> </td> </tr> <tr> <td> <p> expm1 </p> </td> <td> <p> <span class="green">1.00<br> (10ns)</span> </p> </td> <td> <p> <span class="green">1.10<br> (11ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_p </p> </td> <td> <p> <span class="red">2.42<br> (492ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (203ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_p_inv </p> </td> <td> <p> <span class="red">2.24<br> (1577ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (704ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_q </p> </td> <td> <p> <span class="red">2.53<br> (508ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (201ns)</span> </p> </td> </tr> <tr> <td> <p> gamma_q_inv </p> </td> <td> <p> <span class="red">2.45<br> (1841ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (751ns)</span> </p> </td> </tr> <tr> <td> <p> ibeta </p> </td> <td> <p> <span class="red">2.71<br> (1715ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (634ns)</span> </p> </td> </tr> <tr> <td> <p> ibeta_inv </p> </td> <td> <p> <span class="red">2.58<br> (5742ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (2224ns)</span> </p> </td> </tr> <tr> <td> <p> ibetac </p> </td> <td> <p> <span class="red">2.66<br> (1736ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (653ns)</span> </p> </td> </tr> <tr> <td> <p> ibetac_inv </p> </td> <td> <p> <span class="red">2.44<br> (5451ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (2237ns)</span> </p> </td> </tr> <tr> <td> <p> jacobi_cn </p> </td> <td> <p> <span class="red">2.77<br> (476ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (172ns)</span> </p> </td> </tr> <tr> <td> <p> jacobi_dn </p> </td> <td> <p> <span class="red">2.80<br> (481ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (172ns)</span> </p> </td> </tr> <tr> <td> <p> jacobi_sn </p> </td> <td> <p> <span class="red">2.86<br> (492ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (172ns)</span> </p> </td> </tr> <tr> <td> <p> laguerre </p> </td> <td> <p> <span class="green">1.09<br> (139ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (128ns)</span> </p> </td> </tr> <tr> <td> <p> legendre </p> </td> <td> <p> <span class="green">1.16<br> (399ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (345ns)</span> </p> </td> </tr> <tr> <td> <p> legendre Q </p> </td> <td> <p> <span class="green">1.18<br> (496ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (422ns)</span> </p> </td> </tr> <tr> <td> <p> lgamma </p> </td> <td> <p> <span class="red">2.20<br> (257ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (117ns)</span> </p> </td> </tr> <tr> <td> <p> log1p </p> </td> <td> <p> <span class="green">1.00<br> (12ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (12ns)</span> </p> </td> </tr> <tr> <td> <p> polygamma </p> </td> <td> <p> <span class="red">3.93<br> (2885ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (734ns)</span> </p> </td> </tr> <tr> <td> <p> sph_bessel </p> </td> <td> <p> <span class="blue">1.71<br> (1563ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (915ns)</span> </p> </td> </tr> <tr> <td> <p> sph_neumann </p> </td> <td> <p> <span class="red">2.15<br> (3745ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (1744ns)</span> </p> </td> </tr> <tr> <td> <p> tgamma </p> </td> <td> <p> <span class="red">3.69<br> (354ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (96ns)</span> </p> </td> </tr> <tr> <td> <p> tgamma (incomplete) </p> </td> <td> <p> <span class="red">2.35<br> (744ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (316ns)</span> </p> </td> </tr> <tr> <td> <p> trigamma </p> </td> <td> <p> <span class="blue">1.64<br> (36ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (22ns)</span> </p> </td> </tr> <tr> <td> <p> zeta </p> </td> <td> <p> <span class="red">2.71<br> (509ns)</span> </p> </td> <td> <p> <span class="green">1.00<br> (188ns)</span> </p> </td> </tr> </tbody> </table></div> </div> <br class="table-break"> </div> <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> <td align="left"></td> <td align="right"><div class="copyright-footer">Copyright © 2006-2010, 2012-2014 Nikhar Agrawal, Anton Bikineev, Paul A. Bristow, Marco Guazzone, Christopher Kormanyos, Hubert Holin, Bruno Lalande, John Maddock, Jeremy Murphy, Johan Råde, Gautam Sewani, Benjamin Sobotta, Thijs van den Berg, Daryle Walker and Xiaogang Zhang<p> Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) </p> </div></td> </tr></table> <hr> <div class="spirit-nav"> <a accesskey="p" href="tuning.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../perf.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="comparisons.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a> </div> </body> </html>