Abstract | ||
---|---|---|
Elementary functions from the mathematical library input and output floating-point numbers. However it is possible to implement them purely using integer/fixed-point arithmetic. This option was not attractive between 1985 and 2005, because mainstream processor hardware supported 64-bit floating-point, but only 32-bit integers. This has changed in recent years, in particular with the generalization of native 64-bit integer support. The purpose of this article is therefore to reevaluate the relevance of computing floating-point functions in fixed-point. For this, several variants of the double-precision logarithm function are implemented and evaluated. Formulating the problem as a fixed-point one is easy after the range has been (classically) reduced. Then, 64-bit integers provide slightly more accuracy than 53-bit mantissa, which helps speed up the evaluation. Finally, multi-word arithmetic, critical for accurate implementations, is much faster in fixed-point, and natively supported by recent compilers. Thanks to all this, a purely integer implementation of the correctly rounded double-precision logarithm outperforms the previous state of the art, with the worst-case execution time reduced by a factor 5. This work also introduces variants of the logarithm that input a floating-point number and output the result in fixed-point. These are shown to be both more accurate and more efficient than the traditional floating-point functions for some applications. |
Year | DOI | Venue |
---|---|---|
2016 | 10.1109/ARITH.2016.24 | 2016 IEEE 23nd Symposium on Computer Arithmetic (ARITH) |
Keywords | Field | DocType |
floating-point,fixed-point,elementary function,logarithm,correct rounding | Single-precision floating-point format,Binary logarithm,Fixed-point arithmetic,Computer science,Arbitrary-precision arithmetic,Floating-point unit,Double-precision floating-point format,Algorithm,Arithmetic,Minifloat,Logarithm | Conference |
ISSN | ISBN | Citations |
1063-6889 | 978-1-5090-1617-4 | 2 |
PageRank | References | Authors |
0.37 | 12 | 4 |
Name | Order | Citations | PageRank |
---|---|---|---|
Julien Le Maire | 1 | 2 | 0.37 |
Nicolas Brunie | 2 | 24 | 3.10 |
Florent de Dinechin | 3 | 503 | 43.43 |
Jean-Michel Muller | 4 | 466 | 66.61 |