$ git log --pretty=format:'%h %s (%cs)%d'
7f5aa4c rteval: Set measurement cpuset to partition=isolated for CPU isolation (2026-07-10)
(HEAD -> main)
656f8e6 rteval: Make thread excepthook portable and support chaining (2026-07-07)
d5dc75e rteval: Add process blocklist to prevent shutdown issues (2026-06-26)
8243f39 rteval: Fix collapse_cpulist to handle duplicate CPU numbers (2026-06-23)
2d446f0 rteval: Add AGENTS.md guide for AI coding assistants (2026-06-16)
329dbe8 rteval: Add container detection and warning (2026-06-15)
70171b2 rteval: Add container detection module (2026-06-10)
6b38190 rteval: timerlat: Improve handling of truncated histogram output (2026-06-05)
3abdf7b rteval: cyclictest: Improve handling of truncated histogram output (2026-06-05)
12225d6 Create rteval-3.11 (2026-06-04)
...
$ git cat-file blob HEAD:README
SPDX-License-Identifier: GPL-2.0-or-later
Rteval is a Python program written to evaluate the performance of a
realtime Linux kernel on a particular hardware platform. The program
runs measurement modules (cyclictest or timerlat) to measure scheduling
and timer latency while simultaneously running system load modules
(kernel compile, hackbench, stress-ng) to stress the system.
When the specified run duration is met, rteval stops the loads and
measurements, then writes an XML report to disk with information about
the system (from DMI tables), raw measurement data, and statistical
analysis including min/max latency, standard deviation, and histograms.
INSTALLATION
============
The rteval source may be pulled from its git tree on kernel.org:
https://git.kernel.org/pub/scm/utils/rteval/rteval.git
Required Dependencies:
Python >= 3.8
https://www.python.org/download/
python3-lxml
https://lxml.de/
python3-libxml2
https://xmlsoft.org/
sysstat
System performance monitoring tools (sar, iostat, mpstat)
Measurement Module Requirements (choose one):
For cyclictest measurement module:
rt-tests (realtime-tests package)
https://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git
For timerlat measurement module (recommended):
rtla (part of Linux kernel tools)
Requires kernel 5.15+ with CONFIG_OSNOISE_TRACER enabled
Load Module Requirements:
For kcompile load module:
rteval-loads package (provides kernel source tarballs)
Or manually download kernel sources from https://www.kernel.org/
Build tools: gcc, binutils, gcc-c++, make, flex, bison, bc,
kernel-headers, openssl-devel, perl-interpreter,
elfutils-libelf-devel, xz, bzip2, tar, gzip
For stress-ng load module (optional):
stress-ng
https://github.com/ColinIanKing/stress-ng
System utilities:
numactl, dmidecode, procps-ng
Installation:
$ git clone https://git.kernel.org/pub/scm/utils/rteval/rteval.git
$ cd rteval
$ sudo make install
For rt-tests (if using cyclictest):
$ git clone https://git.kernel.org/pub/scm/utils/rt-tests/rt-tests.git
$ cd rt-tests
$ sudo make prefix=/usr install
TESTING
=======
Rteval includes unit tests and end-to-end tests. End-to-end tests
require:
Test::Harness (Perl module)
https://metacpan.org/pod/Test::Harness
Run tests with:
$ make test # Unit tests
$ make e2e-tests # End-to-end tests (requires root)
USAGE
=====
Basic usage (requires root):
$ sudo rteval -d 3600
Run with timerlat measurement module:
$ sudo rteval -d 3600 --measurement-module timerlat
See the man page for more options:
$ man rteval
AUTHORS
=======
Clark Williams <williams at redhat dot com> wrote rteval.
David Sommerseth wrote the XML-RPC and database logic for handling
rteval results.
John Kacur <jkacur at redhat dot com> ported it to Python 3 and has
been developing and maintaining it since then.
# heads (aka `branches'):
$ git for-each-ref --sort=-creatordate refs/heads \
--format='%(HEAD) %(refname:short) %(subject) (%(creatordate:short))'
* main rteval: Set measurement cpuset to partition=isolated for CPU isolation (2026-07-10)
systopology rteval: Update the kcompile kernel to linux-6.12-rc4 (2024-10-22)
timerlat rteval: timerlat tracing clean-up (2024-06-24)
py3.6 rteval: Increase default buckets from 2000 to 3500 (2022-01-28)
py2/rteval rteval: Fix iterating through the nodes in the hackbench module (2020-04-24)
# tags:
$ git for-each-ref --sort=-creatordate refs/tags \
--format='%(refname:short) %(subject) (%(creatordate:short))'
v3.10 v3.10 (2025-11-13) tar.gz
v3.9 v3.9 (2024-11-14) tar.gz
v3.8 v3.8 (2024-05-06) tar.gz
v3.7 v3.7 (2023-10-03) tar.gz
v3.6 v3.6 (2023-02-17) tar.gz
v3.5 v3.5 (2022-08-16) tar.gz
v3.4 v3.4 (2022-06-28) tar.gz
v3.3 v3.3 (2022-01-13) tar.gz
v2.14 v2.14 (2021-08-25) tar.gz
v3.2 v3.2 (2021-06-25) tar.gz
...
# associated public inboxes:
# (number on the left is used for dev purposes)
301 linux-rt-users
17 lkml
9 linux-arm-kernel
8 netdev
8 intel-gfx
7 qemu-devel
7 dpdk-dev
7 u-boot
6 linux-pm
6 dri-devel
5 linux-samsung-soc
5 linux-riscv
5 linux-xfs
5 netfilter-devel
5 linux-mm
5 stable
5 linux-btrfs
5 linux-rdma
5 linuxppc-dev
5 git
5 buildroot
5 openembedded-core
5 openembedded-devel
4 linux-nfs
4 linux-devicetree
4 linux-scsi
4 linux-kselftest
4 selinux
4 linux-gpio
4 kvm
4 linux-doc
4 linux-mmc
4 amd-gfx
4 linux-spi
4 linux-perf-users
4 linux-s390
4 yocto-meta-arago
4 intel-xe
4 igt-dev
3 linux-wireless
3 linux-mtd
3 linux-block
3 linux-nvme
3 bpf
3 linux-mediatek
3 linux-crypto
3 linux-acpi
3 linux-fsdevel
3 linux-cifs
3 linux-amlogic
3 linux-erofs
3 linux-iommu
3 linux-media
3 xen-devel
3 linux-mips
3 fstests
3 linux-rtc
3 linux-input
3 alsa-devel
3 kvmarm
3 linux-usb
3 linux-renesas-soc
3 linux-clk
3 linux-iio
3 linux-security-module
3 linux-pci
3 linux-modules
3 linux-bluetooth
3 linux-ide
3 linux-serial
3 linux-watchdog
3 util-linux
3 backports
3 linux-man
3 linux-omap
3 linux-i2c
3 linux-sparse
3 linux-tegra
3 virtualization
3 linux-kbuild
3 linux-arch
3 linux-can
3 linux-rockchip
3 linux-raid
3 openbmc
3 dm-devel
3 linux-fbdev
3 linux-cxl
3 linux-sh
3 nouveau
3 mptcp
3 linux-coco
3 fio
3 iwd
3 ltp
3 yocto
3 yocto-meta-arm
3 bitbake-devel
3 yocto-meta-virtualization
3 yocto-meta-ti
3 openrisc
3 intel-wired-lan
3 kexec
3 linux-um
3 poky
3 qemu-riscv
3 grub-devel
3 linux-hexagon
2 linux-efi
2 linux-integrity
2 linux-edac
2 linux-arm-msm
2 linux-snps-arc
2 linux-hwmon
2 driverdev-devel
2 dmaengine
2 linux-parisc
2 linux-ext4
2 linux-leds
2 linux-f2fs-devel
2 linux-trace-devel
2 linux-hyperv
2 rcu
2 linux-m68k
2 linux-i3c
2 wireguard
2 linux-csky
2 linux-unionfs
2 linux-firmware
2 linux-api
2 cip-dev
2 linux-remoteproc
2 linux-pwm
2 lttng-dev
2 linux-fpga
2 ceph-devel
2 containers
2 platform-driver-x86
2 phone-devel
2 linux-hardening
2 dash
2 keyrings
2 soc
2 rust-for-linux
2 linux-phy
2 kernel-janitors
2 sparclinux
2 linux-staging
2 linux-sunxi
2 nvdimm
2 llvm
2 ofono
2 yocto-meta-freescale
2 yocto-toaster
2 linux-patches
2 outreachy
2 xenomai
2 loongarch
2 imx
2 b4-sent
2 linux-trace-kernel
2 oe-kbuild-all
2 virtio-comment
2 v9fs
2 cluster-devel
2 kvm-ppc
2 linux-alpha
2 linux-sound
2 reiserfs-devel
2 u-boot-amlogic
2 lvm-devel
2 perfbook
2 virtio-fs
2 fuego
2 yocto-patches
1 linux-fscrypt
1 cocci
1 live-patching
1 linux-nvdimm
1 kernel-hardening
1 linux-next
1 kernelnewbies
1 linux-sgx
1 workflows
1 selinux-refpolicy
1 linux-spdx
1 linux-wpan
1 ksummit-discuss
1 io-uring
1 linux-kernel-mentees
1 tpmdd-devel
1 linux-audit
1 linux-dash
1 linux-bcache
1 mm-commits
1 xdp-newbies
1 linux-sctp
1 target-devel
1 lustre-devel
1 ocfs2-devel
1 ath10k
1 ath11k
1 regressions
1 ksummit
1 b43-dev
1 linux-nfc
1 linux-bcachefs
1 ath9k-devel
1 ntfs3
1 linux-ppp
1 ell
1 yocto-docs
1 chrome-platform
1 ntb
1 damon
1 asahi
1 ath12k
1 oe-linux-nfc
1 oe-chipsec
1 batman
1 fsverity
1 virtio-dev
1 ecryptfs
1 linux-ia64
1 kdevops
1 kbd
1 autofs
1 cpufreq
1 dccp
1 cgroups
1 devicetree-spec
1 devicetree-compiler
1 initramfs
1 hail-devel
1 kvm-ia64
1 linux-8086
1 kernel-testers
1 linux-btrace
1 linux-embedded
1 linux-hams
1 linux-hotplug
1 linux-laptop
1 trinity
1 linux-metag
1 linux-x25
1 linux-nilfs
1 lvs-devel
1 netfilter
1 linux-oxnas
1 lm-sensors
1 acpica-devel
1 bridge
1 smatch
1 wireless-regdb
1 netfs
1 powertop
1 dtrace
1 barebox
1 linux-aspeed
git clone https://yhbt.net/lore/pub/scm/utils/rteval/rteval.git