[Gc] Partially scanning a VM's call stack

Shiro Kawai shiro at lava.net
Wed Aug 19 02:36:23 PDT 2009


I once implemented something in that line in Gauche experimentally
(Gauche uses Boehm GC).    Basically I defined a new GC "kind" of
objects just for stack area and attached a custom marker.   It may
not be the supposed way to use GC_new_kind, though.

I didn't see any difference in the performance, and haven't
experienced excess data retention problem caused by unused stack
area, so the feature is turned off but the code is still in it
under preprocessor symbol USE_CUSTOM_STACK_MARKER.
I'm not sure it still works with the current GC (I experimented
it several years ago).

--shiro



From: ludo at gnu.org (Ludovic Courtès)
Subject: [Gc] Partially scanning a VM's call stack
Date: Tue, 18 Aug 2009 16:15:33 +0200

> Hello,
> 
> Guile's new VM uses an alternate stack for bytecode that's evaluated.
> As with the C stack, the GC should not scan the stack below its current
> bottom; failing to do so may lead to excess data retention.
> 
> What's the best way to handle this?  Are there other options than
> zeroing the stack bottom once in a while?
> 
> Thanks,
> Ludo'.
> 
> _______________________________________________
> Gc mailing list
> Gc at linux.hpl.hp.com
> http://www.hpl.hp.com/hosted/linux/mail-archives/gc/


More information about the Gc mailing list