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

    • Sub-task
    • Status: Patch Available
    • Minor
    • Resolution: Unresolved
    • None
    • None
    • Vectorization
    • 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.2.patch
          28 kB
          Teddy Choi
        2. HIVE-11529.3.patch
          28 kB
          Teddy Choi
        3. HIVE-11529.4.patch
          29 kB
          Teddy Choi
        4. HIVE-11529.5.patch
          51 kB
          Teddy Choi
        5. HIVE-11529.6.patch
          51 kB
          Teddy Choi
        6. HIVE-11529.patch
          28 kB
          Teddy Choi

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated: