RFR: 8224661: Parallel GC: Use WorkGang (3: UpdateDensePrefixAndCompactionTask)

Leo Korinth leo.korinth at oracle.com
Mon May 27 08:21:39 UTC 2019


Hi,

Here is the third patch in a proposed patch series of eight that
removes gcTaskManager and uses the WorkGang abstraction instead. I
will try to put these mails in the same mail thread.

This patch converts the last old tasks in pcTasks.?pp. The old code
divides the workload into sub tasks by over partitioning the
workload. I do not want to change this scheme so I created a simple
TaskQueue in the compaction manager so that we can use the
more-tasks-than-threads behaviour of the old code (lock free this
time). The new queue is populated with a new UpdateDensePrefixTask
holding three values and no behaviour. Otherwise I mostly moved the
code in pcTask.cpp to psParallelCompact.cpp and converted it to a gang
task.

Enhancement:
   https://bugs.openjdk.java.net/browse/JDK-8224661

Webrev:
 
http://cr.openjdk.java.net/~lkorinth/workgang/0/_8224661-Parallel-GC-Use-WorkGang-3-UpdateDensePrefixAndCompactionTask/
   http://cr.openjdk.java.net/~lkorinth/workgang/0/all/

Testing (on the whole patch series):
   mach5 remote-build-and-test --build-profiles 
linux-x64,linux-x64-debug,macosx-x64,solaris-sparcv9,windows-x64 --test 
open/test/hotspot/jtreg/:hotspot_gc -a -XX:+UseParallelGC
   gc test suite

Thanks,
Leo



More information about the hotspot-gc-dev mailing list