[jira] [Commented] (ARROW-8767) [C++] Make ThreadPool task ordering configurable
[ https://issues.apache.org/jira/browse/ARROW-8767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17105391#comment-17105391 ] David Li commented on ARROW-8767: - For I/O, it would also be useful to be able to assign a "weight" to a task (representing bandwidth or some other non-CPU resource) so a scheduler could spawn tasks based on that metric. (For instance, you may wish to allow more concurrent tasks when weights are small, or throttle a consumer that is consuming disproportionate resources.) > [C++] Make ThreadPool task ordering configurable > > > Key: ARROW-8767 > URL: https://issues.apache.org/jira/browse/ARROW-8767 > Project: Apache Arrow > Issue Type: Wish > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > We may want to choose a task ordering strategy when constructing a ThreadPool. > To make the ordering strategy configurable, we may want to externalize it in > a separate JobQueue class. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (ARROW-8767) [C++] Make ThreadPool task ordering configurable
[ https://issues.apache.org/jira/browse/ARROW-8767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17104623#comment-17104623 ] Wes McKinney commented on ARROW-8767: - I linked a couple of related issues. Whatever solution is devised should hopefully be able to accommodate the round-robin strategy and the fair-time-allocation strategy (wherein consumers' total CPU time is tracked and used to allocate CPU capacity to consumers which have not had their fair share) > [C++] Make ThreadPool task ordering configurable > > > Key: ARROW-8767 > URL: https://issues.apache.org/jira/browse/ARROW-8767 > Project: Apache Arrow > Issue Type: Wish > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > We may want to choose a task ordering strategy when constructing a ThreadPool. > To make the ordering strategy configurable, we may want to externalize it in > a separate JobQueue class. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (ARROW-8767) [C++] Make ThreadPool task ordering configurable
[ https://issues.apache.org/jira/browse/ARROW-8767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17104610#comment-17104610 ] Antoine Pitrou commented on ARROW-8767: --- cc [~fsaintjacques] Possible API: {code:cpp} struct TaskSpec { int64_t priority; }; class ThreadPool { public: Status Spawn(TaskSpec, ...); }; {code} > [C++] Make ThreadPool task ordering configurable > > > Key: ARROW-8767 > URL: https://issues.apache.org/jira/browse/ARROW-8767 > Project: Apache Arrow > Issue Type: Wish > Components: C++ >Reporter: Antoine Pitrou >Priority: Major > > We may want to choose a task ordering strategy when constructing a ThreadPool. > To make the ordering strategy configurable, we may want to externalize it in > a separate JobQueue class. -- This message was sent by Atlassian Jira (v8.3.4#803005)