Messages in this thread | | | Date | Fri, 22 Jul 2022 15:14:00 +0800 | Subject | Re: [PATCH 9/9] sched/psi: add PSI_IRQ to track IRQ/SOFTIRQ pressure | From | Abel Wu <> |
| |
On 7/22/22 2:13 PM, Chengming Zhou Wrote: > On 2022/7/22 11:30, Abel Wu wrote: >> Hi Chengming, >> >> On 7/21/22 12:04 PM, Chengming Zhou Wrote: >>> Now PSI already tracked workload pressure stall information for >>> CPU, memory and IO. Apart from these, IRQ/SOFTIRQ could have >>> obvious impact on some workload productivity, such as web service >>> workload. >>> >>> When CONFIG_IRQ_TIME_ACCOUNTING, we can get IRQ/SOFTIRQ delta time >>> from update_rq_clock_task(), in which we can record that delta >>> to CPU curr task's cgroups as PSI_IRQ_FULL status. >> >> The {soft,}irq affection should be equal to all the runnable tasks >> on that cpu, not only rq->curr. Further I think irqstall is per-cpu >> rather than per-cgroup. > > Although IRQ/SOFTIRQ is per-cpu, it's the rq->curr who own the CPU at the time > and pay for it, meanwhile other groups would be thought as PSI_CPU_FULL.
I don't think rq->curr pays for it if you mean consuming quota here. And it doesn't seem appropriate to let other groups treat it as cpu stall because the rq->curr is also the victim rather than the one causes stall (so it's different from rq->curr causing memstall and observed as cpustall by others).
> > So I think it's reasonable to account this IRQ/SOFTIRQ delta to rq->curr's groups > as PSI_IRQ_FULL pressure stall. And per-cpu IRQ stall can also get from psi_system. >
| |