ROCm math and compute libraries

ROCm math and compute libraries#

ROCm math and compute libraries provide GPU-accelerated implementations of common numerical operations including dense and sparse linear algebra, FFTs, random number generation, and deep learning primitives.

Libraries prefixed with roc* are native, high-performance implementations written in HIP specifically for AMD GPUs. Libraries prefixed with hip* are portable wrappers that implement NVIDIA CUDA-equivalent APIs, allowing CUDA applications to be ported to AMD GPUs with minimal code changes.

  • Composable Kernel – Provides a programming model for writing performance critical kernels for machine learning workloads across multiple architectures.

  • hipBLAS – BLAS-marshalling library that supports rocBLAS and cuBLAS backends.

  • hipBLASLt – Provides general matrix-matrix operations with a flexible API and extends functionalities beyond traditional BLAS library.

  • hipCUB – Thin header-only wrapper library on top of rocPRIM or CUB that allows project porting using the CUB library to the HIP layer.

  • hipFFT – Fast Fourier transforms (FFT)-marshalling library that supports rocFFT or cuFFT backends.

  • hipRAND – Ports CUDA applications that use the cuRAND library into the HIP layer.

  • hipSOLVER – An LAPACK-marshalling library that supports rocSOLVER and cuSOLVER backends.

  • hipSPARSE – SPARSE-marshalling library that supports rocSPARSE and cuSPARSE backends.

  • hipSPARSELt – SPARSE-marshalling library with multiple supported backends.

  • MIOpen – An open source deep-learning library.

  • rocBLAS – BLAS implementation (in the HIP programming language) on the ROCm runtime and toolchains.

  • rocFFT – Software library for computing fast Fourier transforms (FFTs) written in HIP.

  • rocRAND – Provides functions that generate pseudorandom and quasirandom numbers.

  • rocSOLVER – An implementation of LAPACK routines on ROCm software, implemented in the HIP programming language and optimized for AMD’s latest discrete GPUs.

  • rocSPARSE – Exposes a common interface that provides BLAS for sparse computation implemented on ROCm runtime and toolchains (in the HIP programming language).

  • rocPRIM – Header-only library for HIP parallel primitives.

  • rocThrust – Parallel algorithm library.

  • rocWMMA – C++ library for accelerating mixed-precision matrix multiply-accumulate (MMA) operations.