[comp.lang.lisp] when to garbage collect

keith@reed.UUCP (Keith Packard) (06/29/87)

I am looking for references on algorithms for deciding when to garbage
collect a non-incremental mark/sweep lisp interpreter.  I expect this sort
of thing has been well hashed out by many designers of memory management
software, but I've been unable to locate any reasonable discussion of the
basics.  

I don't know how important the architecture of the system is, but it's
designed for a VM system but doesn't pack memory upon completion so this
question is rather important.  If memory isn't swept often enough, large
gaps will in general exist with the resultant loss of locality-of-reference.
But, because the system is not incremental, the cost of calling the
garbage-collector is rather substantial.  So the obvious solution is a
clever algorithm to decide when to GC.


keith packard
tektronix!reed!keith