]> 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 f0077b52b9fcb16d52c6016e47b283f6d34061c6..d5661a17264ca0b41479a2398699a787614e8b86 100755 (executable)
@@ -4,10 +4,16 @@
 
 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` || :'
+    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
@@ -19,9 +25,9 @@ plot_cmds() {
 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] \
+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", \