-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/33119/
-----------------------------------------------------------

Review request for hive and Gopal V.


Bugs: HIVE-10235
    https://issues.apache.org/jira/browse/HIVE-10235


Repository: hive


Description
-------

Found two loop which could be optimized for packed instruction set during 
execution.
1. hasDivBy0 depends on the result of last loop, which prevent the loop be 
executed vectorized.
for(int i = 0; i != n; i++) {
      <OperandType2> denom = vector2[i];
      outputVector[i] = vector1[0] <OperatorSymbol> denom;
      hasDivBy0 = hasDivBy0 || (denom == 0);
}
2. same as HIVE-10180, vector2[0] reference provent JVM optimizing loop into 
packed instruction set.
for(int i = 0; i != n; i++) {
      outputVector[i] = vector1[i] <OperatorSymbol> vector2[0];
}


Diffs
-----

  
trunk/itests/hive-jmh/src/main/java/org/apache/hive/benchmark/vectorization/VectorizationBench.java
 1673092 
  trunk/ql/src/gen/vectorization/ExpressionTemplates/ColumnDivideColumn.txt 
1673092 

Diff: https://reviews.apache.org/r/33119/diff/


Testing
-------


Thanks,

chengxiang li

Reply via email to