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