Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
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
1.
|
[C++] Add a ThreadLocalState concept built on thread local |
|
Open | Unassigned |
|
|||||||
2.
|
[C++] Migrate existing usage of ThreadIndexer to ThreadLocalState and get rid of ThreadIndexer |
|
Open | Unassigned |