racket/collects/tests/mzscheme/benchmarks/common
Matthew Flatt 980d48ce19 fix karen and psyntax benchmarks
svn: r17850
2010-01-27 12:56:51 +00:00
..
auto.ss fix karen and psyntax benchmarks 2010-01-27 12:56:51 +00:00
bigloo-prelude.sch update benchmark harness 2010-01-26 20:17:44 +00:00
browse.sch
cmdline.ss add psyntax as a kind of realistic-program benchmark (I'd like to have more) 2009-12-14 23:51:09 +00:00
conform.sch
conform.ss
cpstack.sch
cpstack.ss
ctak.sch
ctak.ss
dderiv.sch update benchmark harness 2010-01-26 20:17:44 +00:00
dderiv.ss
deriv.sch
deriv.ss
destruct.sch
destruct.ss
div.sch
div.ss
dynamic-input.txt.gz
dynamic.sch
dynamic.ss
dynamic2.sch
dynamic2.ss
earley.sch add test for embedding MzScheme and resetting via scheme_basic_env 2008-09-07 12:41:20 +00:00
earley.ss
fft.sch
fft.ss
gambit-prelude.sch fix karen and psyntax benchmarks 2010-01-27 12:56:51 +00:00
graphs.sch
graphs.ss
index-template.html fix karen and psyntax benchmarks 2010-01-27 12:56:51 +00:00
input.txt
kanren.sch fix karen and psyntax benchmarks 2010-01-27 12:56:51 +00:00
kanren.ss built-in fixnum ops; bug fix related to misuse of flonum ops; questionable attempt to improve inlining algorithm 2010-01-02 16:33:28 +00:00
lattice.sch
lattice.ss
lattice2.sch
lattice2.ss
maze.sch
maze.ss
maze2.sch
maze2.ss
mazefun.sch
mazefun.ss
mk-bigloo.ss update benchmark harness 2010-01-26 20:17:44 +00:00
mk-chicken.ss * Newlines at EOFs 2008-07-09 07:18:06 +00:00
mk-gambit.ss * Newlines at EOFs 2008-07-09 07:18:06 +00:00
nboyer.sch
nboyer.ss
nestedloop.sch
nestedloop.ss
nfa.sch update benchmark harness 2010-01-26 20:17:44 +00:00
nfa.ss
nothing.sch update benchmark harness 2010-01-26 20:17:44 +00:00
nothing.ss update benchmark harness 2010-01-26 20:17:44 +00:00
nqueens.sch
nqueens.ss
nucleic2.sch update benchmark harness 2010-01-26 20:17:44 +00:00
nucleic2.ss
paraffins.sch
paraffins.ss
peval.sch update benchmark harness 2010-01-26 20:17:44 +00:00
peval.ss
psyntax-input.txt fix karen and psyntax benchmarks 2010-01-27 12:56:51 +00:00
psyntax.sch fix karen and psyntax benchmarks 2010-01-27 12:56:51 +00:00
psyntax.ss fix karen and psyntax benchmarks 2010-01-27 12:56:51 +00:00
puzzle.sch update benchmark harness 2010-01-26 20:17:44 +00:00
puzzle.ss
r5rs-wrap.ss
README.txt
sboyer.sch
sboyer.ss
scheme.sch update benchmark harness 2010-01-26 20:17:44 +00:00
scheme.ss
scheme2.sch update benchmark harness 2010-01-26 20:17:44 +00:00
scheme2.ss
sort1.sch
sort1.ss
tabulate.ss update benchmark harness 2010-01-26 20:17:44 +00:00
tak.sch
tak.ss
takl.sch
takl.ss
takr.sch
takr.ss
takr2.sch fix some scribble->latex problems 2008-03-29 03:16:44 +00:00
takr2.ss fix some scribble->latex problems 2008-03-29 03:16:44 +00:00
traverse.sch
triangle.sch update benchmark harness 2010-01-26 20:17:44 +00:00
triangle.ss
wrap.ss optimizer inlining improvements, especially to ensure that single-use bindings are inlined 2008-03-27 16:07:42 +00:00

To run a benchmark, assuming you have `mzscheme' in your path:
 ./auto.ss <impl-or-benchmark> ...
where <impl-or-benchmark> names an implementation as one of
   mzscheme3m
   bigloo
   chicken
   gambit
   larceny
   ...
or a benchmark as one of
   conform
   cpstack
   ctak
   ...
or any of the above prefixed by "no-" to skip the corresponding
<impl-or-benchmark>. To see a complete list of implementations
and benchmarks, run
 ./auto.ss --show

Naming no implementation/benchmark causes a standard of them to be run
(as reported by --show). Similarly, if the first named
implementation/benchmak starts with "no-", the default set is used
minus the "no-"-specified implementation/benchmark.

The output is a comment line
  ; <date and time>
and then a series of lines of the form
  [<impl> <benchmark> (<cpu-msec> <real-msec> <gc-msec>) <compile-msec>]
where #f means that the information is unavailable, or that the
benchmark wasn't run due to an implementation limitation. The
<cpu-msec> and <compile-msec> parts are #f only when the benchmark
wasn't run.

All benchmarks must be run from the directory containing this file.

Most bechmarks were obtained from
 http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/scheme/code/bench/gabriel/
 http://www.ccs.neu.edu/home/will/GC/sourcecode.html
 Marc Feeley (who has all of them and more)

Files that end in ".sch" are supposed to be standard Scheme plus `time'.
Files that end in ".ss" are MzScheme wrapper modules or helper scripts.

To build <benchmark>.sch directly with Gambit, Bigloo, or Chicken:
  mzscheme -qr mk-gambit.ss <benchmark> ; gsi -:m10000 <benchmark>.o1
  mzscheme -qr mk-bigloo.ss <benchmark> ; <benchmark>
  mzscheme -qr mk-chicken.ss <benchmark> ; <benchmark>

Unpack "dynamic-input.txt.gz" if you want to run the "dynamic" benchmark,
but the auto.ss script will do that for you.