You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Wes McKinney (Jira)" <ji...@apache.org> on 2022/07/29 22:49:00 UTC

[jira] [Created] (ARROW-17259) [C++] Use shared_ptr less throughout arrow/compute

Wes McKinney created ARROW-17259:
------------------------------------

             Summary: [C++] Use shared_ptr<DataType> less throughout arrow/compute
                 Key: ARROW-17259
                 URL: https://issues.apache.org/jira/browse/ARROW-17259
             Project: Apache Arrow
          Issue Type: Improvement
          Components: C++
            Reporter: Wes McKinney
             Fix For: 10.0.0


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



--
This message was sent by Atlassian Jira
(v8.20.10#820010)