RFR: 8344951: Stabilize write barrier micro-benchmarks [v3]
Thomas Schatzl
tschatzl at openjdk.org
Tue Dec 17 18:50:36 UTC 2024
On Tue, 17 Dec 2024 12:43:13 GMT, Roberto Castañeda Lozano <rcastanedalo at openjdk.org> wrote:
>> This changeset makes the `testArrayWriteBarrierFastPath*` micro-benchmarks in `WriteBarrier.java` more robust w.r.t. a few external factors, so that different GC barrier models can be compared more reliably. More specifically, it ensures that:
>>
>> - the main loop is never unrolled regardless of the selected GC algorithm,
>> - no spilling occurs within the main loop for the final C2 compilation, and
>> - the majority of the execution time is spent in the write operation and its associated barrier.
>>
>> The changes preserve the original G1 barrier test profile, i.e. practically no write crosses heap regions under the default G1 configuration. More sophisticated benchmarks may be added in the future that exercise different G1 barrier levels.
>>
>> Thanks to Thomas Schatzl for reporting and discussing issues in the micro-benchmarks.
>>
>> **Testing:** build and run the micro-benchmarks (linux-x64, linux-aarch64, windows-x64, macosx-x64, macosx-aarch64).
>
> Roberto Castañeda Lozano has updated the pull request incrementally with one additional commit since the last revision:
>
> Disable inlining again for better stability w.r.t. spilling
Marked as reviewed by tschatzl (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/22763#pullrequestreview-2509795740
More information about the hotspot-compiler-dev
mailing list