All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/10] sched/psi: some optimization and extension
@ 2022-08-08 11:03 ` Chengming Zhou
  0 siblings, 0 replies; 48+ messages in thread
From: Chengming Zhou @ 2022-08-08 11:03 UTC (permalink / raw)
  To: hannes, tj, corbet, surenb, mingo, peterz, vincent.guittot,
	dietmar.eggemann, rostedt, bsegall
  Cc: cgroups, linux-doc, linux-kernel, songmuchun, Chengming Zhou

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


^ permalink raw reply	[flat|nested] 48+ messages in thread

end of thread, other threads:[~2022-08-23 18:10 UTC | newest]

Thread overview: 48+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-08 11:03 [PATCH v2 00/10] sched/psi: some optimization and extension Chengming Zhou
2022-08-08 11:03 ` Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 01/10] sched/psi: fix periodic aggregation shut off Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 02/10] sched/psi: optimize task switch inside shared cgroups again Chengming Zhou
2022-08-08 11:03   ` Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 03/10] sched/psi: move private helpers to sched/stats.h Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 04/10] sched/psi: don't change task psi_flags when migrate CPU/group Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 05/10] sched/psi: don't create cgroup PSI files when psi_disabled Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 06/10] sched/psi: save percpu memory when !psi_cgroups_enabled Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 07/10] sched/psi: remove NR_ONCPU task accounting Chengming Zhou
2022-08-16 10:40   ` Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 08/10] sched/psi: add PSI_IRQ to track IRQ/SOFTIRQ pressure Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 09/10] sched/psi: per-cgroup PSI stats disable/re-enable interface Chengming Zhou
2022-08-09 17:48   ` Tejun Heo
2022-08-09 17:48     ` Tejun Heo
2022-08-10  0:39     ` Chengming Zhou
2022-08-10  0:39       ` Chengming Zhou
2022-08-10  1:30       ` Chengming Zhou
2022-08-10  1:30         ` Chengming Zhou
2022-08-10 15:25         ` Johannes Weiner
2022-08-10 17:27           ` Tejun Heo
2022-08-11  2:09             ` Chengming Zhou
2022-08-15 13:23           ` Michal Koutný
2022-08-15 13:23             ` Michal Koutný
2022-08-23  6:18             ` Chengming Zhou
2022-08-23  6:18               ` Chengming Zhou
2022-08-23 15:35               ` Johannes Weiner
2022-08-23 15:43                 ` Chengming Zhou
2022-08-23 15:43                   ` Chengming Zhou
2022-08-23 16:20                 ` Tejun Heo
2022-08-23 16:20                   ` Tejun Heo
2022-08-12 10:14   ` Michal Koutný
2022-08-12 10:14     ` Michal Koutný
2022-08-12 12:36     ` Chengming Zhou
2022-08-12 12:36       ` Chengming Zhou
2022-08-15 13:23       ` Michal Koutný
2022-08-15 15:49   ` Johannes Weiner
2022-08-15 19:50     ` Tejun Heo
2022-08-15 19:50       ` Tejun Heo
2022-08-16 13:06     ` Chengming Zhou
2022-08-16 13:06       ` Chengming Zhou
2022-08-08 11:03 ` [PATCH v2 10/10] sched/psi: cache parent psi_group to speed up groups iterate Chengming Zhou
2022-08-15 13:25 ` [PATCH v2 00/10] sched/psi: some optimization and extension Michal Koutný
2022-08-15 13:25   ` Michal Koutný
2022-08-16 14:01   ` Chengming Zhou
2022-08-16 14:01     ` Chengming Zhou
2022-08-17 15:19     ` Chengming Zhou
2022-08-17 15:19       ` Chengming Zhou

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.