Withdrawn: 8321008: RISC-V: C2 MulAddVS2VI

duke duke at openjdk.org
Wed Oct 2 22:49:43 UTC 2024


On Tue, 23 Apr 2024 15:02:10 GMT, Hamlin Li <mli at openjdk.org> wrote:

> Hi,
> Can you help to review the patch?
> 
> The motivation is to implement `MulAddVS2VI`.
> But to enable `MulAddVS2VI`, `MulAddS2I` is prerequisite, although `MulAddS2I` does not bring extra benefit on riscv as we don't have an specific instruction of muladd on riscv.
> So, this patch implement both `MulAddVS2VI` and `MulAddS2I`. 
> 
> 
> Thanks
> 
> ## Performance
> ### Summary
> #### MulAddS2I
> When +UseSuperWord
> * There is performance gain in MulAddS2I.testa/b/c.
> * There is performance regression in  in MulAddS2I.testd-testi.
> 
> When -UseSuperWord
> * There is performance regression in all tests.
> 
> #### VectorReduction
> There is no performance regression in VectorReduction
> 
> ### when +UseSuperWord
> data
> <google-sheets-html-origin style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;">
> Benchmark on bananapi, +UseSuperWord | (COUNT) | (COUNT_DOUBLE) | (COUNT_FLOAT) | (ITER) | (RANGE) | (seed) | Mode | Cnt | Score +intrinsic | Error | Units | Score -intrinsic | Improvement
> -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | --
> MulAddS2I.testa | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 65863.434 | 12082.469 | ns/op | 92576.189 | 1.406
> MulAddS2I.testb | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 74741.045 | 14608.942 | ns/op | 104428.457 | 1.397
> MulAddS2I.testc | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 42013.168 | 6029.504 | ns/op | 69380.849 | 1.651
> MulAddS2I.testd | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 99644.082 | 3078.374 | ns/op | 84316.883 | 0.846
> MulAddS2I.teste | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 98910.181 | 3170.046 | ns/op | 86023.681 | 0.87
> MulAddS2I.testf | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 101752.531 | 10994.494 | ns/op | 85473.52 | 0.84
> MulAddS2I.testg | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 99513.05 | 2919.032 | ns/op | 86680.144 | 0.871
> MulAddS2I.testh | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 100753.291 | 3449.613 | ns/op | 84424.63 | 0.838
> MulAddS2I.testi | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 100626.168 | 2924.72 | ns/op | 85477.079 | 0.849
> MulAddS2I.testj | N/A | N/A | N/A | 8191 | 16384 | 0 | avgt | 10 | 100990.584 | 3756.096 | ns/op | 87010.947 | 0.862
> MulAddS2I.testk | N/A | N/A | N/A | 8191...

This pull request has been closed without being integrated.

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

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


More information about the hotspot-compiler-dev mailing list