Worstcase Latency Test Scenario

From RTwiki
(Difference between revisions)
Jump to: navigation, search
(add git clone address of linux)
(edit test scenario)
Line 1: Line 1:
 
This is Realtime Latency Test Scenario during 24hours. In this experiment,I adjusted CPU Affinity Policy to reduce Latency overheads in the Multicore.
 
This is Realtime Latency Test Scenario during 24hours. In this experiment,I adjusted CPU Affinity Policy to reduce Latency overheads in the Multicore.
  
 +
= Requirements =
 
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.
  
Line 15: Line 16:
 
Test scenario to measure a latency guarantee in the worstcase environments using simple script and commands.  
 
Test scenario to measure a latency guarantee in the worstcase environments using simple script and commands.  
  
 +
== Latency Test ==
 
<pre>
 
<pre>
 
ssh geunsik@192.168.155.20
 
ssh geunsik@192.168.155.20
Line 24: Line 26:
 
time cyclictest -t1 -p 99 -i 1000 -n -l 1000000000000 -d 86400 -m -a 1
 
time cyclictest -t1 -p 99 -i 1000 -n -l 1000000000000 -d 86400 -m -a 1
  
 +
== Bacground Stress Environments ==
 
# Now, Below test code is background stress for the worst case in RT system.
 
# 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
 
time cyclictest -t50 -p 80 -i 10000 -n -l 100000000000 -d 86400  -a 3

Revision as of 00:37, 29 July 2009

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

Requirements

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.

Latency Test

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.
# 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

== Bacground Stress Environments ==
# 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 ).
# 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 &

Personal tools