Hi,
François Perrad wrote:
> I'm interested by the source of yours benchmarks, for me, it's
> more test case.
These are the Lua benchmarks I've written for the shootout.
You're already using these in your testcases. :-)
SciMark for Lua is at:
http://luajit.org/download/scimark-2007-09-19.lua
Joshua Isom wrote:
> For x86, you can also combine different runcores. If you try -Cj it might
> run even faster.
Well, the differences are minimal, so I've only tested -j vs. the
default options (with higher runtimes).
> Also, for some programs, keeping gc on can be much
> faster. The --no-gc is to deal with(hopefully fixed) bugs in parrot.
Unfortunately lua.pbc fails immediately without this option. I'll
be happy to rerun the benchmarks whenever that problem is fixed.
chromatic wrote:
> JIT's much better for long-running processes. The last time I
> profiled a test with JIT, the process spent most of its time
> *generating* the JIT code. The result ran faster than even the
> CGP code, but the process didn't run the JITted code long
> enough to overcome the cost of JITting.
Ok, I reran all benchmarks with at least 10 seconds runtime for
Parrot. This should be enough for a meaningful test. I mean ...
LuaJIT is able to JIT-compile these trivial benchmarks in less
than a millisecond (yes, no typo).
So here's the complete benchmark table. Note that this is only
intended for comparing Parrot with Lua/LuaJIT. It's not so useful
for comparing Lua with LuaJIT because of the short runtimes. I
had to scale them down that much to get them to run with Parrot.
Scale | Runtimes in s (LOWER IS BETTER) |
factor | Lua LuaJIT | Parrot 0.4.16 | Parrot slower
Benchmark N | 5.1.2 1.1.3 | default -j | than LuaJIT
---------------------|----------------|----------------|--------------
binarytrees 11 | 0.372 0.172 | 9.86 9.88 | 57x
chameneos 40000 | 0.087 0.024 | 11.14 11.11 | 462x
fannkuch 9 | 1.175 0.161 | 38.66 35.48 | 220x
knucleotide 50000 | 0.786 0.479 | 51.19 53.61 | 111x
mandelbrot 300 | 0.285 0.048 | 10.63 10.35 | 215x
nbody 30000 | 0.366 0.082 | 12.49 12.20 | 148x
nsieve 7 | 0.683 0.283 | 13.58 12.64 | 44x
nsievebits 4 | 0.229 0.041 | 13.76 13.14 | 320x
partialsums 300000 | 0.356 0.116 | 12.92 12.74 | 109x
recursive 2 | 0.227 0.030 | 10.67 10.44 | 348x
revcomp 100000 | 0.136 0.072 | 11.13 10.85 | 150x
spectralnorm 200 | 0.443 0.107 | 16.78 16.42 | 153x
sumcol 1000 | 0.453 0.416 | 10.02 10.13 | 24x
| Performance (HIGHER IS BETTER) |
| Lua LuaJIT | Parrot 0.4.16 | Parrot slower
SciMark Sizes | 5.1.2 1.1.3 | default -j | than LuaJIT
---------------------|----------------|----------------|--------------
FFT 1024 | 7.31 48.45 | 0.29 0.31 | 156x
SOR 100 | 18.64 117.50 | 1.44 1.58 | 74x
MC | 4.44 23.14 | 0.14 0.16 | 145x
SPARSE 1000, 5000 | 10.45 65.80 | 0.60 0.66 | 100x
LU 100 | 16.41 82.45 | (failed) | -
The following benchmarks failed with Lua on Parrot:
fasta Error: attempt to call a nil value
message Error: maximum recursion depth exceeded
pidigits Parser error
regexdna Wrong result
SciMark LU Error: attempt to index a nil value
Bye,
Mike
Thread Previous
|
Thread Next