Integrated: 8298189: Regression in SPECjvm2008-MonteCarlo for pre-Cascade Lake Intel processors

Roberto Castañeda Lozano rcastanedalo at openjdk.org
Wed Apr 26 08:41:55 UTC 2023


On Mon, 24 Apr 2023 06:05:21 GMT, Roberto Castañeda Lozano <rcastanedalo at openjdk.org> wrote:

> The `mov + inc/dec -> lea` subset of the peephole rules introduced by [JDK-8283699](https://bugs.openjdk.org/browse/JDK-8283699) has been found to cause minor regressions for some common benchmarks on Intel microarchitectures earlier than Cascade Lake. This changeset limits their application to Intel Cascade Lake and microarchitectures with full ALU support for lea (`VM_Version::supports_fast_3op_lea()`), where these peephole rules have been confirmed to be beneficial. The adjustment speeds up SPECjvm2008's MonteCarlo benchmark by between 0.1% and 2.7% on pre-Cascade Lake microarchitectures (Haswell-DT, Coffee Lake-B) across different garbage collectors (G1, ZGC). It additionally yields a speedup of 2.1% on SPECjvm2008's Derby benchmark when using G1 on Coffee Lake-B.
> 
> Thanks to @ericcaspole for discussions and helping out with benchmarking.
> 
> #### Testing
> 
> ##### Functionality
> 
> - tier1-5 (windows-x64, linux-x64, macosx-x64; release and debug mode).
> - Checked that the expected combination of peephole rules is enabled for all microarchitectures supported by Intel's Software Development Emulator 9.0.
> 
> ##### Performance
> 
> - Tested performance on a set of standard benchmark suites (DaCapo, SPECjbb2015, SPECjvm2008), different Intel microarchitectures (Haswell-DT, Coffee Lake-B, Cascade Lake, Ice Lake-SP) and operating systems (linux-x64, windows-x64, and macosx-x64). No significant change was observed besides the improvements mentioned above.

This pull request has now been integrated.

Changeset: 8d899925
Author:    Roberto Castañeda Lozano <rcastanedalo at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/8d899925dc281c5dabbef14d85a6df807f8d300e
Stats:     23 lines in 3 files changed: 17 ins; 1 del; 5 mod

8298189: Regression in SPECjvm2008-MonteCarlo for pre-Cascade Lake Intel processors

Co-authored-by: Quan Anh Mai <qamai at openjdk.org>
Reviewed-by: shade, thartmann, kvn

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

PR: https://git.openjdk.org/jdk/pull/13605


More information about the hotspot-compiler-dev mailing list