User Tools

Site Tools


realtime:documentation:howto:tools:rt-tests

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
realtime:documentation:howto:tools:rt-tests [2018/08/21 09:18]
ebugden [Programs] Update link
realtime:documentation:howto:tools:rt-tests [2023/09/25 14:44] (current)
costa.shul [Programs] - ref SCHED_DEADLINE
Line 1: Line 1:
 ====== RT-Tests ====== ====== RT-Tests ======
  
-rt-tests is a test suite, that contains programs to test various real time Linux features. It is maintained by Clark Williams and John Kacur. ​The source code is hosted on [[https://​git.kernel.org/​pub/​scm/​utils/​rt-tests/​rt-tests.git/​|kernel.org]],​ the releases are available ​ +rt-tests is a [[realtime:​documentation:​howto:​tools:​start|test suite]], that contains programs to test various real time Linux features. It is maintained by Clark Williams and John Kacur. 
-[[https://​www.kernel.org/​pub/​linux/​utils/​rt-tests|here]]. ​For communication,​ the [[realtime:​communication:​mailinglists|rt-users mailing list]] is used.+For communication,​ the [[realtime:​communication:​mailinglists|rt-users mailing list]] is used.
  
  
Line 9: Line 9:
 The following programs are part of the rt-tests: The following programs are part of the rt-tests:
  
-  * [[realtime:​documentation:​howto:​tools:​cyclictest:​start|cyclictest]]:​ latency detection +  * [[realtime:​documentation:​howto:​tools:​cyclictest:​start|cyclictest]] ​– [[https://​man7.org/​linux/​man-pages/​man2/​clock_nanosleep.2.html|clock_nanosleep]] ​latency detection 
-  * hackbench +  * [[https://​man.archlinux.org/​man/​cyclicdeadline.8.en|cyclicdeadline]] – test the deadline scheduler (SCHED_DEADLINE) using a cyclictest style program 
-  * pip_stress +  * [[https://​man.archlinux.org/​man/​deadline_test.8.en|deadline_test]] – test the deadline scheduler 
-  * pi_stress +  * [[realtime:​documentation:​howto:​tools:​hackbench|hackbench]] – scheduler benchmark/​stress test 
-  * pmqtest +  * [[https://​man.archlinux.org/​man/​hwlatdetect.8.en|hwlatdetect]] – CLI for [[https://​docs.kernel.org/​trace/​hwlat_detector.html|/​sys/​kernel/​tracing/​hwlat_detector]] 
-  * ptsematest +  * [[https://​man.archlinux.org/​man/​oslat.8.en|oslat]] – measures delay with [[https://​en.wikipedia.org/​wiki/​Time_Stamp_Counter|RDTSC]] 
-  * rt-migrate-test +  * [[https://​man.archlinux.org/​man/​pip_stress.8.en|pip_stress]] – priority Inheritance with processes 
-  * sendme +  * [[https://​man.archlinux.org/​man/​pi_stress.8.en|pi_stress]] – a stress test for POSIX Priority Inheritance mutexes 
-  * signaltest +  * [[https://​man.archlinux.org/​man/​pmqtest.8.en|pmqtest]] – start pairs of threads and measure the latency of interprocess communication with POSIX messages queues 
-  * sigwaittest +  * [[https://​man.archlinux.org/​man/​ptsematest.8.en|ptsematest]] – start two threads and measure the latency of interprocess communication with POSIX mutex. 
-  * svsematest+  * [[https://​man.archlinux.org/​man/​determine_maximum_mpps.8.en|determine_maximum_mpps]] – determine the maximum mpps the machine can handle 
 +  * [[https://​man.archlinux.org/​man/​queuelat.8.en|queuelat]] – queue latency test program 
 +  * [[https://​man.archlinux.org/​man/​rt-migrate-test.8.en|rt-migrate-test]] – real-time task migration program 
 +  * [[https://​man.archlinux.org/​man/​signaltest.8.en|signaltest]] – signal roundtrip test software 
 +  * [[https://​man.archlinux.org/​man/​sigwaittest.8.en|sigwaittest]] – start two threads or fork two processes and measure the latency between sending and receiving a signal 
 +  * [[https://​man.archlinux.org/​man/​ssdd.8.en|ssdd]] – have a tracer do a bunch of PTRACE_SINGLESTEPs 
 +  * [[https://​man.archlinux.org/​man/​svsematest.8.en|svsematest]] – start two threads or fork two processes and measure the latency of SYSV semaphores
  
  
 ===== Compile and install ===== ===== Compile and install =====
  
-rt-tests suite can be installed from source. ​Therefore ​the libnuma and build-essentials are required. The given example is for a Debian based system:+rt-tests suite can be installed from source: [[https://​git.kernel.org/​pub/​scm/​utils/​rt-tests/​rt-tests.git/​tree/​src|rt-tests/​src]],​ 
 +the releases are available [[https://​www.kernel.org/​pub/​linux/​utils/​rt-tests|here]]. 
 +The [[https://​man7.org/​linux/​man-pages/​man3/​numa.3.html|libnuma]] and build-essentials are required. The given example is for a Debian based system:
  
 <code bash> <code bash>
Line 30: Line 38:
 </​code>​ </​code>​
  
-<WRAP center round tip 100%> 
 libnuma-dev is required for build. Usually, it's safe to have libnuma-dev installed also in non-NUMA systems, but if you don't want to install the NUMA libs (e.g. in embedded environment) then compile with make NUMA=0. libnuma-dev is required for build. Usually, it's safe to have libnuma-dev installed also in non-NUMA systems, but if you don't want to install the NUMA libs (e.g. in embedded environment) then compile with make NUMA=0.
-</​WRAP>​ 
  
  
realtime/documentation/howto/tools/rt-tests.1534843101.txt.gz · Last modified: 2018/08/21 09:18 by ebugden