[
https://issues.apache.org/jira/browse/ARROW-4333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17123933#comment-17123933
]
Wes McKinney edited comment on ARROW-4333 at 6/2/20, 3:30 PM:
--------------------------------------------------------------
I'd suggest we resolve this and pursue answers to some of the unanswered
questions as more specific followups. In particular, I plan to be building
multi-kernel expression evaluation in the near future so some of the
pipelining/memory reuse questions must be addressed as a part of this
was (Author: wesmckinn):
I'd suggest we close this and pursue answers to some of the unanswered
questions as more specific followups. In particular, I plan to be building
multi-kernel expression evaluation in the near future so some of the
pipelining/memory reuse questions must be addressed as a part of this
> [C++] Sketch out design for kernels and "query" execution in compute layer
> --------------------------------------------------------------------------
>
> Key: ARROW-4333
> URL: https://issues.apache.org/jira/browse/ARROW-4333
> Project: Apache Arrow
> Issue Type: New Feature
> Components: C++
> Reporter: Micah Kornfield
> Priority: Major
> Labels: analytics
>
> It would be good to formalize the design of kernels and the controlling query
> execution layer (e.g. volcano batch model?) to understand the following:
> Contracts for kernels:
> * Thread safety of kernels?
> * When Kernels should allocate memory vs expect preallocated memory? How to
> communicate requirements for a kernels memory allocaiton?
> * How to communicate the whether a kernels execution is parallelizable
> across a ChunkedArray? How to determine if the order to execution across a
> ChunkedArray is important?
> * How to communicate when it is safe to re-use the same buffers and input
> and output to the same kernel?
> What does the threading model look like for the higher level of control?
> Where should synchronization happen?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)