On Wed, 21 Aug 2024 16:49:40 GMT, Jatin Bhateja <jbhat...@openjdk.org> wrote:
>> Jatin Bhateja has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Pass explicit wrap argument to selectFrom API with default value set to >> true. > > Hi @rose00 , @sviswa7 , @PaulSandoz , > As suggested, now passing explicit 'wrap' argument to new selectFrom API. > > Following are the performance number of modified JMH micro included with the > patch. > > > > Baseline:- > Benchmark (size) Mode Cnt Score > Error Units > SelectFromBenchmark.rearrangeFromByteVector 4096 thrpt 2 5849.771 > ops/ms > SelectFromBenchmark.rearrangeFromDoubleVector 4096 thrpt 2 430.712 > ops/ms > SelectFromBenchmark.rearrangeFromFloatVector 4096 thrpt 2 942.737 > ops/ms > SelectFromBenchmark.rearrangeFromIntVector 4096 thrpt 2 1057.695 > ops/ms > SelectFromBenchmark.rearrangeFromLongVector 4096 thrpt 2 616.360 > ops/ms > SelectFromBenchmark.rearrangeFromShortVector 4096 thrpt 2 2146.465 > ops/ms > > With Patch:- > Benchmark (size) Mode Cnt Score > Error Units > SelectFromBenchmark.selectFromByteVector 4096 thrpt 2 9543.775 > ops/ms > SelectFromBenchmark.selectFromDoubleVector 4096 thrpt 2 558.195 > ops/ms > SelectFromBenchmark.selectFromFloatVector 4096 thrpt 2 1325.059 > ops/ms > SelectFromBenchmark.selectFromIntVector 4096 thrpt 2 1418.748 > ops/ms > SelectFromBenchmark.selectFromLongVector 4096 thrpt 2 687.231 > ops/ms > SelectFromBenchmark.selectFromShortVector 4096 thrpt 2 4782.395 > ops/ms > > > With WIP wrap index acceleration PR#20634: > Benchmark (size) Mode Cnt Score > Error Units > SelectFromBenchmark.rearrangeFromByteVector 4096 thrpt 2 7602.645 > ops/ms > SelectFromBenchmark.rearrangeFromDoubleVector 4096 thrpt 2 441.684 > ops/ms > SelectFromBenchmark.rearrangeFromFloatVector 4096 thrpt 2 926.112 > ops/ms > SelectFromBenchmark.rearrangeFromIntVector 4096 thrpt 2 1061.695 > ops/ms > SelectFromBenchmark.rearrangeFromLongVector 4096 thrpt 2 644.058 > ops/ms > SelectFromBenchmark.rearrangeFromShortVector 4096 thrpt 2 2777.735 > ops/ms @jatin-bhateja Thanks, the PR ((https://github.com/openjdk/jdk/pull/20634) is still work in progress and can be simplified much further. The changes I am currently working on are do wrap by default for rearrange and selectFrom as suggested by John and Paul, no additional api with boolean wrap as parameter, and no changes to shuffle constructors. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20508#issuecomment-2302641840