[EGRAPHS24] SpEQ: Translation of Sparse Codes using Equivalences
Description:
Explore a cutting-edge approach to translating sparse codes using equivalences in this 19-minute conference talk from EGRAPHS 2024. Dive into SpEQ, a novel strategy for detecting semantics in sparse codes and enabling automatic translation to high-performance library calls or domain-specific languages. Learn how SpEQ leverages e-graphs for flexible and fast transformations, implemented using the LLVM framework, Z3 solver, and egglog library. Discover how SpEQ correctly translates sparse linear algebra codes into high-performance libraries like NVIDIA cuSPARSE and Intel MKL, as well as OpenMP. Examine the impressive performance gains achieved by SpEQ across ten diverse benchmarks, with geometric mean speedups of 3.25×, 5.09×, and 8.04× on OpenMP, MKL, and cuSPARSE backends, respectively. Understand why SpEQ stands out as the only tool that can guarantee correct translation of sparse computations, making it a significant advancement in the field of code optimization and translation.
SpEQ: Translation of Sparse Codes Using Equivalences