[Gc] Re: Partially scanning a VM's call stack

Juan Jose Garcia-Ripoll juanjose.garciaripoll at googlemail.com
Wed Aug 19 03:16:08 PDT 2009

On Wed, Aug 19, 2009 at 12:04 PM, Ludovic Courtès<ludo at gnu.org> wrote:
> Good to know.  I guess whether actual data retention actually occurs
> depends on stack usage patterns.
> In principle it looks like a risk that's worth avoiding, but I can
> imagine it's rarely a problem in practice.

I must say that I have experienced an important performance increase
(this was long time ago) by telling the garbage collector explicitely
which regions of the interpreter stack are active. The reason is that
lisp code can get depply recursive pretty fast, filling the stack with
lots of data that should then be quickly discarded. Without code to
mark that region of the stack as no longer use, a lot more data is
retained. The same will probably happen on any interpreter that uses a
separate structure to store the stack of the interpreted code.


Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)

More information about the Gc mailing list