Messages in this thread | | | Date | Mon, 11 Dec 2023 07:56:09 +0000 | Subject | Re: [PATCH 1/4] sched/fair: Be less aggressive in calling cpufreq_update_util() | From | Lukasz Luba <> |
| |
On 12/10/23 20:51, Qais Yousef wrote: > On 12/08/23 10:05, Lukasz Luba wrote: >> Hi Qais, >> >> On 12/8/23 01:52, Qais Yousef wrote: >> >> [snip] >> >>> @@ -6704,14 +6677,6 @@ enqueue_task_fair(struct rq *rq, struct task_struct *p, int flags) >>> */ >>> util_est_enqueue(&rq->cfs, p); >>> - /* >>> - * If in_iowait is set, the code below may not trigger any cpufreq >>> - * utilization updates, so do it here explicitly with the IOWAIT flag >>> - * passed. >>> - */ >>> - if (p->in_iowait) >>> - cpufreq_update_util(rq, SCHED_CPUFREQ_IOWAIT); >>> - >> >> Why this io wait boost is considered as the $subject says 'aggressive' >> calling? > > This will trigger a frequency update along with the iowait boost. Did I miss > something?
Yes, it will change CPU freq and it was the main goal for this code path. We have tests which check how that works on different memory types.
Why do you want to remove it?
Did you run some tests (e.g. fio, gallery, etc) to check if you still have a decent performance out some new ufs/nvme memories?
Beata & Dietmar have presented at LPC2021 a proposal to have a per-task io boost, with a bit more controllable way of the trade off power vs. performance [1]. IMO the io wait boost could evolve, not simply die.
Regards, Lukasz
[1] https://lpc.events/event/11/contributions/1042/
| |