<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=UTF-8" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000066">
With the adoption of generational GC's, the non-trivial problem of
distributing GC time in benchmarking results is less of a factor. 
However, there remain Scheme implementations that have not yet
implemented modern garbage collection algorithms, and that present a
non-trivial problem for benchmarking comparative function execution
time.  The problem becomes quite significant when as the percentage of
reachable data in the heap increases, while the available memory
decreases.<br>
<br>
I make these statements based on my own experience with attempts at
benchmarking two different implementations that suffer this problem. 
In order to produce credible results, I need to account for the GC time
in an equitable fashion, that would ideally distribute the GC in a
temporal manner over real time of execution.  After an ACM search, I
didn't find anything that spoke to this problem specifically,  Most of
the literature, understandably, is focused on coming up with better
algorithms.<br>
<br>
Since PLT lived with a non-generational GC for some time, I was
wondering if some algorithm had been developed during that time, that
was generally accepted as an industry standard when benchmarking data
was published.  The problem still exists, even with modern GC
technology, so I'm hoping that somebody in the group has had experience
with managing the problem before, and would be willing to share their
ideas.<br>
<br>
Any comments are welcome.<br>
<br>
Thank you,<br>
<br>
<pre class="moz-signature" cols="72">--kyle

Kyle Smith
airfoil at bellsouth dot net
schemekeys.blogspot.com
</pre>
</body>
</html>