[Python-Dev] Some dull gc stats
Kevin Jacobs
jacobs@penguin.theopalgroup.com
Mon, 1 Jul 2002 06:44:52 -0400 (EDT)
On Mon, 1 Jul 2002, Tim Peters wrote:
> I checked in a surprisingly large patch to change the way we collect a
> generation.
>[...]
> The point was that almost everything is reachable in the end, and moving an
> object between lists costs six pointer stores (updating prev and next
> pointers in the object, and in each of the two lists). So if most stuff is
> doomed to be reachable in the end, better to move the unreachable stuff than
> to move the reachable stuff.
>[...]
> It would be nicer if we could drive scanned there down to 0 <wink>.
This change may be a short-term win if I can get Jeremy's idea working. It
involves temporarily untracking objects with known external roots, so many
more objects become unreachable. These include objects stored on the
c-eval stack, local variables in the current frame, and possibly other
select places.
I have no idea if this approach will make enough of a difference to be
worthwhile, but it seems like a worthy experiment.
-Kevin
--
Kevin Jacobs
The OPAL Group - Enterprise Systems Architect
Voice: (216) 986-0710 x 19 E-mail: jacobs@theopalgroup.com
Fax: (216) 986-0714 WWW: http://www.theopalgroup.com