RFR: 8365926: RISC-V: Performance regression in renaissance (chi-square) [v5]

Robbin Ehn rehn at openjdk.org
Fri Sep 12 08:45:39 UTC 2025


On Thu, 11 Sep 2025 09:01:23 GMT, Hamlin Li <mli at openjdk.org> wrote:

>> Hamlin had some offline Q so I gather this data for him:
>> 
>> Benchmark Results, doing 20 iteration and 20 runs of each benchmarks for both options:
>> (using P550 where I saw the largest regression)
>> 
>> Base: JDK24* +UseTrampoline
>> JAL OPT: JDK24* -UseTrampoline + JAL OPT
>> 
>> Values are in ms, lower is better.
>> 
>> 
>> +-----------------+--------------+--------------+----------------+----------------+--------------+------------------+-------------+----------------+------------------+--------------------+
>> | Benchmark       | Mean (Base)  | SD (Base)    | Fastest (Base) | Mean (JAL OPT) | SD (JAL OPT) | Fastest (JAL OPT)| Diff Mean   | Diff Fastest   | Mean Diff Ratio  | Fastest Diff Ratio |
>> +-----------------+--------------+--------------+----------------+----------------+--------------+------------------+-------------+----------------+------------------+--------------------+
>> | future-genetic  | 8317.8449    | 925.0775     | 7824.59        | 8421.137       | 1870.3916    | 7955.19          | 103.2922    | 130.6          | 1.012418145      | 1.01669097         |
>> | akka-uct        | 54775.8037   | 5220.7361    | 49614.46       | 54149.9939     | 4730.3662    | 48736.7          | -625.8097   | -877.76        | 0.9885750686     | 0.9823083835       |
>> | movie-lens      | 44859.3268   | 107.8713     | 38160.64       | 43043.6965     | 7932.6525    | 36807.2          | -1815.6295  | -1353.44       | 0.9595261529     | 0.9645330896       |
>> | scala-doku      | 10792.4933   | 3004.9348    | 970.34         | 10739.0164     | 2692.6155    | 9226.94          | -53.4766    | 256.59         | 0.9950450188     | 1.028605382        |
>> | chi-square      | 4740.1812    | 3552.9489    | 2579.09        | 4749.0893      | 3484.3178    | 2498.04          | 8.9081      | -81.05         | 1.001879274      | 0.968574187        |
>> | fj-kmeans       | 18597.656    | 2481.4036    | 17994.43       | 18588.154      | 4458.6089    | 18019.15         | -9.5018     | 24.72          | 0.9994890862     | 1.001373758        |
>> | db-shootout     | 26529.8048   | 3163.9087    | 21270.43       | 25101.5681     | 2483.0698    | 21419.11         | -1428.2367  | 148.67         | 0.9461648244     | 1.006989986        |
>> | finagle-http    | 20646.1713   | 1635.9154    | 14898.97       | 20250.4966     | 1046.1738    | 14735.66         | -395.6747   | -163.31        | 0.9808354443     | 0.9890388396       |
>> | reactors        | 52051.8872   | 2023.7865    | 49188.65       | 51625.9...
>
>> Hamlin had some offline Q so I gather this data for him:
> 
> Thanks Robbin for collecting the data!
> 
>> So on average using auipc+ld+jalr + JAL opt is 1.73% faster than the old trampolines.
> 
> This looks great!

@Hamlin-Li @RealFYang 

I broke release builds:
src/hotspot/cpu/riscv/nativeInst_riscv.cpp is missing this include runtime/atomic.hpp
https://bugs.openjdk.org/browse/JDK-8367498

If you can you fix that for me (away for an hour) I would very much be thankfull!

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

PR Comment: https://git.openjdk.org/jdk/pull/26944#issuecomment-3284331961


More information about the hotspot-compiler-dev mailing list