A Sparse Iteration Space Transformation Framework for Sparse Tensor Algebra
Fri 20 Nov 2020 21:00 - 21:20 at SPLASH-I - F-2A Chair(s): Pranav Kant, Atsushi Igarashi
We address the problem of optimizing sparse tensor algebra in a compiler and show how to define standard loop transformations—split, collapse, and reorder—on sparse iteration spaces. The key idea is to track the transformation functions that map the original iteration space to derived iteration spaces. These functions are needed by the code generator to emit code that maps coordinates between iteration spaces at runtime, since the coordinates in the sparse data structures remain in the original iteration space. We further demonstrate that derived iteration spaces can tile both the universe of coordinates and the subset of nonzero coordinates: the former is analogous to tiling dense iteration spaces, while the latter tiles sparse iteration spaces into statically load-balanced blocks of nonzeros. Tiling the space of nonzeros lets the generated code efficiently exploit heterogeneous compute resources such as threads, vector units, and GPUs.
We implement these concepts by extending the sparse iteration theory implementation in the TACO system. The associated scheduling API can be used by performance engineers or it can be the target of an automatic scheduling system. We outline one heuristic autoscheduling system, but other systems are possible. Using the scheduling API, we show how to optimize mixed sparse-dense tensor algebra expressions on CPUs and GPUs. Our results show that the sparse transformations are sufficient to generate code with competitive performance to hand-optimized implementations from the literature, while generalizing to all of the tensor algebra.
Poster (A Sparse Iteration Space Transformation Framework Poster.png) | 1.35MiB |
Fri 20 NovDisplayed time zone: Central Time (US & Canada) change
09:00 - 10:20 | F-2AOOPSLA at SPLASH-I +12h Chair(s): Aviral Goel Northeastern University, Reuben Rowe University College London | ||
09:00 20mTalk | A Sparse Iteration Space Transformation Framework for Sparse Tensor Algebra OOPSLA Ryan Senanayake Reservoir Labs, Changwan Hong Massachusetts Institute of Technology, Ziheng Wang Massachusetts Institute of Technology, Amalee Wilson Stanford University, Stephen Chou Massachusetts Institute of Technology, Shoaib Kamil Adobe Research, Saman Amarasinghe Massachusetts Institute of Technology, Fredrik Kjolstad Stanford University Link to publication DOI Pre-print Media Attached File Attached | ||
09:20 20mTalk | Resolution as Intersection Subtyping via Modus Ponens OOPSLA Koar Marntirosian KU Leuven, Tom Schrijvers KU Leuven, Bruno C. d. S. Oliveira University of Hong Kong, Georgios Karachalias Tweag Link to publication DOI Media Attached | ||
09:40 20mTalk | Guided Linking: Dynamic Linking without the Costs OOPSLA Sean Bartell University of Illinois at Urbana-Champaign, Will Dietz University of Illinois at Urbana-Champaign, Vikram S. Adve University of Illinois at Urbana-Champaign Link to publication DOI Media Attached | ||
10:00 20mTalk | Towards a Unified Proof Framework for Automated Fixpoint Reasoning using Matching Logic OOPSLA Xiaohong Chen University of Illinois at Urbana-Champaign, Minh-Thai Trinh Advanced Digital Sciences Center, Nishant Rodrigues University of Illinois at Urbana-Champaign, Lucas Peña University of Illinois at Urbana-Champaign, Grigore Roşu University of Illinois at Urbana-Champaign Link to publication DOI Media Attached |
21:00 - 22:20 | F-2AOOPSLA at SPLASH-I Chair(s): Pranav Kant University of Utah, Atsushi Igarashi Kyoto University, Japan | ||
21:00 20mTalk | A Sparse Iteration Space Transformation Framework for Sparse Tensor Algebra OOPSLA Ryan Senanayake Reservoir Labs, Changwan Hong Massachusetts Institute of Technology, Ziheng Wang Massachusetts Institute of Technology, Amalee Wilson Stanford University, Stephen Chou Massachusetts Institute of Technology, Shoaib Kamil Adobe Research, Saman Amarasinghe Massachusetts Institute of Technology, Fredrik Kjolstad Stanford University Link to publication DOI Pre-print Media Attached File Attached | ||
21:20 20mTalk | Resolution as Intersection Subtyping via Modus Ponens OOPSLA Koar Marntirosian KU Leuven, Tom Schrijvers KU Leuven, Bruno C. d. S. Oliveira University of Hong Kong, Georgios Karachalias Tweag Link to publication DOI Media Attached | ||
21:40 20mTalk | Guided Linking: Dynamic Linking without the Costs OOPSLA Sean Bartell University of Illinois at Urbana-Champaign, Will Dietz University of Illinois at Urbana-Champaign, Vikram S. Adve University of Illinois at Urbana-Champaign Link to publication DOI Media Attached | ||
22:00 20mTalk | Towards a Unified Proof Framework for Automated Fixpoint Reasoning using Matching Logic OOPSLA Xiaohong Chen University of Illinois at Urbana-Champaign, Minh-Thai Trinh Advanced Digital Sciences Center, Nishant Rodrigues University of Illinois at Urbana-Champaign, Lucas Peña University of Illinois at Urbana-Champaign, Grigore Roşu University of Illinois at Urbana-Champaign Link to publication DOI Media Attached |