paperbot · PL 论文追踪

RSS

Compiler Support for Sparse Tensor Convolutions

OOPSLA 8(OOPSLA2)2024引用 6
Peiming Liu, Alexander J Root, Anlun Xu, Yinying Li, Fredrik Kjolstad, Aart J.C. Bik

尚未生成 AI 速览(可能缺少 API key 或等待下次运行补跑)。

原文摘要(Abstract)

This paper extends prior work on sparse tensor algebra compilers to generate asymptotically efficient code for tensor expressions with affine subscript expressions. Our technique enables compiler support for a wide range of sparse computations, including sparse convolutions and pooling that are widely used in ML and graphics applications. We propose an approach that gradually rewrites compound subscript expressions to simple subscript expressions with loops that exploit the sparsity pattern of the input sparse tensors. As a result, the time complexity of the generated kernels is bounded by the number of stored elements and not by the shape of the tensors. Our approach seamlessly integrates into existing frameworks and is compatible with recent advances in compilers for sparse computations, including the flexibility to efficiently handle arbitrary combinations of different sparse tensor formats. The implementation of our algorithm is open source and upstreamed to the MLIR sparse compiler. Experimental results show that our method achieves 19.5x speedup when compared with the state-of-the-art compiler-based method at 99.9% sparsity. The generated sparse kernels start to outperform dense convolution implementations at about 80% sparsity

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@article{LiuRXLKB24,
  title = {Compiler Support for Sparse Tensor Convolutions},
  author = {Peiming Liu and Alexander J Root and Anlun Xu and Yinying Li and Fredrik Kjolstad and Aart J.C. Bik},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {8},
  number = {OOPSLA2},
  year = {2024},
  doi = {10.1145/3689721}
}