Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-10179 Optimization for SIMD instructions in Hive
  3. HIVE-11529

Loop optimization for SIMD in IfExprLong*Long*

    XMLWordPrintableJSON

    Details

    • Type: Sub-task
    • Status: Patch Available
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Vectorization
    • Labels:
      None

      Description

      HIVE-10238 showed that ?: operator can be optimized with bitwise operators when it only handles LongColumnVectors. There are more similar cases as following.

      IfExprLongColumnLongScalar:

      outputVector[i] = (vector1[i] == 1 ? vector2[i] : arg3Scalar);

      IfExprLongScalarLongColumn:

      outputVector[i] = (vector1[i] == 1 ? arg2Scalar : vector3[i]);

      IfExprLongScalarLongScalar:

      outputVector[i] = (vector1[i] == 1 ? arg2Scalar : arg3Scalar);

        Attachments

        1. HIVE-11529.patch
          28 kB
          Teddy Choi
        2. HIVE-11529.2.patch
          28 kB
          Teddy Choi
        3. HIVE-11529.3.patch
          28 kB
          Teddy Choi
        4. HIVE-11529.4.patch
          29 kB
          Teddy Choi
        5. HIVE-11529.5.patch
          51 kB
          Teddy Choi
        6. HIVE-11529.6.patch
          51 kB
          Teddy Choi

          Issue Links

            Activity

              People

              • Assignee:
                teddy.choi Teddy Choi
                Reporter:
                teddy.choi Teddy Choi
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: