ikarus/benchmarks
Abdulaziz Ghuloum 45346ef865 - Added cp0! including:
- (optimize-level [0,1,2])  and  ikarus -O[0,1,2]
       where -O0 = no optimizations
             -O1 = using old optimizer
             -O2 = using the new cp0 optimizer
       defaults to -O1 for now.
   - (cp0-size-limit n) which is the limit of the residual size for
     each inlining attempt
   - (cp0-effort-limit n) which is the limit on the effort expended 
     for each inlining attempt
   
- Rewrote the syntax-match macro to make use of the same technology
  used in syntax-case itself resulting in reduced code size.

- Added (system-value <symbol>) which returns the system value.
  E.g., (system-value 'car) => #<procedure car>
  This is pretty much the same as 
    (eval <symbol> (environment '(ikarus)))
  except that it does not involve compiling the expression or 
  consulting the library/expander systems.

- Fixed the fasl loader to make it understand complex numbers.
2008-06-28 02:25:44 -07:00
..
rnrs-benchmarks Added bitwise-and primop. 2008-01-19 15:44:38 -05:00
Makefile.am Added bitwise-and primop. 2008-01-19 15:44:38 -05:00
Makefile.in Added bitwise-and primop. 2008-01-19 15:44:38 -05:00
README Changed version to 0.0.2-rc1 and added benchmarks to distribution. 2007-11-23 20:50:28 -05:00
bench.ss - Added cp0! including: 2008-06-28 02:25:44 -07:00
benchall.ss - Added cp0! including: 2008-06-28 02:25:44 -07:00
bib * renamed benchmarks directories. 2007-06-14 20:26:38 +03:00
log.error * Fixed benchmarking tools. 2007-11-05 22:49:38 -05:00
parsing-data.ss * renamed benchmarks directories. 2007-06-14 20:26:38 +03:00
rn100 * renamed benchmarks directories. 2007-06-14 20:26:38 +03:00
rnrs-benchmarks.ss benchmarks were getting stale, many were not runnable. all updated. 2007-12-25 05:03:41 -05:00
summarize.pl Fixes bug 162436: Off-by-one in substring 2007-11-13 12:21:27 -05:00
timelog Added bitwise-and primop. 2008-01-19 15:44:38 -05:00

README

This directory contains the Gambit benchmarks and benchmarking
infrastructure, written by Marc Feeley.  Will Clinger has hacked
it up to run benchmarks on the machines used by the Larceny
project, and has added several benchmarks beyond those
distributed with Gambit.  Abdulaziz Ghuloum converted them to
R6RS libraries and added an ikarus-specific bench.ss for running
the benchmarks under ikarus.

Files and directories:

  * bench.ss: a script for running a benchmark
  * benchall.ss: a script for running all benchmarks
  * rnrs-benchmarks.ss: a library specifing the number of
    iterations that every benchmark should be run and some
    procedures (like run-benchmark) that the various benchmarks
    use.
  * rnrs-benchmarks/*: the actual benchmark libraries.
  * rn100, bib, parsing-data.ss: used by some benchmarks.

To run a benchmark, type:

  $ ikarus --r6rs-script bench.ss <benchmark-name>

  Example:
  
    $ ikarus --r6rs-script bench.ss nucleic
    running stats for compile-nucleic:
        7 collections
        262 ms elapsed cpu time, including 84 ms collecting
        262 ms elapsed real time, including 84 ms collecting
        30095456 bytes allocated
    running stats for nucleic:
        154 collections
        840 ms elapsed cpu time, including 77 ms collecting
        842 ms elapsed real time, including 78 ms collecting
        640581192 bytes allocated

To run all benchmarks, type:

  $ ikarus --r6rs-script benchall.ss

Or, alternatively, run `make benchall` to run all benchmarks and 
append the results to the file 'timelog'.
  


The text that Ikarus's "time" macro and "time-it" procedure
output is modeled after Chez Scheme's in order to facilitate
interoperability with tools that parse benchmark data.

BUGS: 
  maze and nbody do not work yet because they require bitwise-and 
  and make-polar.

Aziz,,,