Re: [PATCH RFC 2/5] sched/fair: Skip frequency update if CPU about to idle
From: Joel Fernandes
Date: Sat Nov 04 2017 - 02:09:54 EST
On Wed, Nov 1, 2017 at 12:35 PM, Steve Muckle <smuckle@xxxxxxxxxx> wrote:
> On 10/30/2017 12:02 PM, Joel Fernandes wrote:
>>>
>>> Also, this more looks like a policy decision. Will it be better to
>>> put that directly into schedutil? Like this:
>>>
>>> if (cpu_idle())
>>> "Don't change the freq";
>>>
>>> Will something like that work?
>>
>>
>> I thought about this and I think it wont work very well. In the
>> dequeue path we're still running the task being dequeued so the CPU is
>> not yet idle. What is needed here IMO is a notion that the CPU is
>> possibly about to idle and we can get predict that from the dequeue
>> path of the CFS class.
>>
>> Also just looking at whether the CPU is currently idle or not in the
>> governor doesn't help to differentiate between say the dequeue path /
>> tick path. Both of which can occur when the CPU is not idle.
>>
>> Any thoughts about this?
>
>
> Also if it really is the case that this bit of policy is universally
> desirable, I'd think it is better to do this in the scheduler and avoid a
> needless trip through a fn pointer out to schedutil for performance reasons.
I agree.
Peter, what do you think? Are you Ok with the approach of this patch
(preventing of the cpufreq update call during dequeue)?
thanks,
- Joel