Re: [PATCH v3 7/7] sched/eevdf: Move to a single runqueue
From: Vincent Guittot
Date: Wed Oct 21 2026 - 08:14:04 EST
On Mon, 19 Oct 2026 at 20:26, Vincent Guittot
<vincent.guittot@xxxxxxxxxx> wrote:
>
> On Mon, 19 Oct 2026 at 20:24, Jakub Okoński <jakub@xxxxxxxxxxx> wrote:
> >
> > On 10/19/26 20:04, Vincent Guittot wrote:
> > > On Mon, 19 Oct 2026 at 19:36, Jakub Okoński <jakub@xxxxxxxxxxx> wrote:
> > >>
> > >> top of 7.3.0, it still regresses from 7.2.9 if you test with a nice 19
> > >> spinner in the same cgroup. I think it's incomplete.
> > >
> > > This patch only aims to fix the sched_idle task group case. I will
> > > have a closer look at the nice 19 case. Have you checked the different
> > > cgroup_mode with nice 19 ?
> > >
> > > Vincent
> >
> > Same result in my nice 19 test for all of up/smp/concur/max/tasks.
>
> Okay
> Thanks for the tests results
I ran more tests on 7.2.9 and 7.3. I confirm that there is a
difference between 7.2.9 and 7.3. With flat hierarchy, we change the
weight used to compute vruntime, deadline and vlag. The positive vlag
elapses differently with the flat hierarchy and slice protection
becomes more active. I used rt-app for the short task that wakes up
periodically in my test
- v7.2.9
Metric | Value (us)
-----------------------------------
Total Samples | 16983
Total outlier | 17
Average | 54
Median (P50) | 53
90th Percentile | 53
99th Percentile | 54
99.9th Percentile | 1582
Maximum | 2248
-----------------------------------
- v7.3
Metric | Value (us)
-----------------------------------
Total Samples | 16368
Total outlier | 632
Average | 145
Median (P50) | 53
90th Percentile | 53
99th Percentile | 2039
99.9th Percentile | 2132
Maximum | 3367
-----------------------------------
That being said, there is a trend to make the lag to elapse quicker
and an app can't expect to maintain its lag forever while sleeping.
Instead, the app should set its slice to notify the scheduler that it
would like to run 1st as long as fairness is not broken. If I set a
slice of 1ms for the short task I have :
- v7.2.9
Metric | Value (us)
-----------------------------------
Total Samples | 17000
Total outlier | 16
Average | 52
Median (P50) | 53
90th Percentile | 53
99th Percentile | 55
99.9th Percentile | 55
Maximum | 56
-----------------------------------
- v7.3
Metric | Value (us)
-----------------------------------
Total Samples | 17000
Total outlier | 11
Average | 52
Median (P50) | 53
90th Percentile | 53
99th Percentile | 54
99.9th Percentile | 55
Maximum | 57
-----------------------------------
Which is the correct way to ask scheduler to make a task to run 1st