|
|
Log in / Subscribe / Register

sched_ext: split global idle cpumask into per-NUMA cpumasks

From:  Andrea Righi <arighi-AT-nvidia.com>
To:  Tejun Heo <tj-AT-kernel.org>, David Vernet <void-AT-manifault.com>
Subject:  [PATCHSET sched_ext/for-6.13] sched_ext: split global idle cpumask into per-NUMA cpumasks
Date:  Tue, 26 Nov 2024 10:56:38 +0100
Message-ID:  <20241126101259.52077-1-arighi@nvidia.com>
Cc:  Yury Norov <yury.norov-AT-gmail.com>, linux-kernel-AT-vger.kernel.org
Archive-link:  Article

As discussed during the sched_ext office hours, using a global cpumask
to keep track of the idle CPUs can be inefficient and it may not scale
really well on large NUMA systems.

Therefore, split the idle cpumask into multiple per-NUMA node cpumasks
to improve scalability and performance on such large systems.

----------------------------------------------------------------
Andrea Righi (2):
      nodemask: Introduce for_each_node_mask_from/for_each_node_state_from()
      sched_ext: Introduce per-NUMA idle cpumasks

 include/linux/nodemask.h |  18 ++++++++
 kernel/sched/ext.c       | 110 +++++++++++++++++++++++++++++++++--------------
 2 files changed, 96 insertions(+), 32 deletions(-)



Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds