… java-run.sh scripts
…ether you specify a Clojure version on the command line or not.
…oves some versions that I consider too similar to nearby versions to be worth running separate benchmark tests for
and for the current Clojure programs that are specified in the clj-compile.sh files, make ALL_LANGUAGES in their batch.sh files list all Clojure versions from 1.2 on up that correctly compile and run the program with the correct output, at least for the quick size of the program run on Mac OS X 10.6.8 and Oracle/Apple JDK 1.6.0_35.
This is to save disk space when running many measurements in a row, e.g. with run-all.sh
…reproc in all clj-run.sh and java-run.sh scripts.
clj-run.sh and java-run.sh scripts by a single change in env.sh. Having it on is good for recording results longer-term, but when you are just doing interactive runs those extra lines of output are usually unwanted.
useful information fits on one screenful.
programs that use pmap or futures, replace it with (shutdown-agents), which is needed in such programs to avoid a long timeout (about 60 seconds) before the process exits while waiting for the other threads to quit.
for the problems listed below. This requires changes to clj-run.sh, java-run.sh, and batch.sh in the corresponding directories. binarytrees collatz (Clojure only) fannkuch fannkuchredux fasta knuc mandelbrot n-body pidigits (Java only) rcomp regex-dna rlines spectralnorm
do by hand.
the fannkuchredux program.
the one on the shootout web site.
'tee'. Add support for Clojure 1.3 alpha1.
be typed at the command line to run Clojure benchmark programs with specified version. Unnecessary detail.
or Clojure 1.3.0-alpha1 on the benchmarks that have Clojure programs. A few existing Clojure programs work without changes, but more need at least small tweaks, and one or two need larger changes.
path names, which are relatively common on Windows.
work on a Windows XP system with Cygwin installed. I want to try out the JRockit JVM. It is available for Windows and Linux (and some other OS's I don't have available right now). I have a Windows machine installed on bare metal, but the only Linux machines I have are VMware virtual machines.
explicitly, so things work better on Ubuntu.
...)) in my code, when (printf "..." ...) works nearly the same way. The only difference is that println automatically calls (flush) each time by default (can be disabled), whereas printf does not, even if it prints a newline.
help speeding up the code.
Clojure program -- it does not need much memory. Also remove some commented-out debug code before submitting to shootout web site.
declarations for speed, not aset-int or any of the other aset-* with primitive type in place of *.
Add results for its run time, which are worse relative to the Java code than for the older fannkuch benchmark. I don't know why yet. I just want to get this checked in as a baseline so I can more easily see changes I make to it in order to try to improve its performance.
benchmark, and an initial incorrect version of a Clojure program for the job. It does not compute the checksum correctly yet.