< prev index next >

test/jdk/jdk/incubator/vector/templates/Perf-Scalar-Shift-Masked-op.template

Print this page
rev 55606 : 8221812: Fine-tune jmh test for vector api
Summary: To compare performance of vector api and auto vectorization, vector
api and scalar test cases are updated to keep aligned.
Reviewed-by: duke
   1 
   2     @Benchmark
   3     public Object [[TEST]][[TEST_TYPE]][[OP_NAME]]() {
   4         $type$[] as = fa.apply(size);
   5         $type$[] bs = fb.apply(size);
   6         $type$[] rs = fr.apply(size);
   7         boolean[] ms = fm.apply(size);
   8 

   9         for (int i = 0; i < as.length; i++) {
  10             $type$ a = as[i];
  11             $type$ b = bs[i];
  12             boolean m = ms[i % ms.length];
  13             rs[i] = (m ? ($type$)([[TEST_OP]]) : a);
  14         }

  15 
  16         return rs;
  17     }
   1 
   2     @Benchmark
   3     public void [[TEST]][[TEST_TYPE]][[OP_NAME]](Blackhole bh) {
   4         $type$[] as = fa.apply(size);
   5         $type$[] bs = fb.apply(size);
   6         $type$[] rs = fr.apply(size);
   7         boolean[] ms = fm.apply(size);
   8 
   9         for (int ic = 0; ic < INVOC_COUNT; ic++) {
  10             for (int i = 0; i < as.length; i++) {
  11                 $type$ a = as[i];
  12                 $type$ b = bs[i];
  13                 boolean m = ms[i % ms.length];
  14                 rs[i] = (m ? ($type$)([[TEST_OP]]) : a);
  15             }
  16         }
  17 
  18         bh.consume(rs);
  19     }
< prev index next >