Previous Winners

Fall   1997 (Aarhus):  Mads Johan Jurik, Jørgen Ibsen and
                         Jonathan Thomas Nielsen

Winter 1998 (McGill):  Aline Normoyle, Sergei Savchenko and
                          Francois Labelle

Fall   1998 (Aarhus):  Christian F.S. Laursen, Jeppe Ravn-Grove and
                          Klaus Andersen

Winter 1999 (McGill):  Mathias Jourdain, Frederic Legare  and Adam Smith

Fall   1999 (Aarhus):  ???

Fall   1999 (McGill):  Mark Segal, Felix Kwok and Feng Qian 

Fall   2000 (Aarhus):  Paulo Oliva 

Fall   2000 (McGill):  Genevieve ARBOIT, Jennifer Rose Thorsley  and 
                       Shashikala Sivapragasam 


Fall   2001 (Aarhus):  Erik Søe Sørensen,  Thomas Holmen Jørgensen && 
                       Jacob Johannsen.

Fall   2001 (McGill):  Florian Loitsch and Pierre Queinnec

Results on Fall 2001 McGill Benchmarks

Compiler                         Total
                                 bytes

Winner Fall01 (McGill)            22138
Javac(1.3)                        23076 
Winner Winter98 (McGill)          23141
Winner Fall99 (Aarhus)            23142 
Winner Fall01 (Aarhus)            23152
Winner Fall99 (McGill)            23174  
Winner Winter99 (McGill)          23222 
Winner Fall97 (Aarhus)            23347 
Winner Fall00 (McGill)            23443
Winner Fall98 (Aarhus)            23634 
Winner Fall00 (Aarhus)            23991
A+ patterns                       24417 
A- patterns                       30962 
no patterns                       31936 

Results on Fall 2000 McGill Benchmarks

Compiler                           Total    
                                   bytes  

Winner Fall01 (McGill)            10197
Winner Fall00 (McGill)            10622
Winner Fall99 (McGill)            10705  
Winner Winter98 (McGill)          10741
Javac(1.3)                        10745 
Winner Fall01 (Aarhus)            10752
Winner Winter99 (McGill)          10785 
Winner Fall99 (Aarhus)            10838 
Winner Fall97 (Aarhus)            10883 
Winner Fall98 (Aarhus)            11080 
Winner Fall00 (Aarhus)            11223
A+ patterns                       11457 
A- patterns                       14698 
no patterns                       15116 

Results on Fall 1999 McGill Benchmarks

Compiler                           Total     Total 
                                   bytes  instructions

Winner Fall01 (McGill)             8387
Winner Fall99 (McGill)             8628       4438
Winner Fall01 (Aarhus)             8645
Javac(1.1.7)                       8659       4371 
Winner Winter98 (McGill)           8691       4481
Winner Winter99 (McGill)           8752       4499
Winner Fall99 (Aarhus)             8831       4533
Winner Fall97 (Aarhus)             8839       4548
Winner Fall98 (Aarhus)             8906       4555
Winner Fall00 (McGill)             8977
Winner Fall00 (Aarhus)             9531
A+ patterns                        9891       5146
A- patterns                       12752       6941
no patterns                       13084       7273

Results on Winter 1999 McGill Benchmarks

Compiler                           Total     Total 
                                   bytes  instructions

Winner Fall01 (McGill)             13798
Javac(1.1.7)                       14022      7168 
Winner Fall99 (McGill)             14411      7434
Winner Fall01 (Aarhus)             14269
Winner Fall99 (Aarhus)             14433      7405
Winner Winter99 (McGill)           14453      7427
Winner Winter98 (McGill)           14453      7453
Winner Fall97 (Aarhus)             14484      7472
Winner Fall00 (McGill)             14780
Winner Fall98 (Aarhus)             15173      7843
Winner Fall00 (Aarhus)             15351
A+ patterns                        15900      8294
A- patterns                        20958     11438
no patterns                        21396     11876

Reports on Previous Competitions

Results of Fall 1997 Competition at Aarhus

The following graph shows the combined results for all project groups (sorted by total number of bytecode instructions) for the Fall '97 class at University of Aarhus. Can McGill beat them?

The winning group (16) reduced the combined code size from 21686 to 14851 bytecodes, an improvement of 32%. Fully half of the project groups did better than the A+ compiler, and a third did better than SUNs javac -O compiler (version 1.0.2).


Results of Winter 1998 Competition at McGill

  • The results of the competition were quite encouraging. On the McGill benchmarks, the winning team (team #12) used 8737 bytecode instructions, in a total of 16695 bytes. The unoptimized code takes 23781 bytes, so the winning patterns gives an overall improvement of 30%. The winning patterns also produces smaller code than javac from JDK1.1 which used 17020 bytes.
  • 12 of the 17 teams beat the A+ JOOS compiler.
  • Comparing the winning Aarhus patterns (from Fall 1997) with the winning McGill patterns, the McGill group wins on the McGill benchmarks (16975 bytes for McGill versus 17210 bytes for Aarhus), while the Aarhus group wins on the Aarhus benchmarks (22568 for McGill versus 22428 for Aarhus). Overall, combining the benchmark sets, McGill wins (39543 for McGill versus 39638 for Aarhus).
  • Combining the McGill and Aarhus patterns together gives even a better result, however the order in which they are combined does have some effect.
  • The postscript slides summarizing the McGill competition are available (1-on-1) (4-on-1) .

Results of the Fall 1998 Competition at Aarhus

The Danes won back the peephole title after some very strong peephole optimizers were developed. Thus, the challenge for the McGill Winter 1999 class is to reclaim the title.

The best group beat javac 1.1.5, and four groups beat last year's winner.

Results of the Fall 1999 Competition at McGill

For the first time the groups were provided with scripts for running their benchmarks and counting number of bytes and instructions. On the Fall 1999 McGill Benchmarks the winning group beat javac . Six of the eight groups beat the A+ patterns. Here are the results:

            #bytes #instr

Null         13084 7273
A-           12752 6941
09           11743 6004
04           10187 5307
A+            9891 5146
07            9416 4877  A+ Buster (Fabien, Paola and Jean Jacques)
03            9114 4713  A+ Buster (Rhodes, Jacek and Alex)
02            9023 4643  A+ Buster (Serge, Haiying and Xinjian)
Fall98(A)     8906 4555
Fall97(A)     8839 4548
05            8814 4523  2nd Runner-up (Othman, Laure and Chloe)
Winter99(Mc)  8752 4499
01            8709 4488  1st Runner-up (Jiexin, Su and Hsun-Cheng)
Winter98(Mc)  8691 4481
Javac (1.1.7) 8659 4371
10            8628 4438  Winner  (Feng, Mark and Felix)
Best Comb.    8489 4372

Note that the patterns labelled Best Comb. contain a combination of patterns from all groups.

Maintained by Laurie J. Hendren. Last modified Sat Sep 25 13:07:40 EDT 2004. [HOME]
Compiler research projects: Soot, a Java analysis, optimization and transformation toolkit ---- abc, an AspectJ compiler. (AspectJ)