Skip to content

[C++][Compute] ScalarExecutor and VectorExecutor's can be improved by support more precise pre-allocation and more pre-allocated types #41974

@ZhangHuiGui

Description

@ZhangHuiGui

Describe the enhancement requested

Mainly for below improvement and codes simplification:

  1. NullGeneralization not support chunked-array's null status check which may prevent some optimization for preallocation.[1]
  2. ComputeDataPreallocate not support [Large]ListView's preallocate.[2]
  3. Some DCHECK and branch check for preallocate the validity-bitmaps are unnecessary.

[1] https://github.com/apache/arrow/blob/ad897bb843b06bb7d54c5913396ac54f736e4e7c/cpp/src/arrow/compute/exec.cc#L943C1-L951C58
[2]
https://github.com/apache/arrow/blob/ad897bb843b06bb7d54c5913396ac54f736e4e7c/cpp/src/arrow/compute/exec.cc#L286C1-L308C2

Component(s)

C++

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions