Wed 7 Nov 2018 15:30 - 15:52 at Studio 2 - Compiler Optimization Chair(s): Patrick Lam

This paper shows how to build a sparse tensor algebra compiler that is agnostic to tensor formats (data layouts). We develop an interface that describes formats in terms of their capabilities and properties, and show how to build a modular code generator where new formats can be added as plugins. We then describe six implementations of the interface that compose to form the dense, CSR/CSF, COO, DIA, ELL, and HASH tensor formats and countless variants thereof. With these implementations at hand, our code generator can generate code to compute any tensor algebra expression on any combination of the aforementioned formats.

To demonstrate our technique, we have implemented it in the taco tensor algebra compiler. Our modular code generator design makes it simple to add support for new tensor formats, and the performance of the generated code is competitive with hand-optimized implementations. Furthermore, by extending taco to support a wider range of formats specialized for different application and data characteristics, we can improve end-user application performance. For example, if input data is provided in the COO format, our technique allows computing a single matrix-vector multiplication directly with the data in COO, which is up to 3.6× faster than by first converting the data to CSR.

Wed 7 Nov

Displayed time zone: Guadalajara, Mexico City, Monterrey change

15:30 - 17:00
Compiler OptimizationOOPSLA at Studio 2
Chair(s): Patrick Lam University of Waterloo
15:30
22m
Talk
Format Abstraction for Sparse Tensor Algebra Compilers
OOPSLA
15:52
22m
Talk
ShareJIT: JIT Code Cache Sharing across Processes and its Practical Implementation
OOPSLA
Xiaoran Xu Rice University, Keith Cooper Rice University, Jacob Brock University of Rochester, Yan Zhang , Handong Ye Futurewei Technologies
16:15
22m
Talk
Reconciling High-level Optimizations and Low-level Code in LLVM
OOPSLA
Juneyoung Lee Seoul National University, Chung-Kil Hur Seoul National University, Ralf Jung MPI-SWS, Zhengyang Liu University of Utah, John Regehr University of Utah, Nuno P. Lopes Microsoft Research
Pre-print
16:37
22m
Talk
An Empirical Study of the Effect of Source-level Loop Transformations on Compiler Stability
OOPSLA
Zhangxiaowen Gong University of Illinois at Urbana-Champaign, Zhi Chen University of California, Irvine, Justin Szaday University of Illinois at Urbana-Champaign, David Wong Intel, Zehra Sura IBM Research, Neftali Watkinson , Saeed Maleki Microsoft Research, David Padua University of Illinois at Urbana-Champaign, Alexander Veidenbaum University of California, Irvine, Alexandru Nicolau University of California, Irvine, Josep Torrellas University of Illinois at Urbana-Champaign
Media Attached