AOCL-BLAS
AOCL-BLAS provides a high-performant implementation of the Basic Linear Algebra Subprograms (BLAS). The BLAS was designed to provide the essential kernels of matrix and vector computation and are the most used computationally intensive operations in dense numerical linear algebra. Select kernels have been optimized for the AMD “Zen”-based processors, including AMD EPYC™, AMD Ryzen™, and AMD Ryzen™ Threadripper™ processors.
AOCL-BLAS is developed as a forked version of BLIS (https://github.com/flame/blis), which is developed by members of the Science of High-Performance Computing (SHPC) group in the Institute for Computational Engineering and Sciences at The University of Texas at Austin and other collaborators (including AMD). All known features and functionalities of BLIS are retained and supported in the AOCL-BLAS library, along with the standard BLAS and CBLAS interfaces. C++ template interfaces for BLAS functionalities are also included.
Highlights of AOCL-BLAS 5.1
- Performance Optimizations
- DGEMM, DTRSM, DGEMV, ZGEMM, DTRSV, DCOPYV on Zen4/5
- DSCALV, DDOTV on Zen3
- Benchmark support for ASUMV
- Aocl-gemm Add-on Module updates
- AOCL_ENABLE_INSTRUCTIONS support
- batch_gemm support for all data types
- New Output Datatype for Integer APIs
- BF16 Support on AVX2 Platforms
- WOQ with/without Group Quantization
- Threading Framework Optimizations
- Reference Kernels for all Reorder APIs
- Performance Optimizations for all APIs
The package containing AOCL-BLAS Library binaries that includes optimizations for AMD processors, examples, and documentation can be found in the Download section.
Documentation
Source code: GitHub.
AOCL-LAPACK
AOCL-LAPACK is a high performant implementation of Linear Algebra PACKage (LAPACK). LAPACK provides routines for solving systems of linear equations, least-squares problems, eigenvalue problems, singular value problems, and the associated matrix factorizations. It is extensible, easy to use, and available under an open-source license. Applications relying on standard Netlib LAPACK interfaces can utilize AOCL-LAPACK with virtually no changes to their source code. AOCL-LAPACK supports C, Fortran, and C++ template interfaces (for a subset of APIs) for the LAPACK APIs.
AOCL-LAPACK is compatible with LAPACK 3.12.0 specification. In combination with the AOCL-BLAS library, which includes optimizations for the AMD “Zen”-based processors, AOCL-LAPACK enables running high performing LAPACK functionalities on AMD platforms.
Highlights of AOCL-LAPACK 5.1
- Improved performance of the following routines
- LU Factorizations (DGETRF & DGBTRF).
- Least Square Solver (ZGELS).
- SVD (DGESDD) and Symmetric Eigen Decomposition (DSYEVD).
- Upgrade to Netlib LAPACK 3.12.0 specifications
- Six new APIs.
- Improvements and bug fixes to existing APIs.
- Improvement in ease of build and integration
- Support for presets in the CMAKE build environment.
- pkg-config updates for seamless integration with other AOCL libs.
- Bug fixes
- Fix in DLARTG to address QZ algorithm convergence failure.
- Fix for accuracy/precision issues in DGELS, SYTRD, and GEJSV APIs.
- Test suite framework enhancements
- C++ template interfaces testing for all supported APIs.
- Test/validation for nine new APIs including HETRF, GETRFNPI, SYGVD, etc.
- Code quality improvement changes
Documentation
- AOCL-LAPACK API Guide
- Prior versions: AOCL-BLAS and AOCL-LAPACK Library Archive
- Source code: GitHub
Downloads
File Name | Version | Size | Launch Date | OS | Bitness | Description |
Binary packages compiled with AOCC 5.0 | ||||||
aocl-blis-linux-aocc-5.0.0.tar.gz | 5.0 | 28MB | 10/10/2024 | RHEL, Ubuntu, SLES | 64-bit | AOCC compiled AOCL-BLAS library binary package SHA-256 checksum: 69d7390d47265a0a81cf2911426caf0551f69ddface9b3b895c391622b9bfdcb |
aocl-libflame-linux-aocc-5.0.0.tar.gz | 5.0 | 29MB | 10/10/2024 | RHEL, Ubuntu, SLES | 64-bit | AOCC compiled AOCL-LAPACK Library binary package SHA-256 checksum: bbb5bfd8d25851f440db186f5d73b6901b8c1e49245b4c4b300a0c0ac76ec21a |
Binary packages compiled with GCC 14.2.1 | ||||||
aocl-blis-linux-gcc-5.1.0.tar.gz | 5.1 | 47MB | 05/07/2025 | RHEL, Ubuntu, SLES | 64-bit | GCC compiled AOCL-BLAS library binary package SHA-256 checksum: 43dcc5efe9a73d7065e4a5faf9071f92624d71a033fa56f2d74e775df3ab100a |
aocl-libflame-linux-gcc-5.1.0.tar.gz | 5.1 | 32MB | 05/07/2025 | RHEL, Ubuntu, SLES | 64-bit | GCC compiled AOCL- LAPACK Library binary package SHA-256 checksum: 95da66503c2b2160552824109d51a6fc24f1d176a7bdcec3e25f866ce080c777 |
Windows Installer Containing AOCL-BLAS and AOCL-LAPACK | ||||||
AOCL_Windows-setup-5.1.0.408-AMD.exe | 5.1 | 140MB | 05/07/2025 | Windows 11, Windows 10 | 64-bit | Windows installer file containing all the AOCL library binaries compiled with Clang 18. SHA-256 checksum: 61de98148459270ba3bd01f5b0c409299d8c0c144a925f3701e10f72678a328a |