[PATCH v6 0/2] sched/numa: add statistics of numa balance task migration

Chen Yu posted 2 patches 6 months, 2 weeks ago
Documentation/admin-guide/cgroup-v2.rst | 6 ++++++
include/linux/sched.h                   | 4 ++++
include/linux/vm_event_item.h           | 2 ++
kernel/sched/core.c                     | 9 +++++++--
kernel/sched/debug.c                    | 4 ++++
kernel/sched/fair.c                     | 3 ++-
mm/memcontrol.c                         | 2 ++
mm/vmstat.c                             | 2 ++
8 files changed, 29 insertions(+), 3 deletions(-)
[PATCH v6 0/2] sched/numa: add statistics of numa balance task migration
Posted by Chen Yu 6 months, 2 weeks ago
Introducing the task migration and swap statistics in the following places:
/sys/fs/cgroup/{GROUP}/memory.stat
/proc/{PID}/sched
/proc/vmstat

These statistics facilitate a rapid evaluation of the performance and resource
utilization of the target workload.

Patch 1 is a fix from Libo to avoid task swapping for kernel threads
and user thread that does not have mm, because Numa balance only cares
about the user pages via VMA.

Patch 2 is the major change to expose the statistics of task migration and
swapping in corresponding files.

The reason to fold patch 1 and patch 2 into 1 patch set is that patch 1 is
necessary for patch 2 to avoid accessing a NULL mm_struct from a kernel
thread, which causes NULL pointer exception.

Changes since v5:
Enhance the git commit message to describe the reason why these events
are introduced in memory.stat/vmstat rather than cpu.stat.

Previous version:
v5:
https://lore.kernel.org/all/cover.1748002400.git.yu.c.chen@intel.com/
v4:
https://lore.kernel.org/all/cover.1746611892.git.yu.c.chen@intel.com/
v3:
https://lore.kernel.org/lkml/20250430103623.3349842-1-yu.c.chen@intel.com/
v2:
https://lore.kernel.org/lkml/20250408101444.192519-1-yu.c.chen@intel.com/
v1:
https://lore.kernel.org/lkml/20250402010611.3204674-1-yu.c.chen@intel.com/

Chen Yu (1):
  sched/numa: add statistics of numa balance task

Libo Chen (1):
  sched/numa: fix task swap by skipping kernel threads

 Documentation/admin-guide/cgroup-v2.rst | 6 ++++++
 include/linux/sched.h                   | 4 ++++
 include/linux/vm_event_item.h           | 2 ++
 kernel/sched/core.c                     | 9 +++++++--
 kernel/sched/debug.c                    | 4 ++++
 kernel/sched/fair.c                     | 3 ++-
 mm/memcontrol.c                         | 2 ++
 mm/vmstat.c                             | 2 ++
 8 files changed, 29 insertions(+), 3 deletions(-)

-- 
2.25.1
Re: [PATCH v6 0/2] sched/numa: add statistics of numa balance task migration
Posted by Andrew Morton 6 months, 2 weeks ago
On Thu, 29 May 2025 12:53:36 +0800 Chen Yu <yu.c.chen@intel.com> wrote:

> Introducing the task migration and swap statistics in the following places:
> /sys/fs/cgroup/{GROUP}/memory.stat
> /proc/{PID}/sched
> /proc/vmstat
> 
> These statistics facilitate a rapid evaluation of the performance and resource
> utilization of the target workload.

OK, thanks, I confirmed that there were no code changes since v5 and I
updated the changelogs in place.

I'll aim to include this series in the second mm.git->Linus pull
request next week, unless someone prevents me.
Re: [PATCH v6 0/2] sched/numa: add statistics of numa balance task migration
Posted by Chen, Yu C 6 months, 2 weeks ago
On 5/29/2025 1:26 PM, Andrew Morton wrote:
> On Thu, 29 May 2025 12:53:36 +0800 Chen Yu <yu.c.chen@intel.com> wrote:
> 
>> Introducing the task migration and swap statistics in the following places:
>> /sys/fs/cgroup/{GROUP}/memory.stat
>> /proc/{PID}/sched
>> /proc/vmstat
>>
>> These statistics facilitate a rapid evaluation of the performance and resource
>> utilization of the target workload.
> 
> OK, thanks, I confirmed that there were no code changes since v5 and I
> updated the changelogs in place.
> 
> I'll aim to include this series in the second mm.git->Linus pull
> request next week, unless someone prevents me.

OK, thanks Andrew.

best,
Chenyu