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/04/29 16:09:00 UTC

[jira] [Comment Edited] (ARROW-8626) [C++] Implement "round robin" scheduler interface to fixed-size ThreadPool

    [ https://issues.apache.org/jira/browse/ARROW-8626?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17095585#comment-17095585 ] 

Wes McKinney edited comment on ARROW-8626 at 4/29/20, 4:08 PM:
---------------------------------------------------------------

This work should also be able to give way to other kinds of fairer resource allocation schemes. For example, round robin is bad when you have two consumers whose tasks are greatly unequal in cost. Imagine CPU tasks that take 1000x as long for one consumer as the other -- then eventually the first (costly per-task) consumer is running on all threads and the second (less-costly per task) consumer is waiting


was (Author: wesmckinn):
This work should also be able to give way to other kinds of fairer resource allocation schemes

> [C++] Implement "round robin" scheduler interface to fixed-size ThreadPool 
> ---------------------------------------------------------------------------
>
>                 Key: ARROW-8626
>                 URL: https://issues.apache.org/jira/browse/ARROW-8626
>             Project: Apache Arrow
>          Issue Type: New Feature
>          Components: C++
>            Reporter: Wes McKinney
>            Priority: Major
>             Fix For: 1.0.0
>
>
> Currently, when submitting tasks to a thread pool, they are all commingled in a common queue. When a new task submitter shows up, they must wait in the back of the line behind all other queued tasks.
> A simple alternative to this would be round-robin scheduling, where each new consumer is assigned a unique integer id, and the schedule / thread pool internally maintains the tasks associated with the consumer in separate queues. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)