My interests are compilation, programming language design, and effective performance programming. However, I define these areas broadly. As a result, I ask questions such as:
- How can compilers contribute to understanding climate change?
- Can machine learning help us to automate compiler design and performance programming?
- Can compilers revolutionize how hardware (ASICs, CPUs, ...) is designed?
- Can formal verification increase confidence in self-driving cars?
- How can performance programming become a smooth and interactive experience for developers?
In all my research activities, I aim to:
- address problems that have a clear impact on society,
- learn about and advocate for diversity of gender, race, ...,
- work collaboratively and share my research results as open-source,
- show that well-being in my research group has a positive impact on our scientific output.
I previously have been affiliated with:
Are you considering a PhD? I really enjoy working with students! There is nothing more rewarding for me as a scientist than seeing a student develop and execute their very personal research vision. I am excited to provide you guidance along this path.Explore my research vision, papers, and projects. If a topic catches your attention or you want to discuss your personal research idea, email me.
NEWS: I just moved to Edinburgh and am building a new group. Hence, I am planning to take several Ph.D. students and postdoctoral researchers over the next year. Get in touch!
Are you interested in an internship or a postdoctoral research position? I regularly host postdoctoral researchers and interns. Email me and we'll take it from there!
by Re-Connecting Developers and Compilers
My research uses strong theoretical reasoning to bring innovations to real-world compilation and programming language problems. My current objective is to rethink performance programming by re-connecting developers and compilers. Today, performance programming is no longer limited to the optimization of low-level code but often includes the use of domain-specific compilers, constraint programming libraries, complex performance models, and automatic (potentially learned) strategies to search for optimal code transformations.My primary objectives are:
- making compilation more modular, predictable, automatic, and trustworthy
- bringing open-source compiler innovation to an increasingly broad set of targets from GPUs over FPGAs to custom hardware, and
- breaking down the barriers between compilers and programmers by enabling their interaction via the programming language environment.
I dream of a future where performance programming is an intuitive play between the programmer and the compiler. A game that smoothly moves between manual as well as automatic techniques and works across software and hardware.I am particularly interested in the following areas:
- Static & dynamic analysis
- Abstract interpretation based program analysis
- Performance and cache models
- Test case generation
- Human-compiler interface
- Domain-specific compilation
- Deep learning
- Climate science
- High-performance computing
- Loop optimization & polyhedral compilation
- Compilation for accelerators: GPU, FPGA
- Open-source hardware
- Compiler support for RISC-V
- Software/hardware co-design
- SMT and constraint solving
- Mixed integer linear programming
- SAT solving
- Parametric counting using Barvinok’s algorithm
- Automatic theorem proving for compiler verification and constraint solving
- Effective compilation from functional languages to imperative code
- Artificial intelligence for compilers and constraint solvers
- Jakub Lichman, M.Sc. Thesis
Internship with Albert Cohen and Oleksandr Zinenko
- Theodoros Theodoridis, Researcher
2019 - 2020
Moved toETH Zurich
Ph.D. student with Zhendong Su
- Arjun Pitchanathan, Intern (M.Sc.)
2019 - 2020
Moved toUniversity of Edinburgh
Ph.D. with me
- Jean-Michel Gorius, Intern (M.Sc.)
Moved toUniversity of Murcia
Internship with Alexandra Jimborean
- Mathieu Fehr, Intern (M.Sc.)
Moved toMIT CSAIL
Internship with Adam Chlipala
- Anastiasiia Ruzhanskaia, Intern (M.Sc.)
Moved toETH Zurich
Ph.D. student with Timothy Roscoe
- OOPSLAFast Linear Programming through Transprecision Computing on Small and Sparse Data ↞ New!Tobias Grosser, Theodoros Theodoridis, Maximilian Falkenstein, Arjun Pitchanathan, Michael Kruse, Manuel Rigger, Zhendong Su, Torsten Hoefler, 2020
Domain-Specific Multi-Level IR Rewriting for GPU ↞ New!Tobias Gysi, Christoph Müller, Oleksandr Zinenko, Stephan Herhut, Eddie Davis, Tobias Wicky, Oliver Fuhrer, Torsten Hoefler, Tobias Grosser, 2020arXiv
- PACT '20Automatic Generation of Multi-Objective Polyhedral Compiler Transformations ↞ New!Lorenzo Chelini, Tobias Gysi, Tobias Grosser, Martin Kong, Henk Corporaal, 2020Publisher
- PLDILLHD: A Multi-Level Intermediate Representation for Hardware Description Languages ↞ New!Fabian Schueki, Andreas Kurth, Tobias Grosser, Luca Benini, 2020Publisher Paper Slides Video arXiv
- CCMixed-data-model heterogeneous compilation and OpenMP offloading ↞ New!Andreas Kurth, Koen Wolters, Björn Forsberg, Alessandro Capotondi, Andrea Marongiu, Tobias Grosser, Luca Benini, 2020Publisher Slides
- SPMACompiling Neural Networks for a Computational Memory Accelerator ↞ New!Kornilios Kourtis, Martino Dazzi, Nikolas Ioannou, Tobias Grosser, Abu Sebastian, Evangelos Eleftheriou, 2020Publisher Slides Video arXiv
- ESWEEK-TCADPolyhedral Compilation for Racetrack Memories ↞ New!Asif Ali Khan, Hauke Mewes, Tobias Grosser, Torsten Hoefler, Jeronimo Castrillon, 2020
- IMPACTTC-CIM: Empowering Tensor Comprehensions for Computing-In-Memory ↞ New!Andi Drebes, Lorenzo Chelini, Oleksandr Zinenko, Albert Cohen, Henk Corporaal, Tobias Grosser, Kanishkan Vadivel, Nicolas Vasilache, 2020Publisher Paper Slides
- PLDIA Fast Analytical Model of Fully Associative CachesTobias Gysi, Tobias Grosser, Laurin Brandner, Torsten Hoefler, 2019Publisher Paper Slides Video arXiv
- ICSEfficient Hierarchical Online-AutotuningPhilip Pfaffe, Tobias Grosser, Martin Tillmann, 2019Publisher Paper
- PACTAbsinthe: Learning an Analytical Performance Model to Fuse and Tile Stencil Codes in One ShotTobias Gysi, Tobias Grosser, Torsten Hoefler, 2019Publisher Paper Slides
- TACODeclarative Loop Tactics for Domain-specific OptimizationLorenzo Chelini, Oleksandr Zinenko, Tobias Grosser, Henk Corporaal, 2019Publisher Slides
School of Informatics
10 Crichton Street
Edinburgh EH8 9AB, United Kingdom
first.last at ed.ac.uk