Changes:


CS 4121
Introduction to Compilers Practicum
Fall 2009

2009 CS 4120/4121 Compiler Bakeoff

The “Best Compiler” title is once again up for grabs! Winning team members will receive bragging rights and an attractive plaque announcing their excellence in the compilation domain. Your PA7 submissions will be considered submissions to the compiler bakeoff. Entries to the contest will accepted until December 18 (this is a hard deadline both for PA7 and the contest!).

Your group's relative performance in the bakeoff won't affect your course grade.

Criteria

Compilers were compared using the following criteria, listed roughly in order of importance:

Benchmarks

Compilers were evaluated using several IX and Iota9 programs, testing both language features and performance. Benchmarks tested the performance of objects, arrays, loops, recursion, redundant computations, and more. In the past, CS 4121 compilers have been able to get within 20% slowdown relative to Java. IX is tuned to be faster than past 4121 languages, but Java has gotten faster too. Can we do better this year?

Results

Bakeoff winner

Every group put in significant effort on their compilers, but the best compiler overall was produced by Group 4: Owen Arden, Catalin Dumitriu, Wenzel Jakob, and Danfeng Zhang. Their compiler managed to handle almost all of our test programs, including complex IX programs. Its generated code ran significantly faster on average than that of any other group, probably because they implemented a large set of optimizations, including PRE and some effective peephole optimizations.