Metalibm: A Mathematical Functions Code Generator

Abstract : There are several different libraries with code for mathematical functions such as exp, log, sin, cos, etc. They provide only one implementation for each function. As there is a link between accuracy and performance, that approach is not optimal. Sometimes there is a need to rewrite a function's implementation with the respect to a particular specification. In this paper we present a code generator for parametrized implementations of mathematical functions. We discuss the benefits of code generation for mathematical libraries and present how to implement mathematical functions. We also explain how the mathematical functions are usually implemented and generalize this idea for the case of arbitrary function with implementation parameters. Our code generator produces C code for parametrized functions within a known scheme: range reduction (domain splitting), polynomial approximation and reconstruction. This approach can be expanded to generate code for black-box functions, e.g. defined only by differential equations.
Document type :
Conference papers
Complete list of metadatas

Cited literature [11 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-01513490
Contributor : Christoph Lauter <>
Submitted on : Tuesday, April 25, 2017 - 10:47:48 AM
Last modification on : Thursday, March 21, 2019 - 2:22:05 PM
Long-term archiving on : Wednesday, July 26, 2017 - 12:55:17 PM

File

metalibm_ICMS.pdf
Files produced by the author(s)

Identifiers

Citation

Olga Kupriianova, Christoph Lauter. Metalibm: A Mathematical Functions Code Generator. 4th International Congress on Mathematical Software (ICMS 2004), Aug 2014, Seoul, South Korea. pp.713-717, ⟨10.1007/978-3-662-44199-2_106⟩. ⟨hal-01513490⟩

Share

Metrics

Record views

131

Files downloads

347