View all Seminars  |  Download ICal for this event

Fun facts on compiler optimization and reliability

Series: Seminar

Speaker: Prof. Sorav Bansal

Date/Time: Mar 05 16:00:00

Location: CSA Seminar Hall (Room No. 254, First Floor)

Faculty Advisor:

If you write an expression in your C program like 'a+b', its evaluation can proceed in either order (e.g., either first 'a' then 'b', or first 'b' then 'a'). I will show how this can be exploited by the compiler to obtain performance improvements of up to 2.6x on real benchmarks, and up to 18x on micro-benchmarks. I will also show that coding patterns that allow such non-determinism to be leveraged for optimization, are very common in real-world code. This part of the talk is based on our PLDI 2020 paper. I will also discuss the astounding complexity of today's optimizing compilers and why you should not trust them. I will then present our recent work on scalable translation validation, that can verify the result of a compilation, and rebuild this lost trust in modern optimizing compilers. This part of the talk is based on our APLAS17, HVC17, SAT18 papers and our ongoing work. The contents of this talk are based on the work done by members of the superoptimizer research group at IIT Delhi.

Speaker Bio:
Sorav Bansal is an Associate Professor and Microsoft Chair Professor at the CSE department at IIT Delhi, and works in the areas of programming languages and operating systems. His primary research interests are around investigating superoptimization-based compiler design. Sorav obtained his B.Tech. from IIT Delhi, and Ph.D. from Stanford University.

Host Faculty: Prof. Uday Kumar Reddy