[Shootout-list] [Fwd: Revival of Shootout]

Brent A. Fulgham bfulgham@debian.org
Sat, 12 Jun 2004 22:07:56 -0700


Hi Brent.  I was thinking about scoring functions that don't suffer
from the clustering problem that I mentioned in my mail on
MLton-user.  What do you think of the following?

For a given benchmark, let x be the running time of some compiler and
let b be the best running time for that benchmark.  Define the score
of the compiler to be

	score(x) = 1 / (1 + log2 (x / b))

This is a decreasing function of x that assigns a maximum score of 1
to the best performer and nonzero scores (less than 1) to everyone
else.  It gives more separation between the top performers than the
current system.  To change the separation, you could add a scaling
factor k, as in

	score(x) = 1 / (1 + k * log2 (x / b))