[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
advice for parrot vm gc
The parrot vm folks are currently puzzling over garbage collection, so
perhaps someone who as "been there and done that" might contribute an
insightful word.
http://archive.develooper.com/perl6-internals%40perl.org/msg14240.html
>From Steve Fink <steve@fink.com>, To: P6I <perl6-internals@perl.org>.
Many of our tinderbox failures result from architecture-specific
shortcomings in our current root set scanning code. The whole
stackwalk/register scan is also rather slow, as Peter Gibbs showed a
few decades back. (Okay, so it was probably only about a year ago.) In
pondering the problem, I found myself reinventing several solutions
that have already been proposed, and in many cases implemented, by
other people. So I decided to summarize the various approaches in
hopes that something will jump out at someone. I would be grateful if
interested people could check this over and
(1) tell me what I have wrong or am overlooking (especially with
respect to longjmp() -- I have the feeling that it's a bigger
problem than I realize),
(2) point out what's wrong with my "variant 5: generational
stack",
and/or
(3) propose something else that solves the whole problem neatly.
[...]
Re vocabulary - "PMC", "Perl Magic Cookie", is simply a unit of allocation.
Mitchell Charity