Worstcase Latency Test Scenario

From RTwiki
(Difference between revisions)
Jump to: navigation, search
(Realtime Latency Test Scenario)
Line 3: Line 3:
 
Prepare cyclictest(rt-tests), taskset, chrt, ltp-full-20090531.tar.gz ,hackbench , ping, dd, tar, netperf commands.
 
Prepare cyclictest(rt-tests), taskset, chrt, ltp-full-20090531.tar.gz ,hackbench , ping, dd, tar, netperf commands.
  
- H/W Informatoin : Core2 Quad 9300 , DDR2 2G , Sata 400G, Realtek 1G Lan.
+
- H/W Informatoin : Core2 Quad CPU
  
- Target board : 192.168.155.20(Private IP
+
- Target board : 192.168.155.20(Private IP)
  
 
- Opensource Utilities: http://blogfiles6.naver.net/data42/2009/6/19/149/opensource-list-scheduling-invain.png
 
- Opensource Utilities: http://blogfiles6.naver.net/data42/2009/6/19/149/opensource-list-scheduling-invain.png
Line 16: Line 16:
  
 
<pre>
 
<pre>
ssh root@192.168.155.20
+
ssh geunsik@192.168.155.20
cd /opt/testsuite.20080909/cyclictest/rt-tests-0.42
+
cd /opt/testsuite-20080530/cyclictest/rt-tests-0.42
  
 
# This is task to keep Latency(Max limitation: 200uSec) at the worst case.
 
# This is task to keep Latency(Max limitation: 200uSec) at the worst case.
Line 34: Line 34:
 
while true; do /usr/bin/killall hackbench; sleep 5; done &
 
while true; do /usr/bin/killall hackbench; sleep 5; done &
 
while true; do /sbin/hackbench 20; 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  &
 
cd ltp-full-20090531; while true; do ./runalltests.sh -x 40; done  &
 
----------------------------
 
----------------------------
 
# Tip) Utilize iotop & top command to monitor CPU & IO Ratio.
 
# Tip) Utilize iotop & top command to monitor CPU & IO Ratio.
# for 100% Usage of CPU Load using ping
+
# For 100% Usage of CPU Load using ping
 
taskset -c 0 /bin/ping -l 100000 -q -s 10 -f localhost &
 
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 1 /bin/ping -l 100000 -q -s 10 -f localhost &
Line 43: Line 44:
 
taskset -c 3 /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.
+
# 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 ).
 
# Don't forget disk total usage ratio (ex: df ).
 
cd /opt
 
cd /opt
Line 60: Line 61:
 
firefox http://www.intomail.net/stream.php
 
firefox http://www.intomail.net/stream.php
  
# USB Disk I/O Stress (External HDD's I/O )
+
# USB Disk I/O Stress(External HDD's I/O )
 
cd /media/usb/
 
cd /media/usb/
 
taskset -c 2 tar cvzf test5.tgz  /media/usb/linux-2.6.30 &
 
taskset -c 2 tar cvzf test5.tgz  /media/usb/linux-2.6.30 &
  
 
</pre>
 
</pre>

Revision as of 15:04, 19 June 2009

This is Realtime Latency Test Scenario during 24hours. In this experiment,I adjusted CPU Affinity Policy to reduce Latency overheads in the Multicore.

Prepare cyclictest(rt-tests), taskset, chrt, ltp-full-20090531.tar.gz ,hackbench , ping, dd, tar, netperf commands.

- H/W Informatoin : Core2 Quad CPU

- Target board : 192.168.155.20(Private IP)

- Opensource Utilities: http://blogfiles6.naver.net/data42/2009/6/19/149/opensource-list-scheduling-invain.png

- Graphical Test Map: http://blogfiles13.naver.net/data44/2009/6/19/108/latency-worstcase-testscenario-invain.png


Latency Test Scenario

Test scenario to measure a latency guarantee in the worstcase environments using simple script and commands.

ssh geunsik@192.168.155.20
cd /opt/testsuite-20080530/cyclictest/rt-tests-0.42

# This is task to keep Latency(Max limitation: 200uSec) at the worst case.
# 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

# 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  &
----------------------------
# Tip) Utilize iotop & top command to monitor CPU & IO Ratio.
# For 100% Usage of CPU Load using ping
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 ).
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 &

Personal tools