]> rtime.felk.cvut.cz Git - can-benchmark.git/blob - gw-tests/nop-highprio.sh
Plot graphs with cairo - it is faster and nicer
[can-benchmark.git] / gw-tests / nop-highprio.sh
1 #!/bin/bash
2
3 . lib.sh
4
5 main() {
6     sshgw cangw -A -s can0 -d can1
7     sshgw 'if pid=`pidof irq/145-can0`; then chrt -p -f 99 $pid; fi'
8     sshgw 'if pid=`pidof irq/146-can1`; then chrt -p -f 99 $pid; fi'
9
10     # Unfortunately, we must also increase FEC (Ethernet) IRQ priority
11     # to be above softirq. Otherwise the system crashes with eth load.
12     sshgw 'if pid=`pidof irq/192-mpc52xx`; then chrt -p -f 99 $pid; fi'
13     sshgw 'if pid=`pidof irq/193-mpc52xx`; then chrt -p -f 99 $pid; fi'
14
15     sshgw 'if pid=`pidof sirq-net-rx/0`; then chrt -p -f 98 $pid; fi'
16     sshgw 'if pid=`pidof sirq-net-tx/0`; then chrt -p -f 98 $pid; fi'
17     latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 2) -n len2
18     latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 4) -n len4
19     latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 6) -n len6
20     latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 8) -n len8
21 }
22
23 plot_cmds() {
24     cat <<EOF
25 set title "Single GW job for all messages, no modifications, high (soft)irq task priority"
26 set logscale y
27 set grid
28 set xlabel "Time [ms]"
29 set ylabel "Latency profile [messages]"
30 plot [0:1] [1:$COUNT] \
31           "len2-hist.txt" with lp lt 1 title "2 byte messages", \
32           "len4-hist.txt" with lp lt 2 title "4 byte messages", \
33           "len6-hist.txt" with lp lt 3 title "6 byte messages", \
34           "len8-hist.txt" with lp lt 4 title "8 byte messages"
35 EOF
36 }
37     
38 test_end
39