								-*-text-*-

These are not real benchmarks, of course.  I started collecting some
times to make sure that the interpreter does not slow down as I keep
adding features.

All test scripts are in the benchmark/ directory of the distribution.

(test-tak) -- tak.scm -- famous tak benchmark
=============================================

user time  gc-count  info
---------  --------  ----
0m2.060s   22
0m2.060s   11	     enlarged cell chunks to be 1024*16-1 cells
0m1.620s   11	     made environments using static links
0m1.580s   11	     environments are only once created per tail call loop
0m1.510s   11	     Made more environment handling faster
0m1.490s   11	     Some minor speedups
0m1.850s   14	     Implemented general tail recursion & backtraces.
0m1.470s   11	     Switched off backtraces for benchmarks.
0m1.700s   8	     Fixed bug in alloc_cell(), chunks are now 1 Meg big.
0m1.590s   8	     Using optimized form handling and non-checking `if'.
0m1.420s   8	     Switched to improved integrated evaluator.
0m1.540s   8	     Increasing integration of evaluator.
0m1.390s   8	     Introducing local and global locations.
0m1.470s   8	     Parameter handling tuning.
0m1.330s   27	     Speeded up car and cdr.  (mgrabmue/2000-04-25)
0m1.260s   30	     Using faster macros in evaluator. (mgrabmue/2000-05-09)
0m1.240s   30	     Tuning zzz_cons(). (mgrabmue/2000-05-09)
0m1.160s   30	     Seperated cons and tagged heap. (mgrabmue/2000-05-11)
0m1.200s   31	     New symbol hash., less special vars. (mgrabmue/2000-06-02)
0m1.090s   13	     New, bigger symtab, faster let. (mgrabmue/2000-06-13)
0m1.010s   12	     Reduced environment size. (mgrabmue/2000-06-14)
0m0.980s   12	     New imm. val. representation. (mgrabmue/2000-06-16)
0m18.590s  254	     Benchmark changed run 20 times. (mgrabmue/2000-06-16)
0m17.830s  101	     Fewer GCs, optimized evaluator. (mgrabmue/2000-08-17)
0m26.710   253	     Various changes. (mgrabmue/2000-11-09)
0m21.710s  252	     Reorganized evaluator (mgrabmue/2000-11-16)
0m18.520   252	     Simplified environments (mgrabmue/2000-11-16)
--

(hanoi 20) -- hanoi.scm -- towers of hanoi
==========================================

user time  gc-count  info
---------  --------  ----
0m35.800s  91
0m35.630s  46	     enlarged cell chunks to be 1024*16-1 cells
0m34.610s  46	     after some code cleanup
0m32.460s  49	     made environments using static links
0m31.560s  47	     environments are only once created per tail call loop
0m27.940s  47	     Made more environment handling faster
0m27.890s  47	     Some minor speedups
0m35.890s  60	     Implemented general tail recursion & backtraces.
0m28.920s  49	     Switched off backtraces for benchmarks.
0m32.510s  134	     Fixed bug in alloc_cell(), chunks are now 1 Meg big.
0m30.600s  134	     Using optimized form handling and non-checking `if'.
0m26.870s  130	     Switched to improved integrated evaluator.
0m28.770s  130	     Increasing integration of evaluator.
0m25.190s  130	     Introducing local and global locations.
0m26.570s  131	     Parameter handling tuning.
0m25.190s  529	     Speeded up car and cdr.  (mgrabmue/2000-04-25)
0m23.940s  602	     Using faster macros in evaluator. (mgrabmue/2000-05-09)
0m23.440s  602	     Tuning zzz_cons(). (mgrabmue/2000-05-09)
0m22.020s  605	     Seperated cons and tagged heap. (mgrabmue/2000-05-11)
0m21.880s  618	     New symbol hash., less special vars. (mgrabmue/2000-06-02)
0m20.230s  209	     New, bigger symtab, faster let. (mgrabmue/2000-06-13)
0m19.090s  209	     Reduced environment size. (mgrabmue/2000-06-14)
0m18.620s  209	     New imm. val. representation. (mgrabmue/2000-06-16)
0m17.450s  83	     Fewer GCs, optimized evaluator. (mgrabmue/2000-08-17)
0m26.710s  267	     Various changes. (mgrabmue/2000-11-09)
0m21.390s  266	     Reorganized evaluator (mgrabmue/2000-11-16)
0m18.660   266	     Simplified environments (mgrabmue/2000-11-16)
--

(f 0) -- tailrecurse.scm -- tail recursion testing
==================================================

user time  gc-count  info
---------  --------  ----
0m28.380s  93	     Fixed bug in alloc_cell(), chunks are now 1 Meg big.
0m27.770s  93	     Using optimized form handling and non-checking `if'.
0m24.760s  78	     Increasing integration of evaluator.
0m22.200s  78	     Introducing local and global locations.
0m24.320s  78	     Parameter handling tuning.
0m23.130s  315	     Speeded up car and cdr.  (mgrabmue/2000-04-25)
0m21.360s  358	     Using faster macros in evaluator. (mgrabmue/2000-05-09)
0m20.570s  358	     Tuning zzz_cons(). (mgrabmue/2000-05-09)
0m19.550s  359	     Seperated cons and tagged heap. (mgrabmue/2000-05-11)
0m20.210s  367	     New symbol hash., less special vars. (mgrabmue/2000-06-02)
0m20.380s  400	     New, bigger symtab, faster let. (mgrabmue/2000-06-13)
0m17.480s  400	     Reduced environment size. (mgrabmue/2000-06-14)
0m17.610s  400	     New imm. val. representation. (mgrabmue/2000-06-16)
0m16.820s  160	     Fewer GCs, optimized evaluator. (mgrabmue/2000-08-17)
0m23.860s  158	     Various changes. (mgrabmue/2000-11-09)
0m18.790s  158	     Reorganized evaluator (mgrabmue/2000-11-16)
0m14.460   158	     Simplified environments (mgrabmue/2000-11-16)
--

Older benches
=============

-- This was a buggy implementation of the fibonacci-function.

(fib 28)

user time  gc-max-protect-level  gc-count  info
---------  --------------------  --------  ----

38.340
38.130
37.910
37.800
36.130
33.010     339                   192
30.630     339                   192
28.320     339                   192
26.840     339                   192       when inlining alloc_cell ()
28.200     339                   192
28.160     339                   192
29.820s    339                   197       environment as first-class objects
