while [ $# -gt 0 ]; do
case "$1" in
- -P) OPT_PLOT_DISABLE=1; shift;;
- -p) OPT_PLOT_ONLY=1; shift;;
+ -P|--no-plot) OPT_PLOT_DISABLE=1; shift;;
+ -p|--plot) OPT_PLOT_ONLY=1; shift;;
-X|--no-x11-plot) OPT_NO_X11=1; shift;;
-t) case "$2" in
all|flood|50|oneatatime) OPT_TRAFFIC=$2;;
traffic_and_length() {
local opts
- case $OPT_TRAFFIC in
+ case $traffic in
flood) opts='';;
50) opts="-p $((2*(44+$1*8)))";;
oneatatime) opts="-o";;
}
_run() {
- if [[ ! "$OPT_PLOT_ONLY" ]]; then
- host_kernel_versions=host-$(uname -r)
- kernel_versions=$(sshgw uname -r)
- else
- host_kernel_versions=$(cd results; ls -d host-*)
- kernel_versions=$(cd results/host-$(uname -r)/; ls)
- fi
if [[ $OPT_TRAFFIC = all ]]
then traffics="flood 50 oneatatime"
else traffics=$OPT_TRAFFIC
fi
- for hostkvers in $host_kernel_versions; do
- for OPT_TRAFFIC in $traffics; do
- for kvers in $kernel_versions; do
- dir="results/$hostkvers/$kvers/$OPT_TRAFFIC/$(basename $0 .sh)"
+ hostkvers=host-$(uname -r)
+ kvers=$(sshgw uname -r)
+ test=$(basename $0 .sh)
+ for traffic in $traffics; do
+ dir="results/$hostkvers/$kvers/$traffic/$test"
mkdir -p $dir
- script=$PWD/$0
+ script=$(echo $dir | sed -e 's/[^/]*/../g')/${test}.sh
cd $dir
echo "Working directory: $dir"
if [[ ! "$OPT_PLOT_ONLY" ]]; then
# Remove data from the last measurement
rm -rf *
touch .results
+ cat > plot.sh <<-EOF
+ #!/bin/bash
+ exec $script --plot
+ EOF
# Set can interfaces up
sshgw 'for i in 0 1; do ip link show dev can$i|grep -q UP || ip link set can$i up type can bitrate 1000000; done'
# Delete all vcan interfaces
cleanupgw
main
- cp $script .
+
fi
if [[ ! "$OPT_PLOT_DISABLE" ]]; then
- _plot
+ ./plot.sh
fi
cd -
done
- done
- done
}
test_end() {