Skip to Main content Skip to Navigation

Elementary functions : towards automatically generated, efficient, and vectorizable implementations

Abstract : Elementary mathematical functions are pervasive in many high performance computing programs. However, although the mathematical libraries (libms), on which these programs rely, generally provide several flavors of the same function, these are fixed at implementation time. Hence this monolithic characteristic of libms is an obstacle for the performance of programs relying on them, because they are designed to be versatile at the expense of specific optimizations. Moreover, the duplication of shared patterns in the source code makes maintaining such code bases more error prone and difficult. A current challenge is to propose "meta-tools" targeting automated high performance code generation for the evaluation of elementary functions. These tools must allow reuse of generic and efficient algorithms for different flavours of functions or hardware architectures. Then, it becomes possible to generate optimized tailored libms with factorized generative code, which eases its maintenance. First, we propose an novel algorithm that allows to generate lookup tables that remove rounding errors for trigonometric and hyperbolic functions. The, we study the performance of vectorized polynomial evaluation schemes, a first step towards the generation of efficient vectorized elementary functions. Finally, we develop a meta-implementation of a vectorized logarithm, which factors code generation for different formats and architectures. Our contributions are shown competitive compared to free or commercial solutions, which is a strong incentive to push for developing this new paradigm.
Document type :
Complete list of metadata

Cited literature [206 references]  Display  Hide  Download
Contributor : Abes Star :  Contact
Submitted on : Tuesday, July 17, 2018 - 12:01:51 PM
Last modification on : Wednesday, March 17, 2021 - 3:15:25 AM
Long-term archiving on: : Thursday, October 18, 2018 - 1:58:14 PM


Version validated by the jury (STAR)


  • HAL Id : tel-01841424, version 1



Hugues De Lassus Saint-Genies. Elementary functions : towards automatically generated, efficient, and vectorizable implementations. Other [cs.OH]. Université de Perpignan, 2018. English. ⟨NNT : 2018PERP0010⟩. ⟨tel-01841424⟩



Record views


Files downloads