Integrated: 8342393: Promote commutative vector IR node sharing
Jatin Bhateja
jbhateja at openjdk.org
Mon Feb 24 07:43:11 UTC 2025
On Mon, 23 Dec 2024 11:28:46 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:
> Patch promotes the sharing of commutative vector IR with the same inputs but different input ordering.
> Similar to scalar IR where we perform edge swapping by [sorting inputs](https://github.com/openjdk/jdk/blob/master/src/hotspot/share/opto/addnode.cpp#L122) based on node indices during IR idealization.
>
> Following are the performance stats for JMH micro included with the patch.
>
>
> Granite Rapids (P-core Xeon Server)
> Baseline :
> Benchmark (size) Mode Cnt Score Error Units
> VectorCommutativeOperSharingBenchmark.commutativeByteOperationShairing 1024 thrpt 2 8982.549 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeIntOperationShairing 1024 thrpt 2 6072.773 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeLongOperationShairing 1024 thrpt 2 2368.856 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeShortOperationShairing 1024 thrpt 2 15215.087 ops/ms
>
> Withopt:
> Benchmark (size) Mode Cnt Score Error Units
> VectorCommutativeOperSharingBenchmark.commutativeByteOperationShairing 1024 thrpt 2 11963.554 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeIntOperationShairing 1024 thrpt 2 7036.088 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeLongOperationShairing 1024 thrpt 2 2906.731 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeShortOperationShairing 1024 thrpt 2 17148.131 ops/ms
>
> Sierra Forest (E-core Xeon Server)
> Baseline:
> Benchmark (size) Mode Cnt Score Error Units
> VectorCommutativeOperSharingBenchmark.commutativeByteOperationShairing 1024 thrpt 2 2444.359 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeIntOperationShairing 1024 thrpt 2 1710.256 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeLongOperationShairing 1024 thrpt 2 308.766 ops/ms
> VectorCommutativeOperSharingBenchmark.commutativeShortOperationShairing 1024 thrpt 2 3902.179 ops/ms
>
> Withopt:
> Benchmark (size) Mode Cnt Score Error Units
> VectorCommutativeOperSharingBenchmark.commutativeByteOperationShairing 1024 thrpt 2 3352.839 ...
This pull request has now been integrated.
Changeset: e410af00
Author: Jatin Bhateja <jbhateja at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/e410af00e69587b86536b298b869ddc898fd9862
Stats: 789 lines in 4 files changed: 788 ins; 0 del; 1 mod
8342393: Promote commutative vector IR node sharing
Reviewed-by: vlivanov, epeter, sviswanathan
-------------
PR: https://git.openjdk.org/jdk/pull/22863
More information about the hotspot-compiler-dev
mailing list