Four Languages for Portability
Date and time: 6 September 2024, 15:00-16:00 CEST (UTC +2)
Speaker: Fredrik Kjolstad, Stanford University, USA
Title: Four Languages for Portability
Where: Digital Futures hub, Osquars Backe 5, floor 2 at KTH main campus OR Zoom
Directions: https://www.digitalfutures.kth.se/contact/how-to-get-here/
OR
Zoom: https://kth-se.zoom.us/j/66597450582
Abstract: Computer scientists have always built languages and libraries to make it easy to write software in different domains. In the last decade, performance demands have dramatically increased due to more expensive uses of more data. To deliver this performance, we have developed sophisticated computing environments that embrace both distributed-memory computing and specialized domain-specific accelerators. These environments place a large burden on the software stack and increase the need for compilers to generate specialized software implementations to target different hardware and to increase locality through tiling and fusion.
I will share my thoughts on designing programming systems that permit portable compilation across disparate hardware. These programming systems must raise the level of abstraction to sophisticated operations on abstract collections. (I think four such collections cover the lion’s share of large-scale computing.) By raising the level of abstraction and by introducing new compiler techniques, we can make the programming systems portable across different machines and different physical data structures. To manage complexity, compilers should target hardware-facing domain-specific abstract machines that separate software and hardware implementations. Finally, intermediate languages can also help us describe hardware to the compiler, so that we can target it without rewriting large parts of the compiler.
Bio: Fredrik Kjolstad is an Assistant Professor in Computer Science at Stanford University. He works on topics in compilers, programming models, and systems, with an emphasis on compiler techniques that make high-level languages portable. He has received the NSF CAREER Award, the MIT EECS Sprowls PhD Thesis Award in Computer Science, the Tau Beta Phi 2024 Teaching Honor Roll recognition, the Rosing Award, an Adobe Fellowship, a Google Research Scholarship, and several distinguished paper awards.