RFR: 8365926: RISC-V: Performance regression in renaissance (chi-square) [v2]
Robbin Ehn
rehn at openjdk.org
Tue Sep 2 19:31:45 UTC 2025
On Mon, 1 Sep 2025 10:10:31 GMT, Hamlin Li <mli at openjdk.org> wrote:
>> Robbin Ehn 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:
>>
>> - Merge branch 'master' into 8365926
>> - Spelling
>> - Merge branch 'master' into 8365926
>> - draft jal<->jalr
>
> JDK-23 (last version with trampoline calls)
> Mean: 3189.5827
> Standard Deviation: 284.6478
>
> JDK-25
> Mean: 3424.8905
> Standard Deviation: 222.2208
>
> Patch:
> Mean: 3144.8535
> Standard Deviation: 229.2577
>
>
> For the performance data, do you have some data for applying this fix on top of the next commit after`JDK-23 (last version with trampoline calls)`? I think this data might be more helpful to understand the performance comparison between old trampoline, stub and this pr.
@Hamlin-Li
This is the first version which hade the new auipc+ld+jalr, i.e. we could toogle with UseTrampolines.
I backported optimize_call to it. This version is still using t0/x5 for calls, thus return predictions are all messed up.
An even better comparison would be to also back-port use t1/x6 for calls.
Anyways here are the numbers, from 400 benchmarks runs each using the last iteration:
Using trampolines:
##############
--- Statistical Analysis ---
Average (Mean): 3610.00
Median: 3645.09
Standard Deviation: 297.11
--------------------------
Using load calls:
##############
--- Statistical Analysis ---
Average (Mean): 3691.09
Median: 3793.11
Standard Deviation: 403.80
--------------------------
-------------
PR Comment: https://git.openjdk.org/jdk/pull/26944#issuecomment-3246536967
More information about the hotspot-compiler-dev
mailing list