Concerning the benchmarks itself, however, I'm afraid it measures
integer arithmetics rather than the overhead of 'eval'.

You're right, these numbers are synthetic.  However,
if one wants to analyze the data further, that's why
I wrote these four benchmarks:

(1): Loop + normal code
(2): Loop + quoted code
(3): Loop + evaled quoted code
(4): Loop + normal code + trivial eval

where (3) really matters, and others are control.
So, one can eliminate Loop and define

(5) normal code                - quoted code  = (1)-(2)
(6) evaled quoted code         - quoted code  = (3)-(2)
(7) normal code + trivial eval - qouted code =  (4)-(2)

Absolute eval + quote overhead = (6)-(5) = (3)-(1).
Relative eval + quote overhead = ((6)-(5))/(5)
                               = ((3)-(1))/((1)-(2))

For example,

Absolute overhead is 0.011,  11.951, and 300.316
Relative overhead is 11%,   170 728%,    11 726%

in Pico, SBCL, Clojure respectively.
For that particular example of code.



--
UNSUBSCRIBE: mailto:picol...@software-lab.de?subject=unsubscribe

Reply via email to