AMD Core Math Library - optimized and threaded math routines for compute-intensive applications.

AMD Core Math Library, or ACML, provides a free set of thoroughly optimized and threaded math routines for HPC, scientific, engineering and related compute-intensive applications. ACML is ideal for weather modeling, computational fluid dynamics, financial analysis, oil and gas applications and more. ACML consists of the following main components: 1) A full implementation of Level 1, 2 and 3 Basic Linear Algebra Subroutines (BLAS), with key routines optimized for high performance on AMD Opteron™ processors; 2) A full suite of Linear Algebra (LAPACK) routines. As well as taking advantage of the highly-tuned BLAS kernels, a key set of LAPACK routines has been further optimized to achieve considerably higher performance than standard LAPACK implementations; 3) A comprehensive suite of Fast Fourier Transforms (FFTs) in both single-, double-, single-complex and double-complex data types; and 4) Random Number Generators in both single- and double-precision.

What’s New — ACML 6 GA Announced

ACML 6 GA is now available, as announced in this blog post.  This is the first version of ACML that supports heterogeneous computing, leveraging the open source clMathLibraries projects as a compute backend.  ACML 6 introduces:

  • A subset of the FFTW interfaces for heterogeneous compute
  • BLAS level 3 and two level 2 (GEMV/SYMV) routines supported for heterogeneous compute
  • A scripting language to tune the heterogeneous behavior

Supported Compilers

  • Linux: GFortran
  • Windows (Compatible with Microsoft® Visual Studio): Intel Fortran

ACML 6 binary packages can be found from the downloads page.

The legacy ACML ( pre- 6.0) supported a variety of compilers for Linux and Windows Operating Systems: Linux: Absoft Pro Fortran, GFortran, Intel Fortran, NAG Fortran, Open64, PGI Fortran & Windows (Compatible with Microsoft® Visual Studio): Intel Fortran, PGI Fortran, Absoft Pro Fortran.

In addition to supporting these compilers, ACML provides build versions that are single threaded, builds that are OpenMP enabled, and builds for default 32-bit integers or 64-bit integers (REAL*8).

Feedback or questions?