RFR: 8278146: G1: Rework VM_G1Concurrent VMOp to clearly identify it as pause [v2]

Thomas Schatzl tschatzl at openjdk.java.net
Tue Dec 7 12:04:17 UTC 2021


On Mon, 6 Dec 2021 17:31:39 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> Our support engineers asked this:
>> 
>>> I see these G1Concurrent safepoints in JDK17:
>>> [0.064s][info][safepoint ] Safepoint "G1Concurrent", Time since last: 1666947 ns, Reaching
>> safepoint: 79150 ns, At safepoint: 349999 ns, Total: 429149 ns
>>> I've always thought that "concurrent" and "safepoint" are basically antonyms.
>>> What is a G1Concurrent safepoint? How can a concurrent event require a safepoint?
>> 
>> I agree that's confusing. This patch splits the VM_G1Concurrent into two exactly named VMOp-s, so that we get:
>> 
>> 
>> [6.527s][info][gc       ] GC(7) Pause Remark 64M->64M(224M) 218.847ms
>> [6.527s][info][safepoint] Safepoint "G1PauseRemark", Time since last: 17493991 ns, Reaching safepoint: 506830 ns, At safepoint: 218950374 ns, Total: 219457204 ns
>> [6.536s][info][gc       ] GC(7) Pause Cleanup 71M->71M(224M) 0.177ms
>> [6.536s][info][safepoint] Safepoint "G1PauseCleanup", Time since last: 8250157 ns, Reaching safepoint: 884967 ns, At safepoint: 223964 ns, Total: 1108931 ns
>> [6.537s][info][gc       ] GC(7) Concurrent Mark Cycle 247.051ms
>> 
>> 
>> Additional testing:
>>  - [x] Linux x86_64 fastdebug `tier1`
>
> Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four additional commits since the last revision:
> 
>  - Review Thomas
>  - Merge branch 'master' into JDK-8278146-g1-concurrent-vmop
>  - Whitespace and touchups
>  - Basic implementation

Lgtm.

-------------

Marked as reviewed by tschatzl (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/6677


More information about the hotspot-dev mailing list