BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//project/author//NONSGML v1.0//EN
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTEND:20200305T120000Z
UID:ba7fa7f71c9a86a4fac996f3ddd0ae0a-69
DTSTAMP:19700101T120016Z
DESCRIPTION:Fun facts on compiler optimization and reliability
URL;VALUE=URI:https://www.csa.iisc.ac.in/newweb/event/69/fun-facts-on-compiler-optimization-and-reliability/
SUMMARY: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.
DTSTART:20200305T120000Z
END:VEVENT
END:VCALENDAR