Provably Efficient Parallel Language Design
Sam Westrick
- NYU
Nov. 13, 2026, 3:30 p.m. - Nov. 13, 2026, 4:30 p.m.
ENGMC 11
Hosted by: Brigitte Pientka
Advances in safety for parallelism and concurrency have brought parallelism to the mainstream. However, a major hurdle remains for non-experts: no language today is able to provide strong guarantees on parallel performance. In practice, it is common to experience performance issues that require significant expertise to identify and debug, such as unexpected slowdowns and excessive memory consumption. In this talk, I will frame these problems in terms of assigning a cost semantics to a parallel language, making it possible to specify and identify language-level performance problems. I will then overview two ongoing lines of research in my group which offer provable guarantees on performance, at the level of the programming language itself: (1) parallel garbage collection based on “disentanglement”, and (2) automatic parallelism management, a technique for automatically controlling the overheads of task creation. Both lines of work are implemented in a full-fledged language called MaPLe (https://github.com/mpllang/mpl) which extends Standard ML with parallelism. Using MaPLe, we demonstrate that these techniques are not just provably efficient in theory, but also highly efficient in practice.
Sam Westrick is an assistant professor at New York University doing research on parallel programming languages and parallel algorithms. His research focuses on provably efficient and safe implementations of high-level programming languages, especially for parallel programming. He is the lead developer of mpl (“maple”), an efficient and scalable parallel functional programming language which helps bring a little joy to the world of parallel programming. Previously, at Carnegie Mellon University, he was heavily involved with an introductory course which teaches undergraduates how to think parallel.