User Tools

Site Tools


realtime:documentation:howto:howto_rt_tools_worstcaselatency

Differences

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

Link to this comparison view

Next revision
Previous revision
realtime:documentation:howto:howto_rt_tools_worstcaselatency [2017/01/31 18:33]
vedangpatel created
— (current)
Line 1: Line 1:
-====== Worst Case Latency Test Scenarios ====== 
- 
-This section talks about different ways one can generate workloads to test worst case latency for a real-time system. These tests were originally designed by [[https://​leemgs.fedorapeople.org/​|Geunsik Lim]]. 
- 
-===== Requirements ===== 
- 
-Following tools are being used by this test: 
-  * [[realtime:​documentation:​howto:​howto_rt_tools_cyclictest|cyclictest]] 
-  * [[realtime:​documentation:​howto:​howto_rt_tools_ltp|Linux Test Project]] 
-  * hackbench (part of the [[https://​git.kernel.org/​cgit/​utils/​rt-tests/​rt-tests.git/​|rt-tests]].) 
-  * other commands like taskset, chrt, ping, dd, tar and netperf which is usually available by default in most linux systems. 
- 
-===== Latency test scenarios ===== 
- 
-This is Test scenario to measure a latency guarantee in the worstcase environments using simple script and commands. 
- 
-==== Latency test ==== 
- 
-<code sh> 
-# This is task to keep Latency(Max limitation: 200uSec) at the worst case. 
-# Written by GeunSik,​Lim ​ 
-# If you need histogram information just, Please Use -h option. 
-time cyclictest -t1 -p 99 -i 1000 -n -l 1000000000000 -d 86400 -m -a 1 
-</​code>​ 
- 
-==== Stress Environments ==== 
-<code sh> 
-# Now, Below test code is background stress for the worst case in RT system. 
-time cyclictest -t50 -p 80 -i 10000 -n -l 100000000000 -d 86400  -a 3 
- 
-taskset -c 2,3 ./​stress.20080904.sh 
---------------------------- 
-#!/bin/sh 
-# Most hardcore test (Ingo Molnar - http://​lkml.org/​lkml/​2005/​6/​22/​347) 
-# For Heavy CPU Ratio. 
-while true; do /bin/dd if=/​dev/​zero of=bigfile bs=1024000 count=1024; done & 
-while true; do /​usr/​bin/​killall hackbench; sleep 5; done & 
-while true; do /​sbin/​hackbench 20; done & 
-# some source code(ltp-full-20090531) consists of sched_setschduler() with FIFO 99. 
-cd ltp-full-20090531;​ while true; do ./​runalltests.sh -x 40; done  & 
----------------------------- 
- 
-# For 100% Usage of CPU Load using ping 
-# Should run as root to preload more than 3 packets. 
-taskset -c 0 /bin/ping -l 100000 -q -s 10 -f localhost & 
-taskset -c 1 /bin/ping -l 100000 -q -s 10 -f localhost & 
-taskset -c 2 /bin/ping -l 100000 -q -s 10 -f localhost & 
-taskset -c 3 /bin/ping -l 100000 -q -s 10 -f localhost & 
----------------------------- 
- 
-# For 100% Usage of I/O Load using linux-2.6.30 tar source like tiobench s/w. 
-# Don't forget disk total usage ratio (ex: df ). 
-# git clone git://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​torvalds/​linux-2.6.git linux-2.6.30 
-cd /opt 
-while true; do taskset -c 0 tar cvzf test1.tgz ​ ./​linux-2.6.30 ; done  & 
-while true; do taskset -c 1 tar cvzf test2.tgz ​ ./​linux-2.6.30 ; done  & 
-while true; do taskset -c 2 tar cvzf test3.tgz ​ ./​linux-2.6.30 ; done  & 
-while true; do taskset -c 3 tar cvzf test4.tgz ​ ./​linux-2.6.30 ; done  & 
----------------------------- 
- 
-# Estimate file space usage ( for I/O Load) 
-while true; do taskset -c 3 /bin/du / ; done  & 
----------------------------- 
- 
-# Network Stress ( Network Performance & Stress ) 
-/​usr/​bin/​netserver 
-/​usr/​bin/​netperf -H 192.168.155.20 -t TCP_STREAM -A 16K,16K -l 3600 
-# Streamming Stress using firefox webbrowser. 
-firefox http://​www.intomail.net/​stream.php 
----------------------------- 
- 
-# USB Disk I/O Stress(External HDD's I/O ) 
-cd /media/usb/ 
-taskset -c 2 tar cvzf test5.tgz ​ /​media/​usb/​linux-2.6.30 & 
-</​code>​ 
-A lot of these tests produce a lot of output. It can be redirected to ''/​dev/​null''​ so that it does not flood the terminal. This can especially be a problem when using a serial console. 
- 
-===== Contacts ===== 
- 
-Geunsik Lim, leemgs1@gmail.com 
  
realtime/documentation/howto/howto_rt_tools_worstcaselatency.1485887604.txt.gz ยท Last modified: 2017/01/31 18:33 by vedangpatel