Isolating the GC code from the jvm to run on external accelerator
Thomas Schatzl
thomas.schatzl at oracle.com
Tue May 5 13:18:37 UTC 2020
Hi,
On 05.05.20 14:50, Ofir Gordon wrote:
> Thanks, I think I figured it out.
>
> Do you maybe know any tutorial / documentation / explaination that
> describes the mechanism behind the way that the gc finds the pointers in an
> object's fields?
> I can see that it happaens somehow by partition of the object to "chuncks"
> in the class "classLoaderData" (if I understood correctly), but I wish to
> understand the complete process.
>
this depends a bit on the type of object (regular objects vs. array
of references vs. other kind of java classes - there are a few special
ones e.g. instances of j.l.ClassLoader). Have a look at the
oop_oop_iterate() methods in the subtypes of the Klass class in the oops
directory.
You'll find that e.g. for InstanceKlass ("regular objects") there is
something called oopmap that contains the offsets into the object where
references are.
Thanks,
Thomas
More information about the hotspot-gc-dev
mailing list