Accuracy of Mathematical Functions in Single, Double, Extended Double and Quadruple Precision
Abstract
This document compares the accuracy of several mathematical libraries for the evaluation of mathematical functions, in single, double and quadruple precision (respectively binary32, binary64, and binary128 in the IEEE 754 standard), and also in the extended double format. For single precision, an exhaustive search is possible for univariate functions, thus the given values are upper bounds. For larger precisions or bivariate functions, since an exhaustive search is not possible with academic resources, we use a black-box algorithm that tries to locate the values with the largest error; the given values are only lower bounds, but comparing them can give an idea of the relative accuracy of different libraries. An interesting fact is that, for several functions, different libraries yield the same largest error, for the exact same input value, which probably means they use the same code base.
Origin | Files produced by the author(s) |
---|