>>>>> "CEB" == C E B <C.E.B.> writes:

    CEB> Is there a reason why the following code runs out of
    CEB> memory when I call the function test?  Works find on
    CEB> clisp and similar code in scheme.

    CEB> I tried implementing delay/force two different ways
    CEB> that does not seem to matter.

Here is a workaround for this issue.

(alien:def-alien-variable gencgc-oldest-gen-to-gc c-call:unsigned-int)
(setf gencgc-oldest-gen-to-gc 0)

This effectively turns off the generational gc, and your test runs to
completion without consuming all memory.

You could try setting the oldest gen to 1, but you will use more
memory.  The test does finish though.

To restore the previous behavior, set oldest gen to 5.

It's also possible to play around with some of the internal GC
parameters.  Look for lisp::set-gc-trigger, lisp::set-trigger-age,
lisp::set-min-mem-age.  

Ray




Reply via email to