harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Weldon Washburn" <weldon...@gmail.com>
Subject Re: [drlvm/mmtk] jitrino.jet write barrier design questions
Date Tue, 04 Jul 2006 16:05:45 GMT
On 6/30/06, Alex Astapchuk <alex.astapchuk@gmail.com> wrote:
>  > Actually, the simplest form of write barrier would be one, single
>  > parameter -- a ref ptr to the object getting scribbled on.  I suspect
>
> Hmmm...
> Seems I have a misunderstanding here - how comes a single ref ?
>
> What I was thinking of, is that the WB of 2 refs is a kind of
> optimization for generational GCs. I recall a thread on this
> in harmony-dev - that having an object being written and the
> target to write into, such GC can easily detect whether or not
> the young 'src' becomes reachable from the old generation.
>
> But what would be a 'single ref' write barrier intended for ?
> Just curious...

Good point.  I did some digging.  The precursor to DRLVM, ORP, has a
generational collector with the oldest generation using the train
algorithm.  The write barrier in ORP has just one argument which is
"slot".  The comment in ORP code indicates that filtering out
uninteresting ref ptrs was tried but showed an overall performance
degrade.  SableVM has a generational GC that only uses the "slot"
pointer.

OTOH, MMTk generational collector does filter out uninterresting
addresses.  It uses both addresses as you suggest above.

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message