RFR: 8315219: G1: Improve allocator pathological case where it keeps doing direct allocations instead of retiring a PLAB [v3]
Ivan Walulya
iwalulya at openjdk.org
Wed Aug 30 10:50:43 UTC 2023
> Hi all,
>
> Please review this change to improve on how G1 deals with ParallelGCBufferWastePct. Currently, any allocations larger than ParallelGCBufferWastePct of the current PLAB size are allocated directly without regard for the state of the current PLAB. This creates a pathological case where fully used up PLAB are not retired given that allocation sizes larger than ParallelGCBufferWastePct current PLAB.
>
> In this change, we directly check whether the current PLAB can be retired i.e. the remaining PLAB space is < ParallelGCBufferWastePct of current PLAB size. This should reduce the number of direct allocations.
>
> Testing: - mach5 Tier 1-6
> - No regression was observed on perf benchmarks
Ivan Walulya has updated the pull request incrementally with one additional commit since the last revision:
Albert Review
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/15482/files
- new: https://git.openjdk.org/jdk/pull/15482/files/9dd2572e..2524c686
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=15482&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=15482&range=01-02
Stats: 9 lines in 1 file changed: 4 ins; 5 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/15482.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15482/head:pull/15482
PR: https://git.openjdk.org/jdk/pull/15482
More information about the hotspot-gc-dev
mailing list