RFR: 8224661: Parallel GC: Use WorkGang (3: UpdateDensePrefixAndCompactionTask)
Thomas Schatzl
thomas.schatzl at oracle.com
Sun Jul 28 17:29:55 UTC 2019
Hi,
http://cr.openjdk.java.net/~lkorinth/workgang/1/_8224661-Parallel-GC-Use-WorkGang-3-UpdateDensePrefixAndCompactionTask-fixup-2 looks good.
Thanks,
Thomas
----- Original Message -----
From: leo.korinth at oracle.com
To: kim.barrett at oracle.com
Cc: hotspot-gc-dev at openjdk.java.net
Sent: Wednesday, July 3, 2019 4:47:21 AM GMT -08:00 US/Canada Pacific
Subject: Re: RFR: 8224661: Parallel GC: Use WorkGang (3: UpdateDensePrefixAndCompactionTask)
On 03/07/2019 01:55, Kim Barrett wrote:
>> On May 27, 2019, at 4:21 AM, Leo Korinth <leo.korinth at oracle.com> wrote:
>> […]
>> 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
>
> http://cr.openjdk.java.net/~lkorinth/workgang/1/_8224661-Parallel-GC-Use-WorkGang-3-UpdateDensePrefixAndCompactionTask/
> http://cr.openjdk.java.net/~lkorinth/workgang/1/_8224661-Parallel-GC-Use-WorkGang-3-UpdateDensePrefixAndCompactionTask-fixup-1/
>
> Looks good.
>
> A few minor comments.
>
> ------------------------------------------------------------------------------
> src/hotspot/share/gc/parallel/psParallelCompact.hpp
> 33 #include "gc/shared/taskqueue.hpp"
>
> I don't see any changes to this file that need this #include.
> Presumably it's needed by some .cpp files, but they should be doing
> the #include.
Old artifact from older version where I used the shared task queue,
thanks for finding this, I will remove it as it is not needed.
> ------------------------------------------------------------------------------
> src/hotspot/share/gc/parallel/psParallelCompact.cpp
> 2467 guarantee(_backing_array != NULL, "alloc failure");
>
> Not needed; NEW_C_HEAP_ARRAY uses EXIT_OOM for the allocation failure
> mode.
Good catch, copied from other code that did it, will fix.
I have (also) created https://bugs.openjdk.java.net/browse/JDK-8227168
to remove the source from where I got it. And fix some related problems.
> ------------------------------------------------------------------------------
> src/hotspot/share/gc/parallel/psParallelCompact.cpp
> 2618 static void compaction_with_stealing_task(ParallelTaskTerminator* terminator, uint which) {
>
> s/which/worker_id/
will fix.
>
> ------------------------------------------------------------------------------
> src/hotspot/share/gc/parallel/psParallelCompact.cpp
> 2684 TaskQueue task_queue(last_space_id*(active_gc_threads * PAR_OLD_DENSE_PREFIX_OVER_PARTITIONING + 1));
>
> Some breadcrumbs to explain that calculation would be really helpful.
> Maybe comments, or splitting up the calculation with helpful variable
> names, or something.
will add some comment.
>
> Anyway, I think it's correct, but harder to verify than it could be.
>
> ------------------------------------------------------------------------------
>
Thanks,
Leo
More information about the hotspot-gc-dev
mailing list