lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Geoff Leyland wrote:
> On 10/03/2010, at 11:02 AM, Mike Pall wrote:
> > Actually it's picking fannkuch as the median. And although it
> > looks really simple, it's the hardest to optimize of them all
> > (for a trace compiler).
> 
> I'm not quite sure I understand how the shootout statistics
> work, and it's a bit  puerile to game benchmarks, but you can
> make nbody about 9% faster by using numeric rather than string
> indexes for the planet data.  Unfortunately, I think that to
> make a difference you'd need to get it under the median, maybe
> requiring a 30% improvement.

It's explicitly labeled as a benchmark on struct access. Numeric
indexes won't qualify. But the low-level binary structs I plan to
add would qualify -- the inner loops are identical, only the
initialization changes.

The score is the median of the ratios against the top-performing
language for each benchmark. Here's the current u32 data:

Ratio | LuaJIT vs. top
------+-------------------------------------------------------------------
 1.29 |  28.32  22.02  mandelbrot          N=16000     top: ATS
 1.42 |   3.84   2.71  pidigits            N=10000     top: C++ GNU g++
 1.47 |  15.69  10.64  spectral-norm       N=5500      top: ATS
 1.89 |  44.39  23.52  n-body              N=50000000  top: C GNU gcc
 1.92*|  93.23  48.44  fannkuch            N=12        top: C GNU gcc
 4.86 |  66.40  13.66  k-nucleotide        N=25000000  top: C++ GNU g++
 5.32 |   0.40   0.08  meteor-contest                  top: C++ GNU g++
 8.72 |  15.28   1.75  fasta               N=25000000  top: C GNU gcc
10.32 |  11.27   1.09  reverse-complement  N=25000000  top: C++ GNU g++
11.02 | 130.35  11.82  binary-trees        N=20        top: Java 6 steady

* = picked median

I guess reverse-complement will become competitive, once I add the
mentioned mutable buffers and that would shift the median.

--Mike