acl_banner_1140x125

Welcome to ACL, AMD Compute Libraries. We have transitioned our math libraries from a proprietary, closed source codebase to open source solutions, providing developers with a set of open source libraries targeted to those who want to  accelerate computations on GPUs, APUs and CPUs. ACL is composed of a number of libraries designed to enhance the open source ecosystem and help software developers code faster for faster code. All of the source code, readme files and other documentation can now be found at the corresponding github links noted below. Let us know what you think by posting in one of the specific GitHub repositories.

AMD’s commitment to Open Source is growing. The AMD Compute Libraries are now located at the GPUOpen website. GPUOpen is  an AMD initiative designed to enable developers to create ground-breaking PC games, computer generated imagery and GPU computing applications for great performance and lifelike experiences using no cost and open development tools and software.

GPU Libraries

clBLAS

The primary goal of clBLAS is to make it easier for developers to utilize the inherent performance and power efficiency benefits of heterogeneous computing. clBLAS interfaces do not hide nor wrap OpenCL interfaces, but rather leaves OpenCL™ state management to the control of the user to allow for maximum performance and flexibility.

clSparse

True in spirit with the other clMath libraries, clSparse exports a “C” interface to allow projects to build wrappers around clSPARSE in any language they need. clSPARSE is an OpenCL™ library implementing Sparse linear algebra. This project is a result of a collaboration between AMD Inc. and Vratis Ltd.

clRNG

clRNG has both host and device side interfaces to give you, the developer, sufficient control. The host side interfaces are native C APIs. clRNG 1.0 is an OpenCL library that generates uniform random numbers.

clFFT

clFFT is a software library containing Fast Fourier Transform (FFT) functions written in OpenCL. In addition to GPU devices, the libraries also support running on CPU devices to facilitate debugging and heterogeneous programming.


CPU Libraries

Our CPU-based math libraries have moved from a proprietary, closed source ACML codebase to an open source solution, leveraging, in part, the BSD-licensed Science of High-Performance Computing (SHPC) software stack, developed and maintained by the SHPC group based at the University of Texas, Austin. This software includes BLIS, an implementation of the BLAS, and libflame, an implementation of LAPACK. Both provide high performance as well as superior maintainability and portability.

BLIS

BLIS is a portable framework for instantiating BLAS-like libraries. The framework was designed to isolate essential kernels of computation that, when optimized, immediately enable optimized implementations of most of its commonly used and computationally intensive operations.

libflame

libflame is a portable library for dense matrix computations, providing much of the functionality present in LAPACK. In fact, libflame includes a compatibility layer, FLAPACK, which includes a complete LAPACK implementation.