sched/psi: Add PSI_IRQ to track IRQ/SOFTIRQ pressure
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. Note we don't use PSI_IRQ_SOME since IRQ/SOFTIRQ always happen in the current task on the CPU, make nothing productive could run even if it were runnable, so we only use PSI_IRQ_FULL. Signed-off-by:Chengming Zhou <zhouchengming@bytedance.com> Signed-off-by:
Peter Zijlstra (Intel) <peterz@infradead.org> Acked-by:
Johannes Weiner <hannes@cmpxchg.org> Link: https://lore.kernel.org/r/20220825164111.29534-8-zhouchengming@bytedance.com
Showing
- Documentation/admin-guide/cgroup-v2.rst 6 additions, 0 deletionsDocumentation/admin-guide/cgroup-v2.rst
- include/linux/psi_types.h 8 additions, 2 deletionsinclude/linux/psi_types.h
- kernel/cgroup/cgroup.c 27 additions, 0 deletionskernel/cgroup/cgroup.c
- kernel/sched/core.c 1 addition, 0 deletionskernel/sched/core.c
- kernel/sched/psi.c 72 additions, 2 deletionskernel/sched/psi.c
- kernel/sched/stats.h 2 additions, 0 deletionskernel/sched/stats.h
Loading
Please register or sign in to comment