You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It turns out we generate a ton of code just copying and manipulating shared_ptr<DataType> throughput arrow/compute, and especially in the configuration of the function/kernels registry. One function RegisterScalarArithmetic generates around 300kb of code, which on looking at disassembly contains a significant amount of inlined shared_ptr template code. I made an attempt to refactoring things to use const DataType* for function signatures which removes quite a bit of code bloat, and puts us on a path to using fewer shared_ptr's in general
It turns out we generate a ton of code just copying and manipulating
shared_ptr<DataType>
throughput arrow/compute, and especially in the configuration of the function/kernels registry. One functionRegisterScalarArithmetic
generates around 300kb of code, which on looking at disassembly contains a significant amount of inlined shared_ptr template code. I made an attempt to refactoring things to useconst DataType*
for function signatures which removes quite a bit of code bloat, and puts us on a path to using fewer shared_ptr's in generalReporter: Wes McKinney / @wesm
Assignee: Wes McKinney / @wesm
PRs and other links:
Note: This issue was originally created as ARROW-17259. Please see the migration documentation for further details.
The text was updated successfully, but these errors were encountered: