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 2020/05/25 15:02:00 UTC

[jira] [Assigned] (ARROW-4333) [C++] Sketch out design for kernels and "query" execution in compute layer

     [ https://issues.apache.org/jira/browse/ARROW-4333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Wes McKinney reassigned ARROW-4333:
-----------------------------------

    Assignee:     (was: Wes McKinney)

> [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)