update
[lttv.git] / markers-test / runtest.sh
1 #!/bin/sh
2
3 make clean
4 make #build no flush modules
5
6 ITER=10
7 LOOPS=20000
8
9 insmod test-mark-speed-empty.ko
10 cat /proc/testmark
11 for a in `seq 1 $ITER`; do cat /proc/testmark;done
12 rmmod test-mark-speed-empty
13 RESEMP=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
14
15 insmod test-mark-speed.ko
16 cat /proc/testmark
17 for a in `seq 1 $ITER`; do cat /proc/testmark;done
18 rmmod test-mark-speed
19 RESSTD=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
20
21 insmod test-mark-speed-opt.ko
22 cat /proc/testmark
23 for a in `seq 1 $ITER`; do cat /proc/testmark;done
24 rmmod test-mark-speed-opt
25 RESOPT=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
26
27 insmod test-mark-speed-edit.ko
28 #Patch with nops
29 cat /proc/testmark
30
31 for a in `seq 1 $ITER`; do cat /proc/testmark;done
32 rmmod test-mark-speed-edit
33 RESNOP=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
34
35 insmod test-mark-speed-local.ko
36 #Patch with nops
37 cat /proc/testmark
38
39 for a in `seq 1 $ITER`; do cat /proc/testmark;done
40 rmmod test-mark-speed-local
41 RESNOPLOCAL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
42
43
44 #make clean
45 #make EXTRA_CFLAGS=-DCACHEFLUSH
46
47 modprobe cachectl
48
49 insmod test-mark-speed-empty.ko
50 cat /proc/testmark
51 for a in `seq 1 $ITER`; do cat /proc/testmark;done
52 rmmod test-mark-speed-empty
53 RESEMPFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
54
55 insmod test-mark-speed.ko
56 cat /proc/testmark
57 for a in `seq 1 $ITER`; do cat /proc/testmark;done
58 rmmod test-mark-speed
59 RESSTDFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
60
61 insmod test-mark-speed-opt.ko
62 cat /proc/testmark
63 for a in `seq 1 $ITER`; do cat /proc/testmark;done
64 rmmod test-mark-speed-opt
65 RESOPTFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
66
67 insmod test-mark-speed-edit.ko
68 #Patch with nops
69 cat /proc/testmark
70
71 for a in `seq 1 $ITER`; do cat /proc/testmark;done
72 rmmod test-mark-speed-edit
73 RESNOPFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
74
75 insmod test-mark-speed-local.ko
76 #Patch with nops
77 cat /proc/testmark
78
79 for a in `seq 1 $ITER`; do cat /proc/testmark;done
80 rmmod test-mark-speed-local
81 RESNOPLOCALFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
82
83
84 rmmod cachectl
85
86
87 echo "Results in cycles per loop"
88
89 echo "Cycles for empty loop (will be substracted for cached runs)"
90 SUM="0"
91 for a in $RESEMP; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
92 RESEMP=`echo $SUM/$ITER/$LOOPS | bc -l /dev/stdin`
93 echo $RESEMP
94
95 echo "Cycles for wbinvd() loop (will be substracted non-cached runs)"
96 SUM="0"
97 for a in $RESEMPFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
98 RESEMPFL=`echo $SUM/$ITER/$LOOPS | bc -l /dev/stdin`
99 echo $RESEMPFL
100
101
102 echo -n "Added cycles for normal marker [cached, uncached] "
103 SUM="0"
104 for a in $RESSTD; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
105 RESSTD=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
106 echo -n "[$RESSTD, "
107
108 SUM="0"
109 for a in $RESSTDFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
110 RESSTDFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
111 echo "$RESSTDFL]"
112
113
114
115 echo -n "Added cycles for optimized marker [cached, uncached] "
116 SUM="0"
117 for a in $RESOPT; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
118 RESOPT=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
119 echo -n "[$RESOPT, "
120
121 SUM="0"
122 for a in $RESOPTFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
123 RESOPTFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
124 echo "$RESOPTFL]"
125
126
127 echo -n "Added cycles for NOP replacement of function call (1 pointer read, 5 local vars) [cached, uncached] "
128 SUM="0"
129 for a in $RESNOP; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
130 RESNOP=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
131 echo -n "[$RESNOP, "
132
133 SUM="0"
134 for a in $RESNOPFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
135 RESNOPFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
136 echo "$RESNOPFL]"
137
138
139 echo -n "Added cycles for NOP replacement of function call (6 local vars) [cached, uncached] "
140 SUM="0"
141 for a in $RESNOPLOCAL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
142 RESNOPLOCAL=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
143 echo -n "[$RESNOPLOCAL, "
144
145 SUM="0"
146 for a in $RESNOPLOCALFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
147 RESNOPLOCALFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
148 echo "$RESNOPLOCALFL]"
149
This page took 0.03225 seconds and 4 git commands to generate.