[
https://issues.apache.org/jira/browse/ARROW-16177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522517#comment-17522517
]
Weston Pace commented on ARROW-16177:
-------------------------------------
Benchmarks sound like a good idea. I'll throw some together and measure the
map impl as well.
> [C++] Replace ThreadIndexer with a more performant thread-local implementation
> ------------------------------------------------------------------------------
>
> Key: ARROW-16177
> URL: https://issues.apache.org/jira/browse/ARROW-16177
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Reporter: Weston Pace
> Priority: Major
>
> 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.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)