Spatula: A Hardware Accelerator for Sparse Matrix Factorization

Solving sparse systems of linear equations is a crucial component in many science and engineering problems, like simulating physical systems. Sparse matrix factorization dominates a large class of these solvers. Efficient factorization algorithms have two key properties that make them challenging fo...

Full description

Bibliographic Details
Main Authors: Feldmann, Axel, Sanchez, Daniel
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Language:English
Published: ACM|56th Annual IEEE/ACM International Symposium on Microarchitecture 2024
Online Access:https://hdl.handle.net/1721.1/153276
_version_ 1811071864855855104
author Feldmann, Axel
Sanchez, Daniel
author2 Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
author_facet Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Feldmann, Axel
Sanchez, Daniel
author_sort Feldmann, Axel
collection MIT
description Solving sparse systems of linear equations is a crucial component in many science and engineering problems, like simulating physical systems. Sparse matrix factorization dominates a large class of these solvers. Efficient factorization algorithms have two key properties that make them challenging for existing architectures: they consist of small tasks that are structured and compute-intensive, and sparsity induces long chains of data dependences among these tasks. Data dependences make GPUs struggle, while CPUs and prior sparse linear algebra accelerators also suffer from low compute throughput. We present Spatula, an architecture for accelerating sparse matrix factorization algorithms. Spatula hardware combines systolic processing elements that execute structured tasks at high throughput with a flexible scheduler that handles challenging data dependences. Spatula enables a novel scheduling algorithm that avoids stalls and load imbalance while reducing data movement, achieving high compute utilization. As a result, Spatula outperforms a GPU running the state-of-the-art sparse Cholesky and LU factorization implementations by gmean 47 × across a wide range of matrices, and by up to thousands of times on some challenging matrices.
first_indexed 2024-09-23T08:57:15Z
format Article
id mit-1721.1/153276
institution Massachusetts Institute of Technology
language English
last_indexed 2024-09-23T08:57:15Z
publishDate 2024
publisher ACM|56th Annual IEEE/ACM International Symposium on Microarchitecture
record_format dspace
spelling mit-1721.1/1532762024-07-11T18:55:55Z Spatula: A Hardware Accelerator for Sparse Matrix Factorization Feldmann, Axel Sanchez, Daniel Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Solving sparse systems of linear equations is a crucial component in many science and engineering problems, like simulating physical systems. Sparse matrix factorization dominates a large class of these solvers. Efficient factorization algorithms have two key properties that make them challenging for existing architectures: they consist of small tasks that are structured and compute-intensive, and sparsity induces long chains of data dependences among these tasks. Data dependences make GPUs struggle, while CPUs and prior sparse linear algebra accelerators also suffer from low compute throughput. We present Spatula, an architecture for accelerating sparse matrix factorization algorithms. Spatula hardware combines systolic processing elements that execute structured tasks at high throughput with a flexible scheduler that handles challenging data dependences. Spatula enables a novel scheduling algorithm that avoids stalls and load imbalance while reducing data movement, achieving high compute utilization. As a result, Spatula outperforms a GPU running the state-of-the-art sparse Cholesky and LU factorization implementations by gmean 47 × across a wide range of matrices, and by up to thousands of times on some challenging matrices. 2024-01-03T20:32:13Z 2024-01-03T20:32:13Z 2023-10-28 2024-01-01T08:48:22Z Article http://purl.org/eprint/type/ConferencePaper 979-8-4007-0329-4 https://hdl.handle.net/1721.1/153276 Feldmann, Axel and Sanchez, Daniel. 2023. "Spatula: A Hardware Accelerator for Sparse Matrix Factorization." PUBLISHER_CC PUBLISHER_CC en https://doi.org/10.1145/3613424.3623783 Creative Commons Attribution-Share Alike https://creativecommons.org/licenses/by-sa/4.0/ The author(s) application/pdf ACM|56th Annual IEEE/ACM International Symposium on Microarchitecture
spellingShingle Feldmann, Axel
Sanchez, Daniel
Spatula: A Hardware Accelerator for Sparse Matrix Factorization
title Spatula: A Hardware Accelerator for Sparse Matrix Factorization
title_full Spatula: A Hardware Accelerator for Sparse Matrix Factorization
title_fullStr Spatula: A Hardware Accelerator for Sparse Matrix Factorization
title_full_unstemmed Spatula: A Hardware Accelerator for Sparse Matrix Factorization
title_short Spatula: A Hardware Accelerator for Sparse Matrix Factorization
title_sort spatula a hardware accelerator for sparse matrix factorization
url https://hdl.handle.net/1721.1/153276
work_keys_str_mv AT feldmannaxel spatulaahardwareacceleratorforsparsematrixfactorization
AT sanchezdaniel spatulaahardwareacceleratorforsparsematrixfactorization