Write a Blog >>
Mon 19 Jun 2017 14:25 - 14:50 at Actes, Civil Engineering - Language Implementation Chair(s): David F. Bacon

Production compilers commonly perform dozens of transformations on an intermediate representation. Running those transformations in separate passes harms performance. One approach to recover performance is to combine transformations by hand in order to reduce number of passes. Such an approach harms modularity, and thus makes it hard to maintain and evolve a compiler over the long term, and makes reasoning about performance harder. This paper describes a methodology that allows a compiler writer to define multiple transformations separately, but fuse them into a single traversal of the intermediate representation when the compiler runs. This approach has been implemented in a compiler for the Scala language. Our performance evaluation indicates that this approach reduces the running time of tree transformations by 35% and shows that this is due to improved cache friendliness. At the same time, the approach improves total memory consumption by reducing the object tenuring rate by 50%. This approach enables compiler writers to write transformations that are both modular and fast at the same time.

Mon 19 Jun

pldi-2017-papers
14:00 - 15:40: PLDI Research Papers - Language Implementation at Actes, Civil Engineering
Chair(s): David F. BaconGoogle
pldi-2017-papers149787360000014:00 - 14:25
Talk
Andreas HaasGoogle, Andreas RossbergGoogle, Derek SchuffGoogle, Ben L. TitzerGoogle, Dan GohmanMozilla, Luke WagnerMozilla, Alon ZakaiMozilla, JF BastienApple, Michael HolmanMicrosoft
Media Attached
pldi-2017-papers149787510000014:25 - 14:50
Talk
Dmytro PetrashkoEPFL, Ondřej LhotákUniversity of Waterloo, Canada, Martin OderskyEPFL, Switzerland
Media Attached
pldi-2017-papers149787660000014:50 - 15:15
Talk
Anthony CaninoSUNY Binghamton, Yu David LiuState University of New York (SUNY) Binghamton
Media Attached
pldi-2017-papers149787810000015:15 - 15:40
Talk
Piyus KediaIndian Institute of Technology Delhi, Manuel CostaMicrosoft Research, Matthew ParkinsonMicrosoft Research, UK, Kapil VaswaniMicrosoft Research, Dimitrios VytiniotisMicrosoft Research, Cambridge
Media Attached