Messages in this thread | | | From | Chengming Zhou <> | Subject | [PATCH v2 00/10] sched/psi: some optimization and extension | Date | Mon, 8 Aug 2022 19:03:31 +0800 |
| |
Hi all,
This patch series are some optimization and extension for PSI, based on the tip/sched/core branch.
patch 1/10 fix periodic aggregation shut off problem introduced by earlier commit 4117cebf1a9f ("psi: Optimize task switch inside shared cgroups").
patch 2/10 optimize task switch inside shared cgroups when in_memstall status of prev task and next task are different.
patch 3-4 optimize and simplify PSI status tracking by don't change task psi_flags when migrate CPU/cgroup.
patch 7/10 remove NR_ONCPU task accounting to save 4 bytes in the first cacheline to be used by the following patch 8/10, which introduce new PSI resource PSI_IRQ to track IRQ/SOFTIRQ pressure stall information.
patch 9/10 introduce a per-cgroup interface "cgroup.psi" to disable or re-enable PSI stats accounting in the cgroup level.
patch 10/10 cache parent psi_group in struct psi_group to speed up the hot iteration path.
Thanks!
Changes in v2: - Add Acked-by tags from Johannes Weiner. Thanks for review! - Fix periodic aggregation wakeup for common ancestors in psi_task_switch(). - Add patch 7/10 from Johannes Weiner, which remove NR_ONCPU task accounting to save 4 bytes in the first cacheline. - Remove "psi_irq=" kernel cmdline parameter in last version. - Add per-cgroup interface "cgroup.psi" to disable/re-enable PSI stats accounting in the cgroup level.
Chengming Zhou (9): sched/psi: fix periodic aggregation shut off sched/psi: optimize task switch inside shared cgroups again sched/psi: move private helpers to sched/stats.h sched/psi: don't change task psi_flags when migrate CPU/group sched/psi: don't create cgroup PSI files when psi_disabled sched/psi: save percpu memory when !psi_cgroups_enabled sched/psi: add PSI_IRQ to track IRQ/SOFTIRQ pressure sched/psi: per-cgroup PSI stats disable/re-enable interface sched/psi: cache parent psi_group to speed up groups iterate
Johannes Weiner (1): sched/psi: remove NR_ONCPU task accounting
Documentation/admin-guide/cgroup-v2.rst | 13 ++ include/linux/psi.h | 6 +- include/linux/psi_types.h | 25 +-- include/linux/sched.h | 3 - kernel/cgroup/cgroup.c | 73 +++++++ kernel/sched/core.c | 2 + kernel/sched/psi.c | 247 +++++++++++++++++------- kernel/sched/stats.h | 60 +++--- 8 files changed, 313 insertions(+), 116 deletions(-)
-- 2.36.1
| |