
Hosted by: IIT Hyderabad (online) Dates: 6th to 16th July 2021

Compilers are pervasive and critical for any software application to execute on any Computer System. You might be already familiar with the C/C++ compiler used to compile C/C++ source code into an executable. However, did you know that there is a compiler being used when you play your favourite 3D game or browse your favourite HTML5 website? Not just that, Compiler technology has applications beyond the traditional task of generating executables! Today it is used to detect defects in code, catch security issues and even generate HW Designs from software specifications. As the era of Artificial Intelligence dawns with techniques like Machine Learning and Deep Learning helping computer perform some amazing human like tasks the importance of designing great compilers increases many-fold, not just to generate the most optimized programs for latest HW but also to help programmer productivity by translating programs coded in Domain Specific Languages that are custom built for Machine Learning and AI.
This summer school aims at providing you a foundation in theory and practice of optimizing compilers. Further, a study of essential components of program execution environments will provide you with an end-to-end understanding of the life of a program in a computer system.
The 2-week school will cover these concepts through lectures as well as hands-on assignments.
A high-level module structure is as follows:

Professor
Indian Institute of Science
Machine Architecture and Machine Dependent Optimizations

Professor
Indian Institute of Technology Bombay
Data Flow Analyses and Perspectives in Compilation

Professor
Indian Institute of Technology Madras
Machine Independent Optimizations

Associate Professor
Indian Institute of Technology Kanpur
Control-Flow Analyses and Static Single Assignment form

Assistant Professor
Visvesvaraya National Institute of Technology Nagpur
Compilation of Object Oriented Languages

Assistant Professor
Indian Institute of Technology Palakkad
Code Generation and BackEnd

NVIDIA
Runtime and Linkers

Assistant Professor
Indian Institute of Technology Hyderabad
Compiler Engineering, MLIR and DSLs

Assistant Professor
Indian Institute of Technology Hyderabad
Constant Propagation and Points-to-Analysis
Students would be provided with a Docker container with the necessary softwares installed.
Organizing institution: IIT Hyderabad
Platform: Google-Meet/Microsoft Teams

