git: openjdk/mobile: 8230706: Waiting on completion of strong nmethod processing causes long pause times with G1
duke
duke at openjdk.java.net
Thu Oct 24 09:12:28 UTC 2019
Changeset: 5a21a8c4
Author: Thomas Schatzl <tschatzl at openjdk.org>
Date: 2019-10-24 11:08:16 +0000
URL: https://git.openjdk.java.net/mobile/commit/5a21a8c4
8230706: Waiting on completion of strong nmethod processing causes long pause times with G1
Instead of globally waiting for completion of strong nmethod processing during evacuation, synchronize the nmethods processing on a per-nmethod basis so that only one thread processes one nmethod at once using a state. This state indicates what work (strong/weak processing) needs to be done and what has already been done.
Reviewed-by: sjohanss, kbarrett
! src/hotspot/share/code/nmethod.cpp
! src/hotspot/share/code/nmethod.hpp
! src/hotspot/share/gc/g1/g1CodeBlobClosure.cpp
! src/hotspot/share/gc/g1/g1CodeBlobClosure.hpp
! src/hotspot/share/gc/g1/g1FullCollector.cpp
! src/hotspot/share/gc/g1/g1GCPhaseTimes.cpp
! src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp
! src/hotspot/share/gc/g1/g1RootClosures.cpp
! src/hotspot/share/gc/g1/g1RootClosures.hpp
! src/hotspot/share/gc/g1/g1RootProcessor.cpp
! src/hotspot/share/gc/g1/g1RootProcessor.hpp
! src/hotspot/share/gc/g1/g1SharedClosures.hpp
! src/hotspot/share/gc/z/zRootsIterator.cpp
! src/hotspot/share/memory/iterator.cpp
! test/hotspot/jtreg/gc/g1/TestGCLogMessages.java
! test/jdk/jdk/jfr/event/gc/collection/TestG1ParallelPhases.java
More information about the mobile-changes
mailing list