Re: [PATCH RFC v3 0/14] sched,fair: flatten CPU controller runqueues

2019-07-30 Thread Rik van Riel
On Tue, 2019-07-30 at 18:29 +0200, Peter Zijlstra wrote: > On Mon, Jul 22, 2019 at 01:33:34PM -0400, Rik van Riel wrote: > > Plan for the CONFIG_CFS_BANDWIDTH reimplementation: > > - When a cgroup gets throttled, mark the cgroup and its children > > as throttled. > > - When pick_next_entity finds

Re: [PATCH RFC v3 0/14] sched,fair: flatten CPU controller runqueues

2019-07-30 Thread Peter Zijlstra
On Mon, Jul 22, 2019 at 01:33:34PM -0400, Rik van Riel wrote: > Plan for the CONFIG_CFS_BANDWIDTH reimplementation: > - When a cgroup gets throttled, mark the cgroup and its children > as throttled. > - When pick_next_entity finds a task that is on a throttled cgroup, > stash it on the cgroup r

[PATCH RFC v3 0/14] sched,fair: flatten CPU controller runqueues

2019-07-22 Thread Rik van Riel
The current implementation of the CPU controller uses hierarchical runqueues, where on wakeup a task is enqueued on its group's runqueue, the group is enqueued on the runqueue of the group above it, etc. This increases a fairly large amount of overhead for workloads that do a lot of wakeups a seco