SpEQ: Translation of Sparse Codes Using Equivalences
Offered By: ACM SIGPLAN via YouTube
Course Description
Overview
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.
Syllabus
[EGRAPHS24] SpEQ: Translation of Sparse Codes using Equivalences
Taught by
ACM SIGPLAN
Related Courses
RISC-V Toolchain and Compiler Optimization TechniquesLinux Foundation via edX The State of Julia in 2021 - JuliaCon Keynote
The Julia Programming Language via YouTube Get Started Using WebAssembly (wasm)
egghead.io DataFusion and Apache Arrow: Supercharging Data Analytics with a Rust-Based Query Engine
Databricks via YouTube Compilers - Jared Shumway
White Hat Cal Poly via YouTube