Our next meeting will be on 01 February 2024 at 17:00 Geneva (CH) Time.
We are happy to host Yuka Ikarashi.
Title: Exocompilation for productive programming of hardware accelerators
Abstract: High-performance kernel libraries are critical to exploiting accelerators and specialized instructions in many applications. Because compilers are difficult to extend to support diverse and rapidly-evolving hardware targets, and automatic optimization is often insufficient to guarantee state-of-the-art performance, these libraries are commonly still coded and optimized by hand, at great expense, in low-level C and assembly. To better support development of high-performance libraries for specialized hardware, we propose a new programming language, Exo, based on the principle of exocompilation: externalizing target-specific code generation support and optimization policies to user-level code. Exo allows custom hardware instructions, specialized memories, and accelerator configuration state to be defined in user libraries. It builds on the idea of user scheduling to externalize hardware mapping and optimization decisions. Schedules are defined as composable rewrites within the language, and we develop a set of effect analyses which guarantee program equivalence and memory safety through these transformations. We show that Exo enables rapid development of state-of-the-art matrix-matrix multiply and convolutional neural network kernels, for both an embedded neural accelerator and x86 with AVX-512 extensions, in a few dozen lines of code each.
Speaker: Yuka Ikarashi is a fourth-year PhD
candidate at MIT CSAIL, advised by Jonathan Ragan-Kelley. She is
interested in creating compiler systems and programming languages
for real-world applications. She is a co-creator of the Exo
programming language and has been a developer for other compiler
frameworks such as Clang/LLVM and ROOT. She previously worked at
Apple, Amazon, and CERN. She received Masason Foundation
Fellowship and Funai Foundation Fellowship awards.
Feel free to forward this email to everybody who might be
interested. This talk will be recorded.