Re: [PATCH v8 0/2] sched/numa: introduce numa locality

From: çè
Date: Thu Feb 06 2020 - 20:10:59 EST


Hi, Peter, Ingo

Could you give some comments please?

As Mel replied previously, he won't disagree the idea, so we're looking
forward the opinion from the maintainers.

Please allow me to highlight the necessary of monitoring NUMA Balancing
again, this feature is critical to the performance on NUMA platform,
it cost and benefit -- lot or less, however there are not enough
information for an admin to analysis the trade-off, while locality could
be the missing piece.

Regards,
Michael Wang

On 2020/1/21 äå9:56, çè wrote:
> v8:
> * document edited
> v7:
> * rebased on latest linux-next
> v6:
> * fix compile failure when NUMA disabled
> v5:
> * improved documentation
> v4:
> * fix comments and improved documentation
> v3:
> * simplified the locality concept & implementation
> v2:
> * improved documentation
>
> Modern production environment could use hundreds of cgroup to control
> the resources for different workloads, along with the complicated
> resource binding.
>
> On NUMA platforms where we have multiple nodes, things become even more
> complicated, we hope there are more local memory access to improve the
> performance, and NUMA Balancing keep working hard to achieve that,
> however, wrong memory policy or node binding could easily waste the
> effort, result a lot of remote page accessing.
>
> We need to notice such problems, then we got chance to fix it before
> there are too much damages, however, there are no good monitoring
> approach yet to help catch the mouse who introduced the remote access.
>
> This patch set is trying to fill in the missing piecesï by introduce
> the per-cgroup NUMA locality info, with this new statistics, we could
> achieve the daily monitoring on NUMA efficiency, to give warning when
> things going too wrong.
>
> Please check the second patch for more details.
>
> Michael Wang (2):
> sched/numa: introduce per-cgroup NUMA locality info
> sched/numa: documentation for per-cgroup numa statistics
>
> Documentation/admin-guide/cg-numa-stat.rst | 178 ++++++++++++++++++++++++
> Documentation/admin-guide/index.rst | 1 +
> Documentation/admin-guide/kernel-parameters.txt | 4 +
> Documentation/admin-guide/sysctl/kernel.rst | 9 ++
> include/linux/sched.h | 15 ++
> include/linux/sched/sysctl.h | 6 +
> init/Kconfig | 11 ++
> kernel/sched/core.c | 75 ++++++++++
> kernel/sched/fair.c | 62 +++++++++
> kernel/sched/sched.h | 12 ++
> kernel/sysctl.c | 11 ++
> 11 files changed, 384 insertions(+)
> create mode 100644 Documentation/admin-guide/cg-numa-stat.rst
>