High Performance Unstructured SpMM Computation Using Tensor Cores

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Okanovic, Patrik, Kwasniewski, Grzegorz, Labini, Paolo Sylos, Besta, Maciej, Vella, Flavio, Hoefler, Torsten
Format: Preprint
Veröffentlicht: 2024
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866910571906990080
author Okanovic, Patrik
Kwasniewski, Grzegorz
Labini, Paolo Sylos
Besta, Maciej
Vella, Flavio
Hoefler, Torsten
author_facet Okanovic, Patrik
Kwasniewski, Grzegorz
Labini, Paolo Sylos
Besta, Maciej
Vella, Flavio
Hoefler, Torsten
contents High-performance sparse matrix-matrix (SpMM) multiplication is paramount for science and industry, as the ever-increasing sizes of data prohibit using dense data structures. Yet, existing hardware, such as Tensor Cores (TC), is ill-suited for SpMM, as it imposes strict constraints on data structures that cannot be met by unstructured sparsity found in many applications. To address this, we introduce (S)parse (Ma)trix Matrix (T)ensor Core-accelerated (SMaT): a novel SpMM library that utilizes TCs for unstructured sparse matrices. Our block-sparse library leverages the low-level CUDA MMA (matrix-matrix-accumulate) API, maximizing the performance offered by modern GPUs. Algorithmic optimizations such as sparse matrix permutation further improve performance by minimizing the number of non-zero blocks. The evaluation on NVIDIA A100 shows that SMaT outperforms SotA libraries (DASP, cuSPARSE, and Magicube) by up to 125x (on average 2.6x). SMaT can be used to accelerate many workloads in scientific computing, large-model training, inference, and others.
format Preprint
id arxiv_https___arxiv_org_abs_2408_11551
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle High Performance Unstructured SpMM Computation Using Tensor Cores
Okanovic, Patrik
Kwasniewski, Grzegorz
Labini, Paolo Sylos
Besta, Maciej
Vella, Flavio
Hoefler, Torsten
Distributed, Parallel, and Cluster Computing
High-performance sparse matrix-matrix (SpMM) multiplication is paramount for science and industry, as the ever-increasing sizes of data prohibit using dense data structures. Yet, existing hardware, such as Tensor Cores (TC), is ill-suited for SpMM, as it imposes strict constraints on data structures that cannot be met by unstructured sparsity found in many applications. To address this, we introduce (S)parse (Ma)trix Matrix (T)ensor Core-accelerated (SMaT): a novel SpMM library that utilizes TCs for unstructured sparse matrices. Our block-sparse library leverages the low-level CUDA MMA (matrix-matrix-accumulate) API, maximizing the performance offered by modern GPUs. Algorithmic optimizations such as sparse matrix permutation further improve performance by minimizing the number of non-zero blocks. The evaluation on NVIDIA A100 shows that SMaT outperforms SotA libraries (DASP, cuSPARSE, and Magicube) by up to 125x (on average 2.6x). SMaT can be used to accelerate many workloads in scientific computing, large-model training, inference, and others.
title High Performance Unstructured SpMM Computation Using Tensor Cores
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2408.11551