On Wed, 23 Feb 2022 09:03:37 GMT, Jatin Bhateja <jbhat...@openjdk.org> wrote:
>> Summary of changes: >> - Intrinsify Math.round(float) and Math.round(double) APIs. >> - Extend auto-vectorizer to infer vector operations on encountering scalar >> IR nodes for above intrinsics. >> - Test creation using new IR testing framework. >> >> Following are the performance number of a JMH micro included with the patch >> >> Test System: Intel(R) Xeon(R) Platinum 8380 CPU @ 2.30GHz (Icelake Server) >> >> >> TESTSIZE | Baseline AVX3 (ops/ms) | Withopt AVX3 (ops/ms) | Gain ratio | >> Baseline AVX2 (ops/ms) | Withopt AVX2 (ops/ms) | Gain ratio >> -- | -- | -- | -- | -- | -- | -- >> 1024.00 | 510.41 | 1811.66 | 3.55 | 510.40 | 502.65 | 0.98 >> 2048.00 | 293.52 | 984.37 | 3.35 | 304.96 | 177.88 | 0.58 >> 1024.00 | 825.94 | 3387.64 | 4.10 | 750.77 | 1925.15 | 2.56 >> 2048.00 | 411.91 | 1942.87 | 4.72 | 412.22 | 1034.13 | 2.51 >> >> >> Kindly review and share your feedback. >> >> Best Regards, >> Jatin > > Jatin Bhateja has updated the pull request incrementally with one additional > commit since the last revision: > > 8279508: Review comments resolved. test/hotspot/jtreg/compiler/c2/cr6340864/TestDoubleVect.java line 441: > 439: errn += verify("test_round: ", 1, l0[1], Long.MAX_VALUE); > 440: errn += verify("test_round: ", 2, l0[2], Long.MIN_VALUE); > 441: errn += verify("test_round: ", 3, l0[3], Long.MAX_VALUE); Good to add additional test cases: Case with a1 value >= Long Max and < infinity. Case with a1 value <= Long Min and > -infinity. ------------- PR: https://git.openjdk.java.net/jdk/pull/7094