Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-2853

Optimize IN predicates with small lists of primitives

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: perf, tserver
    • Labels:
      None

      Description

      We currently use std::binary_search for evaluating predicates. For IN list over primitives, it's more efficient to avoid branches and instead do linear search. Linear search can also be unrolled and implemented with SIMD comparisons. I would guess we can get a 4x or more perf improvement for relatively common cases like IN lists containing <10 elements.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              tlipcon Todd Lipcon
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: