UniSparse: An Intermediate Language for General Sparse Format Customization
The ongoing trend of hardware specialization has led to a growing use of custom data formats when processing sparse workloads, which are typically memory-bound. These formats facilitate optimized software/hardware implementations by utilizing sparsity pattern- or target-aware data structures and layouts to enhance memory access latency and bandwidth utilization. However, existing sparse tensor programming models and compilers offer little or no support for productively customizing the sparse formats. Additionally, because these frameworks represent formats using a limited set of per-dimension attributes, they lack the flexibility to accommodate numerous new variations of custom sparse data structures and layouts.
To overcome this deficiency, we propose UniSparse, an intermediate language that provides a unified abstraction for representing and customizing sparse formats. Unlike the existing attribute-based frameworks, UniSparse decouples the logical representation of the sparse tensor (i.e., the data structure) from its low-level memory layout, enabling the customization of both. As a result, a rich set of format customizations can be succinctly expressed in a small set of well-defined query, mutation, and layout primitives. We also develop a compiler leveraging the MLIR infrastructure, which supports adaptive customization of formats, and automatic code generation of format conversion and compute operations for heterogeneous architectures. We demonstrate the efficacy of our approach through experiments running commonly-used sparse linear algebra operations with specialized formats on multiple different hardware targets, including an Intel CPU, an NVIDIA GPU, an AMD Xilinx FPGA, and a simulated processing-in-memory (PIM) device.
Fri 25 OctDisplayed time zone: Pacific Time (US & Canada) change
11:00 - 12:20 | Static Analysis and Program Verification 4OOPSLA 2024 at IBR West Chair(s): Anders Møller Aarhus University | ||
11:00 20mTalk | A Learning-Based Approach to Static Program Slicing OOPSLA 2024 Aashish Yadavally University of Texas at Dallas, Yi Li University of Texas at Dallas, Shaohua Wang Central University of Finance and Economics, Tien N. Nguyen University of Texas at Dallas DOI Pre-print | ||
11:20 20mTalk | Boosting the Performance of Alias-Aware IFDS Analysis with CFL-based Environment Transformers OOPSLA 2024 Haofeng Li Institute of Computing Technology at Chinese Academy of Sciences, Chenghang Shi SKLP, Institute of Computing Technology, CAS, Jie Lu SKLP, Institute of Computing Technology, CAS, Lian Li Institute of Computing Technology at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Jingling Xue UNSW Sydney DOI | ||
11:40 20mTalk | The ART of Sharing Points-to Analysis: Reusing Points-to Analysis Results Safely and Efficiently OOPSLA 2024 Shashin Halalingaiah UT Austin, IIT Madras, Vijay Sundaresan IBM Canada, Daryl Maier IBM Canada, V Krishna Nandivada IIT Madras DOI | ||
12:00 20mTalk | UniSparse: An Intermediate Language for General Sparse Format Customization OOPSLA 2024 Jie Liu Cornell University, Zhongyuan Zhao Qualcomm, Zijian Ding UCLA, Benjamin Brock Parallel Computing Lab (PCL), Intel, Hongbo Rong Intel Labs, Zhiru Zhang Cornell University, USA DOI |