Increased safepoint cleanup tasks in Java 11 (vs 8)
charlie hunt
charlie.hunt at oracle.com
Wed Jun 5 16:08:43 UTC 2019
I was curious if global safepointing also offered similar symptoms. ...
part of an isolation process.
On 6/5/19 7:54 AM, Vitaly Davidovich wrote:
> Hi Charlie,
> On Wed, Jun 5, 2019 at 8:47 AM charlie hunt <charlie.hunt at oracle.com
> <mailto:charlie.hunt at oracle.com>> wrote:
>
> Just a quick thought ... did you happen to do a comparison with
> ThreadLocalHandshakes disabled in JDK 11.0.3? i.e.
> -XX:-ThreadLocalHandshakes
>
> No, haven't tried without TLH. I'm actually pretty excited about
> them - avoiding global safepoints, where possible, is super
> attractive. Why do you think TLH can contribute to more frequent
> safepoints (or rather, cleanup ops)?
>
>
> thanks,
>
> Charlie
>
> Thanks
>
>
> On 6/5/19 7:33 AM, Vitaly Davidovich wrote:
> > Hi all,
> >
> > I'm looking at a Java 11 (11.0.3) application and observing a
> *lot* more
> > safepoint cleanup operations than on the latest Java 8 VM. I
> was hoping
> > someone could shed some light on this, and perhaps suggest a way
> to get
> > more information about the nature of the cleanup.
> >
> > The guaranteed safepoint poll timer fires every (by default) 1
> sec, which
> > is no different from 8. However, as mentioned, it looks like 11
> has work
> > to do during a poll a lot more frequently. Unfortunately, the
> ULF logging
> > that I have doesn't tell me the precise nature of the cleanup:
> > [... timestamp ...][info ][safepoint ] Entering safepoint
> region: Cleanup
> > [... timestamp ...][info ][safepoint ] Leaving safepoint region
> >
> > The "Cleanup", unfortunately, appears to be the generic
> > vm_operation_name(). But I suspect it's one of the tasks listed
> in the
> > SafepointCleanupTasks enum:
> >
> https://github.com/openjdk/jdk11u/blob/737d8437886ad97c6ed21a25b9911c10b3886f61/src/hotspot/share/runtime/safepoint.hpp#L80
> >
> > My guess would be it's SAFEPOINT_CLEANUP_STRING_TABLE_REHASH
> because tiered
> > compilation is disabled, ParallelGC is being used, and biased
> locking is
> > disabled; all of this is the same as on Java 8. Or might this
> be something
> > else? Presumably it's something "new" in Java 11 that triggers
> inside
> >
> https://github.com/openjdk/jdk11u/blob/737d8437886ad97c6ed21a25b9911c10b3886f61/src/hotspot/share/runtime/safepoint.cpp#L644
> >
> > Does anyone have ideas on pinpointing this further? How do I get the
> > precise cleanup operation to show up in the log?
> >
> > Thanks
>
More information about the hotspot-runtime-dev
mailing list