You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Chengxiang Li (JIRA)" <ji...@apache.org> on 2015/04/07 08:15:12 UTC

[jira] [Created] (HIVE-10235) Loop optimization for SIMD in ColumnDivideColumn.txt

Chengxiang Li created HIVE-10235:
------------------------------------

             Summary: Loop optimization for SIMD in ColumnDivideColumn.txt
                 Key: HIVE-10235
                 URL: https://issues.apache.org/jira/browse/HIVE-10235
             Project: Hive
          Issue Type: Sub-task
          Components: Vectorization
    Affects Versions: 1.1.0
            Reporter: Chengxiang Li
            Assignee: Chengxiang Li
            Priority: Minor


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.
{code:java}
for(int i = 0; i != n; i++) {
      <OperandType2> denom = vector2[i];
      outputVector[i] = vector1[0] <OperatorSymbol> denom;
      hasDivBy0 = hasDivBy0 || (denom == 0);
}
{code}
2. same as HIVE-10180, vector2\[0\] reference provent JVM optimizing loop into packed instruction set.
{code:java}
for(int i = 0; i != n; i++) {
      outputVector[i] = vector1[i] <OperatorSymbol> vector2[0];
}
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)