From: John Kacur <jkacur@redhat.com>
To: linux-rt-users@vger.kernel.org
Cc: Clark Williams <williams@redhat.com>, Tomas Glozar <tglozar@redhat.com>
Subject: [PATCH 0/6] rteval: Improve CPU management infrastructure and add housekeeping option
Date: Fri, 17 Apr 2026 15:51:07 -0400 [thread overview]
Message-ID: <20260417195113.177799-1-jkacur@redhat.com> (raw)
This patch series enhances rteval's CPU management capabilities by adding
cgroup v2 cpuset support, refactoring CPU list handling, and introducing
a new --housekeeping option for finer control over isolated CPU usage.
The series includes:
1. A new cpuset module providing comprehensive cgroup v2 cpuset management
with support for cpuset.cpus.partition and modern Linux interfaces
2. A minor test fix for the xmlout unit test XSL file path
3. A new CpuList class that provides an object-oriented interface for CPU
list manipulation while maintaining backward compatibility with existing
module-level functions
4. Migration of existing code to use the new CpuList class where it adds
value (chaining, filtering) while keeping functional interfaces for
simple operations
5. Comprehensive unit tests for the CpuList class covering all major
functionality
6. A new --housekeeping option that allows users to reserve specific
isolated CPUs for system housekeeping tasks, preventing rteval's
measurement and load modules from using them
The --housekeeping feature is particularly useful for systems with isolated
CPUs where some cores need to handle essential system tasks while the rest
are dedicated to real-time workloads.
All changes maintain backward compatibility and existing tests pass.
John Kacur
John Kacur (6):
rteval: Add cpuset module for cgroup v2 management
rteval: Fix xmlout unit test XSL file path
rteval: Add CpuList class to cpulist_utils module
rteval: Migrate call sites to use CpuList class where beneficial
rteval: Add unit tests for CpuList class
rteval: Add --housekeeping option to reserve isolated CPUs
rteval-cmd | 62 ++++-
rteval/cpulist_utils.py | 161 +++++++++++-
rteval/cpupower.py | 4 +-
rteval/cpuset.py | 350 +++++++++++++++++++++++++
rteval/modules/loads/__init__.py | 7 +-
rteval/modules/loads/hackbench.py | 9 +-
rteval/modules/loads/kcompile.py | 14 +-
rteval/modules/loads/stressng.py | 8 +-
rteval/modules/measurement/__init__.py | 6 +-
rteval/systopology.py | 52 ++--
rteval/xmlout.py | 4 +-
tests/test_cpulist_class.py | 121 +++++++++
12 files changed, 738 insertions(+), 60 deletions(-)
create mode 100755 rteval/cpuset.py
create mode 100644 tests/test_cpulist_class.py
--
2.53.0
next reply other threads:[~2026-04-17 19:51 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-17 19:51 John Kacur [this message]
2026-04-17 19:51 ` [PATCH 1/6] rteval: Add cpuset module for cgroup v2 management John Kacur
2026-04-17 19:51 ` [PATCH 2/6] rteval: Fix xmlout unit test XSL file path John Kacur
2026-04-17 19:51 ` [PATCH 3/6] rteval: Add CpuList class to cpulist_utils module John Kacur
2026-04-17 19:51 ` [PATCH 4/6] rteval: Migrate call sites to use CpuList class where beneficial John Kacur
2026-04-17 19:51 ` [PATCH 5/6] rteval: Add unit tests for CpuList class John Kacur
2026-04-17 19:51 ` [PATCH 6/6] rteval: Add --housekeeping option to reserve isolated CPUs John Kacur
2026-04-20 9:33 ` Tomas Glozar
2026-04-20 21:42 ` John Kacur
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260417195113.177799-1-jkacur@redhat.com \
--to=jkacur@redhat.com \
--cc=linux-rt-users@vger.kernel.org \
--cc=tglozar@redhat.com \
--cc=williams@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox