[gambit-list] Problems with benchmark software

Bradley Lucier lucier at math.purdue.edu
Sun Jan 2 21:01:31 EST 2005


Marc:

My bench/prefix-gambit.scm (admittedly perhaps modified) is

(##declare
   (standard-bindings)
   (extended-bindings)
   (block)
   (not safe)
;  (not interrupts-enabled)
;  (fixnum)
   (inlining-limit 500)
)
;...
(define (run-bench name count run ok?)
   (let loop ((i 0) (result (list 'undefined)))
     (if (< i count)
       (loop (+ i 1) (run))
       result)))

then a whole bunch of define-macros that include, e.g.,

(##define-macro (def-macro form . body)
   `(##define-macro ,form (let () , at body)))

(def-macro (< x y)
   `(##fixnum.< ,x ,y))

The problem is that the macros don't seem to be used to expand the 
operations in (the earlier-occuring) run-bench, so we're measuring the 
inter-module call time and the generic + and < operations in addition 
to the times for the calls to (run).

This can be a problem when the number of iterations for a test is large 
enough.

Brad



More information about the Gambit-list mailing list