Alexander J Root
PhD Student Department of Computer Science Stanford University Email: ajroot [at] cs [dot] stanford [dot] edu Curriculum Vitae Google Scholar Github |
I am a Stanford CS PhD student advised by Fredrik Kjolstad. I also work closely with Andrew Adams, Kayvon Fatahalian, and Jonathan Ragan-Kelley.
My research interests broadly include domain-specific languages, compilers, and architectures for high-performance numerical computing, with an emphasis on visual computing applications. I am particularly interested in performance and productivity: I aim to make it significantly easier to write high-performance code. I currently work on compilers for sparse array programming and high-performance spatial queries (e.g. ray tracing and collision detection).
I graduated with my bachelor’s (‘21) and master’s (‘22) from MIT, working under Jonathan Ragan-Kelley and Andrew Adams on vector instruction selection, fixed-point computing systems, and bounds inference. I also interned with Andrew, Shoaib Kamil, and Maaz Bin Safeer Ahmad at Adobe Research in the summers of ‘21 and ‘22, on the same topics. Part of my undergraduate work on fixed-point compute systems was advised by Frédo Durand.
Much of my pre-PhD research was applied to the Halide compiler, and I remain somewhat active in the language’s development.
I am generously supported by the NSF GFRP and a Stanford School of Engineering fellowship.
Publications
OOPSLA 2024 | Compilation of Shape Operators on Sparse Arrays | |
Proceedings of the ACM on Programming Languages, Volume 8, Issue OOPSLA | ||
Alexander J Root, Bobby Yan, Peiming Liu, Christophe Gyurgyik, Aart J.C. Bik, and Fredrik Kjolstad | ||
Paper Code | ||
OOPSLA 2024 | Compiler Support for Sparse Tensor Convolutions | |
Proceedings of the ACM on Programming Languages, Volume 8, Issue OOPSLA | ||
Peiming Liu, Alexander J Root, Anlun Xu, Yinying Li, Fredrik Kjolstad, and Aart J.C. Bik | ||
Paper Code | ||
ASPLOS 2023 | Fast Instruction Selection for Fast Digital Signal Processing | |
International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) | ||
Alexander J Root, Maaz Bin Safeer Ahmad, Dillon Sharlet, Andrew Adams, Shoaib Kamil, and Jonathan Ragan-Kelley | ||
Paper Code | ||
ASPLOS 2022 | Vector Instruction Selection for Digital Signal Processors Using Program Synthesis | |
International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) | ||
Maaz Bin Safeer Ahmad, Alexander J Root, Andrew Adams, Shoaib Kamil, and Alvin Cheung | ||
Paper Code |
Teaching
CS 343S: Domain-Specific Language Design Studio Teaching Fellow (TF), Spring 2024, Stanford University |
CS 343D: Domain-Specific Programming Models and Compilers Course Assistant (CA), Winter 2023 and 2024, Stanford University |
6.818: Dynamic Computer Language Engineering Teaching Assistant (TA), Fall 2021, MIT |
6.006: Introduction to Algorithms Teaching Assistant (TA), Spring 2019 and 2020, MIT |
MEET Computer Science Instructor, January 2019, MIT MEET (Global Teaching Labs) |