Impacts of the squeak garbage collector

Alan Kay Alan.Kay at squeakland.org
Mon Feb 18 23:40:39 UTC 2002


Paul --

As usual, the truth is often inconvenient. heh heh

Cheers,

Alan

-----

At 3:08 PM -0800 2/18/02, Paul McCullough wrote:
>At 07:55 AM 2/18/02 -0800, Alan Kay wrote:
>>Interval had a great submillisecond GC that was terrific for 
>>real-time apps. Maybe we can get this from them now that they have 
>>donated their work to Stanford (per Glenn Edens).
>
>Not to put a damper on things, but...
>The Interval real-time collector (of which I am the author) should 
>be viewed as a prototype. It was based on Baker's Treadmill 
>algorithm -- not the Train algorithm.
>
>Due to some design constraints, and due to running out of time (I 
>was quite ill for a while and then left Interval shortly before they 
>terminated the project) I certainly wouldn't call the collector 
>finished. If Glenn Edens is saying that the collector was 
>sub-millisecond, I have no idea where he got those numbers. On paper 
>yes, in reality no one knows. In fact, due to some bugs in the 
>in-liner, much of the code was never in-lined and it ran much, much 
>slower than the standard Squeak collector. But it did run Squeak for 
>hours without crashing so the concept worked.
>
>Other research shows that real-time collectors use considerably more 
>time to run than 'straightforward' collectors: 5 - 8 times more if I 
>recall correctly. The real-time advantage is that the work is spread 
>out and hence much less disruptive to the running system. But you 
>have to pay the price somewhere.
>
>Before anyone asks, I don't the source code (which was written in 
>Interval's version of Slang). I know where it was on Interval's 
>servers when I left the company, but have been asked by Tim Rowledge 
>and others if I have a copy, so it may be lost or somewhere in 
>backup-ether.
>
>I occasionally have a flash of insight as to how to simplify the 
>collector -- just the other day I realized how to deal with the 
>difficulties of dealing with become: in a much simpler way.
>
>If someone wants to pursue putting a real-time collector into 
>Squeak, I can likely provide some guidance (off-list) . One thing 
>that would help tremendously would be to simplify & clarify the 
>interface between the Interpreter and ObjectMemory (at least it 
>would have years ago, I haven't look at the interface recently).
>
>paul


-- 



More information about the Squeak-dev mailing list