AOCL-LibM is a software library containing a collection of basic math functions optimized for x86-64 processor-based machines. It provides many routines from the list of standard C99 math functions.
AOCL-LibM is a C library, which users can link in to their applications to replace compiler-provided math functions. Generally, programmers access basic math functions through their compiler, but those who want better accuracy or performance than their compiler’s math functions can use this library to help improve their applications.
Highlights of AOCL-LibM 4.0 (in AOCL 4.0)
- Black and Scholes support (logf, expf, erff, both scalar and vector)
- WRF support improved with speed benchmarks
- Geekbench support improved with optimized sincos and sincosf scalar functions
- AVX512 variants of vector functions (logarithmic, exponentials, and trigonometric):
- vrs16_expf and vrs16_exp2f
- vrs16_logf, vrs16_log2f, and vrs16_log10f
- vrs16_sinf, vrs16_cosf, and vrs16_tanf
- vrs16_asinf, vrs16_acosf, and vrs16_atanf
- vrd8_exp and vrs8_exp2
- vrd8_log and vrd8_log2
- vrd8_sin, vrd8_cos, and vrd8_tan
- vrd8_asin and vrd8_acos
- Fast scalar variants:
- powf_fast, logf_fast, and expf_fast
- asinf_fast and acosf_fast
- sinf_fast, cosf_fast, and tanf_fast
- exp_fast and log_fast
- asin_fast, acos_fast, and atan_fast
- cos_fast, sin_fast, tan_fast
Note: For more information on fast scalar variants, refer to AOCC 4.0 user guide.
The package containing AOCL-LibM binaries, examples and documentation are available in the Download section below.
Source code for AOCL-LibM will be available shortly on GitHub (https://github.com/amd/aocl-libm-ose).
For prior versions of AOCL-LibM documentation and downloads, refer to AOCL-LibM Archive.