]> rtime.felk.cvut.cz Git - can-benchmark.git/blobdiff - gw-tests/nop-highprio.sh
Plot graphs with cairo - it is faster and nicer
[can-benchmark.git] / gw-tests / nop-highprio.sh
index d770d83091fb5891c3564a2f8a25622d83d64ea8..d5661a17264ca0b41479a2398699a787614e8b86 100755 (executable)
@@ -4,28 +4,34 @@
 
 main() {
     sshgw cangw -A -s can0 -d can1
-    sshgw 'chrt -p -f 99 `pidof irq/145-can0`'
-    sshgw 'chrt -p -f 99 `pidof irq/146-can1`'
-    sshgw 'chrt -p -f 98 `pidof sirq-net-rx/0`'
-    sshgw 'chrt -p -f 98 `pidof sirq-net-tx/0`'
-    latester -d can0 -d can1 -d can2 -o -c $COUNT -l 2 -h hist2.dat -f time2.dat
-    latester -d can0 -d can1 -d can2 -o -c $COUNT -l 4 -h hist4.dat -f time4.dat
-    latester -d can0 -d can1 -d can2 -o -c $COUNT -l 6 -h hist6.dat -f time6.dat
-    latester -d can0 -d can1 -d can2 -o -c $COUNT -l 8 -h hist8.dat -f time8.dat
+    sshgw 'if pid=`pidof irq/145-can0`; then chrt -p -f 99 $pid; fi'
+    sshgw 'if pid=`pidof irq/146-can1`; then chrt -p -f 99 $pid; fi'
+
+    # Unfortunately, we must also increase FEC (Ethernet) IRQ priority
+    # to be above softirq. Otherwise the system crashes with eth load.
+    sshgw 'if pid=`pidof irq/192-mpc52xx`; then chrt -p -f 99 $pid; fi'
+    sshgw 'if pid=`pidof irq/193-mpc52xx`; then chrt -p -f 99 $pid; fi'
+
+    sshgw 'if pid=`pidof sirq-net-rx/0`; then chrt -p -f 98 $pid; fi'
+    sshgw 'if pid=`pidof sirq-net-tx/0`; then chrt -p -f 98 $pid; fi'
+    latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 2) -n len2
+    latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 4) -n len4
+    latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 6) -n len6
+    latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 8) -n len8
 }
 
 plot_cmds() {
     cat <<EOF
-set title "Single GW, no modifications, no filters, high (soft)irq task priority"
+set title "Single GW job for all messages, no modifications, high (soft)irq task priority"
 set logscale y
 set grid
-set xlabel "Time [{/Symbol m}s]"
+set xlabel "Time [ms]"
 set ylabel "Latency profile [messages]"
-plot [0:600] [1:$COUNT] \
-          "hist2.dat" with lp lt 1 title "2 byte messages", \
-          "hist4.dat" with lp lt 2 title "4 byte messages", \
-          "hist6.dat" with lp lt 3 title "6 byte messages", \
-          "hist8.dat" with lp lt 4 title "8 byte messages"
+plot [0:1] [1:$COUNT] \
+          "len2-hist.txt" with lp lt 1 title "2 byte messages", \
+          "len4-hist.txt" with lp lt 2 title "4 byte messages", \
+          "len6-hist.txt" with lp lt 3 title "6 byte messages", \
+          "len8-hist.txt" with lp lt 4 title "8 byte messages"
 EOF
 }