Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-16177

[C++] Replace ThreadIndexer with a more performant thread-local implementation

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • C++
    • None

    Description

      Many of the ExecNode operations use thread local state (mostly temporary buffers) to avoid per-batch allocation. Currently we are using ThreadIndexer but to get the thread local state requires locking a mutex and a map lookup. For some of the critical sections we are developing in hash-join this has become a bottleneck. Ideally we can replace this with something that relies on thread local state instead of a map shared across all threads.

      Attachments

        Activity

          People

            Unassigned Unassigned
            westonpace Weston Pace
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:

              Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0h
                0h
                Logged:
                Time Spent - 0.5h
                0.5h