A wonderful Whitepaper entitled "Worst Cases for Correct Rounding of the Elementary Functions in Double Precision" (PDF) has been released. This has prompted Siddhesh Poyarekar from Red Hat to take a professional look into the mathematical functions found in GlibC (the GNU C library.) He has been able to provide an 8-times performance improvement to slowest path of pow() function. Other transcendentals got similar improvements since the fixes were mostly in the generic multiple precision code. These improvements already went into glibc-2.18 upstream. Siddhesh believes that a lot of the low hanging fruit has now been picked, but that this is definitely not the end of the road for improvements in the multiple precision performance. There are other more complicated improvements, like the limitation of worst case precision for exp() and log() functions, based on the results of the paper.