Re: [PATCH v3] sched/fair: Remove cfs_rq::nr_spread_over and cfs_rq::exec_clock
From: Dietmar Eggemann
Date: Wed Jul 24 2024 - 05:18:49 EST
On 24/07/2024 10:01, Peter Zijlstra wrote:
> On Tue, Jul 23, 2024 at 10:47:22PM +0200, Dietmar Eggemann wrote:
>> On 20/07/2024 05:19, Chuyi Zhou wrote:
>>> nr_spread_over tracks the number of instances where the difference
>>> between a scheduling entity's virtual runtime and the minimum virtual
>>> runtime in the runqueue exceeds three times the scheduler latency,
>>> indicating significant disparity in task scheduling.
>>> Commit 5e963f2bd465 ("sched/fair: Commit to EEVDF") removed its usage.
>>>
>>> cfs_rq->exec_clock was used to account for time spent executing tasks.
>>> Commit 5d69eca542ee ("sched: Unify runtime accounting across classes")
>>> removed its usage.
>>
>> I was under the impression this commit removed
>> 'schedstat_add(cfs_rq->exec_clock, delta_exec)' from update_curr() by
>> mistake?
>>
>> That's why I sent out this patch back in May:
>>
>> https://lkml.kernel.org/r/20240503104605.1871571-1-dietmar.eggemann@xxxxxxx
>>
>> to add it back.
>
> Probably an accident yes. Is that exec_clock thing useful though? I
> mean, I don't much care either way around.
>
> I had a previous version of this patched lined up, but its easy enough
> to press 'dd' on it.
Not terrible useful I suppose. I had one testcase where I thought it
would be useful to compare those numbers back in May. This was the time
when I realized that .exec_clock stays 0.
But this was the only time I used it. So I'm fine with removing it. Our
ultimate goal should be anyway to reduce the amount of this mildly
useful stuff in this area.