pi_stress(8)
β¨ pi_stress β a whole manual page, but make it cute β¨
okay bestie, we're reading pi_stress from the Linux System Administrator's Manual (section 8, iykyk) and honestly? it's giving stress-test royalty. π
SPDX-License-Identifier: GPL-2.0-or-later</purl>
πΈ NAME πΈ
pi_stress β a stress test for POSIX Priority Inheritance mutexes π§
π SYNOPSIS π
pi_stress [-d|--debug] [-D|--duration [-g|--groups N] [-i|--inversions
INV] [--json FILENAME] [-m|--mlockall] [-p|--prompt] [-q|--quiet]
[-r|--rr] [-s|--sched OPTS] [-u|--uniprocessor] [-v|--verbose]
[-V|--version]
π DESCRIPTION π
so pi_stress is this program that stresses the priority-inheritance code paths for POSIX mutexes, both in the Linux kernel and in the C library. it runs as a realtime-priority task and launches inversion machine thread groups. each inversion group causes a priority inversion condition that will deadlock if priority inheritance doesn't work π like, that's the whole point. no cap.
β¨ OPTIONS β¨
-d,--debugβ run in debug mode; lots of extra prints π£οΈ-D TIME,--duration=TIMEβ specify a length for the test run. append'm','h', or'd'to specify minutes, hours or days β°-g N,--groups=Nβ the number of inversion groups to run. defaults to10π―-h,--helpβ display a short help message and options π«Ά-i N,--inversions=NβNnumber of inversion conditions. this is the total number of inversions for all inversion groups. default is-1for infinite βΎοΈ--json=FILENAMEβ write final results into FILENAME, JSON formatted π-m,--mlockallβ callmlockallto lock current and future memory allocations and prevent being paged out π-p,--promptβ prompt before actually starting the stress test π-q,--quietβ suppress running output π€«-r,--rrβ run inversion group threads asSCHED_RR(round-robin). the default is to run the inversion threads asSCHED_FIFOπ-s OPTS,--sched OPTSβ scheduling options per thread type:
id=[high|med|low],
policy=[fifo,rr],priority=N,
policy=deadline,runtime=N,deadline=N,period=N
-u,--uniprocessorβ run all threads on one processor. the default is to run all inversion group threads on one processor and the admin threads (reporting thread, keyboard reader, etc.) on a different processor π₯οΈ-v,--verboseβ run with verbose messages π’-V,--versionβ print version number π
π¦ CAVEATS π¦
bestie. listen. the pi_stress test threads run asSCHED_FIFOorSCHED_RRthreads, which means they can starve critical system threads. π
it is advisable to change the scheduling policy of critical system threads to be SCHED_FIFO prior to running pi_stress and use a priority of 10 or higher, to prevent those threads from being starved by the stress test. protecting your babies fr fr π«Ά
π BUGS π
no documented bugs. iconic behavior, honestly. not a single one. β¨
π AUTHOR π
Clark Williams <williams@redhat.com> π
and that's the whole thing bestie, go stress some mutexes responsibly πβ
this page came from the Linux System Administrator's Manual, dated Nov 27, 2006, and it's pi_stress(8) β mwah, take care of her ππ
π¦ where this page comes from
- arch rolling: rt-tests 2.11-1 Β· GPL-2.0-or-later
- centos-stream 10: realtime-tests 2.11-1.el10 Β· GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only AND LGPL-2.1-or-later
- centos-stream 9: realtime-tests 2.11-1.el9 Β· GPLv2
- fedora 43: realtime-tests 2.11-1.fc43 Β· GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only AND LGPL-2.1-or-later
- fedora 43: realtime-tests 2.8-6.fc43 Β· GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only AND LGPL-2.1-or-later
- fedora 44: realtime-tests 2.11-1.fc44 Β· GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only AND LGPL-2.1-or-later
- fedora 44: realtime-tests 2.8-7.fc44 Β· GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only AND LGPL-2.1-or-later
- nixos 26.05: rt-tests 2.10
- nixpkgs unstable: rt-tests 2.11
- opensuse-leap 16.0: rt-tests 2.8-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: rt-tests 2.8-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: rt-tests 2.8-160000.2.2 Β· GPL-2.0-only
- opensuse-leap 16.0: rt-tests 2.8-160000.2.2 Β· GPL-2.0-only
- ubuntu resolute: rt-tests 2.9-1ubuntu1 Β· GPL-2.0-only
- ubuntu stonking: rt-tests 2.10-1ubuntu1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms