From: Greg Trafton
Subject: Garbage collection problems in Lucid LISP
Date: 
Message-ID: <ybzspm22fpg.fsf@sealbark.itd.nrl.navy.mil>
Hi, all.  I'm running Lucid common lisp version 4.0 on a sun spart 10
and am having some pretty serious problems with garbage collection.  I
have a program that is pretty dang big and it continually gc's at bad
times.  I'd rather it gc once or twice while loading and then not gc
while running my program (or at least have a small chance of gc'ing).

Now, the funny thing is that I'm running the program on a different
machine (a sparc 20) with maybe a slightly different lisp (lucid 4.1)
and the same files work exactly the way I want them to -- it gc's once
when loading (a big gc) and that's it.  after that, even after pretty
heavy use there's no gc.

This is the pertinent parts of the init.lisp I'm using:

;;; Increase dynamic semi-space and reserved size
;;; Does 2 more dynamic expansions and 1 GC
 
#+LUCID (change-memory-management :expand 128 :expand-reserved 128)

OK, so the question...
What in the world is going on?  if it's working on a sparc 20 and not
on a 10, why?
second, is there a way I can prevent the gc; carve off enough memory
at the outset so that it doesn't need to do it half-way into my
program?

any ideas of things to try?  at all?

(the problem is that a gc takes forever, and it's incredibly
distracting and in some cases just plain unusable...)

thanks for any help at all!
greg
-- 
Greg Trafton
(·······@itd.nrl.navy.mil)