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

Loop optimization for SIMD in integer comparisons

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 2.0.0
    • Vectorization
    • None

    Description

      Long*CompareLong* classes can be optimized with subtraction and bitwise operators for better SIMD optimization.

      for(int i = 0; i != n; i++) {
        outputVector[i] = vector1[0] > vector2[i] ? 1 : 0;
      }
      

      This issue will cover following classes;

      • LongColEqualLongColumn
      • LongColNotEqualLongColumn
      • LongColGreaterLongColumn
      • LongColGreaterEqualLongColumn
      • LongColLessLongColumn
      • LongColLessEqualLongColumn
      • LongScalarEqualLongColumn
      • LongScalarNotEqualLongColumn
      • LongScalarGreaterLongColumn
      • LongScalarGreaterEqualLongColumn
      • LongScalarLessLongColumn
      • LongScalarLessEqualLongColumn
      • LongColEqualLongScalar
      • LongColNotEqualLongScalar
      • LongColGreaterLongScalar
      • LongColGreaterEqualLongScalar
      • LongColLessLongScalar
      • LongColLessEqualLongScalar

      Attachments

        1. HIVE-11533.1.patch
          120 kB
          Teddy Choi
        2. HIVE-11533.2.patch
          120 kB
          Teddy Choi
        3. HIVE-11533.3.patch
          124 kB
          Teddy Choi
        4. HIVE-11533.4.patch
          124 kB
          Teddy Choi
        5. HIVE-11533.5.patch
          123 kB
          Teddy Choi

        Activity

          People

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

            Dates

              Created:
              Updated:
              Resolved: