harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan Volosyuk" <ivan.volos...@gmail.com>
Subject Re: [drlvm] Jitrino.OPT performs incorrect GC enumeration in nested loop with array accesses
Date Fri, 06 Oct 2006 10:36:43 GMT
On 10/5/06, Mikhail Fursov <mike.fursov@gmail.com> wrote:
> Ivan, could this enumeration scenario be possible?
>
> 1) JIT reports a base to GC
> 2) GC relocates the base and updates references.
> 3) JIT reports MPTR, looks for the base, founds the patched base on the
> stack and the resulting offset becomes invalid?
>
> The previous GC (gcv4) did not relocate object during the enumeration
> process. If gcv4.1 does this is the reason of the problem.
> ?

I see. Here is the problem.

The reason of the behaviour was: Root set size can be quite large on
some workloads. It can consume a lot of memory if would keep it. Why
don't we update roots just when it was reported? Thus we don't need to
keep large array of roots and it can also have positive influence on
d-cache utilization (need to proof this).

There is a command line switch: -Dgc.remember_root_set=true which will
cause GC to retrieve root set before any operations on heap.

-- 
Ivan
Intel Middleware Products Division

---------------------------------------------------------------------
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