Programming language shootout

From Gambit wiki

(Difference between revisions)
Jump to: navigation, search
(start adding benchmark programs)
(Specify a good configuration for target machine.)
 
(2 intermediate revisions not shown)
Line 2: Line 2:
Here are implementations for some programs from the [http://shootout.alioth.debian.org/ Computer Language Benchmarks Game] for Gambit.
Here are implementations for some programs from the [http://shootout.alioth.debian.org/ Computer Language Benchmarks Game] for Gambit.
 +
 +
Running [[Programming language shootout: k-nucleotide|k-nucleotide.scm]]  with the largest data set creates a string of length 5,000,000. With four-byte characters (Gambit's default) this is 20,000,000 byte object, and the largest object that can be created in a 32-bit system is a bit less than 16MB. So, either configure Gambit with --enable-char-size=1 (or 2) or use a 64-bit version of Gambit.
 +
 +
The suggested build and install procedure for Gambit on the Computer Language Benchmarks Game machine is
 +
<pre>
 +
./configure CC='gcc -march=pentium4 -mfpmath=sse -msse2' --enable-single-host --enable-char-size=1
 +
make
 +
make install
 +
</pre>
 +
This installs Gambit in <tt>/usr/local/Gambit-C</tt>, and the binaries <tt>gsi</tt> and <tt>gsc</tt> are in <tt>/usr/local/Gambit-C/current/bin</tt>.
* [[Programming language shootout: binary trees|binary-trees.scm]]
* [[Programming language shootout: binary trees|binary-trees.scm]]
 +
* [[Programming language shootout: chameneos redux|chameneos-redux.scm]]
 +
* [[Programming language shootout: fannkuch|fannkuch.scm]]
 +
* [[Programming language shootout: fasta|fasta.scm]]
 +
* [[Programming language shootout: k-nucleotide|k-nucleotide.scm]]
 +
* [[Programming language shootout: mandelbrot|mandelbrot.scm]]
 +
* [[Programming language shootout: meteor contest|meteor-contest.scm]]
 +
* [[Programming language shootout: n-body|n-body.scm]]
 +
* [[Programming language shootout: nsieve|nsieve.scm]]
 +
* [[Programming language shootout: nsieve-bits|nsieve-bits.scm]]
 +
* [[Programming language shootout: partial sums|partial-sums.scm]]
 +
* [[Programming language shootout: pidigits|pidigits.scm]]
 +
* [[Programming language shootout: recursive|recursive.scm]]
 +
* [[Programming language shootout: regex dna|regex-dna.scm]]
 +
* [[Programming language shootout: reverse complement|reverse-complement.scm]]
 +
* [[Programming language shootout: spectral norm|spectral-norm.scm]]
 +
* [[Programming language shootout: startup|startup.scm]]
 +
* [[Programming language shootout: sum file|sum-file.scm]]
 +
* [[Programming language shootout: thread ring|thread-ring.scm]]

Latest revision as of 00:43, 5 March 2008

The programs

Here are implementations for some programs from the Computer Language Benchmarks Game for Gambit.

Running k-nucleotide.scm with the largest data set creates a string of length 5,000,000. With four-byte characters (Gambit's default) this is 20,000,000 byte object, and the largest object that can be created in a 32-bit system is a bit less than 16MB. So, either configure Gambit with --enable-char-size=1 (or 2) or use a 64-bit version of Gambit.

The suggested build and install procedure for Gambit on the Computer Language Benchmarks Game machine is

./configure CC='gcc -march=pentium4 -mfpmath=sse -msse2' --enable-single-host --enable-char-size=1
make
make install

This installs Gambit in /usr/local/Gambit-C, and the binaries gsi and gsc are in /usr/local/Gambit-C/current/bin.

Personal tools
documentation