CS 4121/5121 |
The “Best Compiler” title gives each member of the winning team both bragging rights and an attractive plaque announcing their excellence in the compiler-writing domain. PA6 submissions will be treated as submissions to the contest; however, performance in the bakeoff does not affect course grades.
Compilers are compared using the following criteria, listed roughly in order of importance:
Compilers are evaluated using several Eta and Rho programs, testing both language features and performance. These benchmarks test the performance of arrays, loops, recursion, redundant computations, and more.
There were many excellent and impressive project submissions! The winning compiler for Spring 2023 was developed by the group of Esther Wang, Jerry Xu, and Sanjit Basker. Their compiler, implemented in 12k lines of Kotlin, earned the highest score on correctness while generating fast code. Their optimizations included copy and constant propagation, move coalescing, and loop invariant code motion.
Honorable mentions go to three other groups:
Arun Raman, Alan Li, Andrew Cheng, and Angela Cui. Their compiler, written in Java, earned a high correctness score and generated the fastest code of any group.
Bryan Lu, Kate Meuse, Noah Schiff, and Tia Vu. Their Kotlin compiler earned a high correctness score and generated good code.
Albert Xiao, Emily Wang, Iris Li, and Ryan Mao. Their compiler, implemented in 11k lines of C++, earned an excellent correctness score and generated good code. Their compiler was also about 60 times faster than the average.
More detailed statistics are available.