RFR: 8265842: G1: Introduce API to run multiple separate tasks in a single gangtask [v3]

Thomas Schatzl tschatzl at openjdk.java.net
Mon Apr 26 11:43:56 UTC 2021


> [JDK-8214237](https://bugs.openjdk.java.net/browse/JDK-8214237) is going to join different somewhat independent (sub-)tasks of the post evacuation phase into basically two gangtasks to improve performance (reduce startup and shutdown of work gangs).
> 
> To facilitate doing that, introduce an API that manages subtasks of a given gangtask and provide some helpers to do common work.
> 
> This CR is only about adding the API and testing to somewhat simplify the actual move of the post evacuate tasks into parallel tasks. There is no new functionality here, only to split up [JDK-8214237](https://bugs.openjdk.java.net/browse/JDK-8214237) a bit.
> 
> [Here](https://github.com/openjdk/jdk/compare/master...tschatzl:parallel-phases-join-everything) is the full change that uses this API to implement JDK-8214237 (which I'll try to split up a bit before) to see how it will be used (in [G1YoungGCPostEvacuateTasks.hpp](https://github.com/openjdk/jdk/commit/1d8667143e7d106b96c25c0b876c37f1250be132#diff-64bc43a24e11978920bb9523cb1507a7275ace22d9eead4c34177339a3258e42) ).
> 
> Testing: new gtest, tier1-5 with mentioned patch for JDK-8214237.
> 
> Thanks,
> Thomas

Thomas Schatzl has updated the pull request incrementally with one additional commit since the last revision:

  iwalulya: change to fetch_and_add()

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3653/files
  - new: https://git.openjdk.java.net/jdk/pull/3653/files/f00f1021..712b0c6f

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3653&range=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3653&range=01-02

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3653.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3653/head:pull/3653

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



More information about the hotspot-gc-dev mailing list