PLDI 2024
Mon 24 - Fri 28 June 2024 Copenhagen, Denmark
Tue 25 Jun 2024 14:40 - 15:00 at Finland - Compilation Frameworks Chair(s): Amir Shaikhha

Arrays often contain underlying structure, such as sparsity, runs of repeated values, or symmetry. Support for structured data is fragmented and incomplete. Existing frameworks limit the array structures and program control flow they support to better simplify the problem.

We propose a new programming language, Finch, which supports both flexible control flow and diverse data structures. Finch facilitates a programming model which resolves the challenges of computing over structured arrays by combining control flow and data structures into a common representation where they can be co-optimized. Finch automatically specializes control flow to data so that performance engineers can focus on experimenting with many algorithms. Finch supports a familiar programming language of loops, statements, ifs, breaks, etc., over a wide variety of array structures, such as sparsity, run-length-encoding, symmetry, triangles, padding, or blocks. Finch reliably utilizes the key properties of structure, such as structural zeros, repeated values, or clustered non-zeros. We show that this leads to dramatic speedups in operations such as SpMV and SpGEMM, image processing, graph analytics, and a high-level tensor operator fusion interface.

https://github.com/willow-ahrens/Finch.jl

Willow Ahrens is a Ph.D. student at MIT studying tensor compilers, advised by Saman Amarasinghe and graduating this year. She is the developer of Finch, a productive datastructure-driven array programming language. Willow received her BS in Computer Science with a minor in Mathematics from University of California, Berkeley. Willow is a Department of Energy Computational Science Graduate Fellow, and values scientific applications. Willow is also a glassblower, and teaches first-time glassblowers at the MIT Glass Lab.

Tue 25 Jun

Displayed time zone: Windhoek change

13:40 - 15:20
Compilation FrameworksSparse at Finland
Chair(s): Amir Shaikhha University of Edinburgh
13:40
20m
Talk
Equality Saturation and Joins
Sparse
Max Willsey UC Berkeley
14:00
20m
Talk
SpEQ: Translation of Sparse Codes using Equivalences
Sparse
Avery Laird University of Toronto
14:20
20m
Talk
Design DSLs with xDSL
Sparse
Tobias Grosser University of Cambridge, UK
14:40
20m
Talk
Compiling Control Flow in Sparse and Structured Array Programs
Sparse
Willow Ahrens Massachusetts Institute of Technology
15:00
20m
Panel
Panel: Compilation Frameworks
Sparse
Max Willsey UC Berkeley, Avery Laird University of Toronto, Tobias Grosser University of Cambridge, UK, Willow Ahrens Massachusetts Institute of Technology