f175e050 |
1 | #!/bin/sh |
2 | |
64242d95 |
3 | make clean |
4 | make #build no flush modules |
5 | |
db68aac5 |
6 | ITER=10 |
7 | LOOPS=2000 |
8 | |
8dd5f9aa |
9 | insmod test-mark-speed-empty.ko |
db68aac5 |
10 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
8dd5f9aa |
11 | rmmod test-mark-speed-empty |
46f7c178 |
12 | RESEMP=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
8dd5f9aa |
13 | |
f175e050 |
14 | insmod test-mark-speed.ko |
db68aac5 |
15 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
f175e050 |
16 | rmmod test-mark-speed |
46f7c178 |
17 | RESSTD=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
f175e050 |
18 | |
19 | insmod test-mark-speed-opt.ko |
db68aac5 |
20 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
f175e050 |
21 | rmmod test-mark-speed-opt |
46f7c178 |
22 | RESOPT=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
f175e050 |
23 | |
24 | insmod test-mark-speed-edit.ko |
a1d38aec |
25 | #Patch with nops |
db68aac5 |
26 | cat /proc/testmark |
27 | |
28 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
f175e050 |
29 | rmmod test-mark-speed-edit |
46f7c178 |
30 | RESNOP=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
f175e050 |
31 | |
32 | |
64242d95 |
33 | make clean |
34 | make EXTRA_CFLAGS=-DCACHEFLUSH |
35 | |
36 | insmod test-mark-speed-empty.ko |
37 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
38 | rmmod test-mark-speed-empty |
39 | RESEMPFL=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
40 | |
41 | insmod test-mark-speed.ko |
42 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
43 | rmmod test-mark-speed |
44 | RESSTDFL=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
45 | |
46 | insmod test-mark-speed-opt.ko |
47 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
48 | rmmod test-mark-speed-opt |
49 | RESOPTFL=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
50 | |
51 | insmod test-mark-speed-edit.ko |
52 | #Patch with nops |
53 | cat /proc/testmark |
54 | |
55 | for a in `seq 1 $ITER`; do cat /proc/testmark;done |
56 | rmmod test-mark-speed-edit |
57 | RESNOPFL=`dmesg |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'` |
58 | |
59 | |
60 | |
61 | |
62 | echo "Results in cycles per loop" |
8dd5f9aa |
63 | |
64242d95 |
64 | echo "Cycles for empty loop (will be substracted for cached runs)" |
8dd5f9aa |
65 | SUM="0" |
66 | for a in $RESEMP; do SUM=$[$SUM + $a]; done |
db68aac5 |
67 | RESEMP=`echo $SUM/$ITER/$LOOPS | bc -l /dev/stdin` |
d09a9b2c |
68 | echo $RESEMP |
8dd5f9aa |
69 | |
64242d95 |
70 | echo "Cycles for wbinvd() loop (will be substracted non-cached runs)" |
71 | SUM="0" |
72 | for a in $RESEMPFL; do SUM=$[$SUM + $a]; done |
73 | RESEMPFL=`echo $SUM/$ITER/$LOOPS | bc -l /dev/stdin` |
74 | echo $RESEMPFL |
f175e050 |
75 | |
64242d95 |
76 | |
77 | echo "Added cycles for normal marker (cached)" |
f175e050 |
78 | SUM="0" |
79 | for a in $RESSTD; do SUM=$[$SUM + $a]; done |
db68aac5 |
80 | RESSTD=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin` |
f175e050 |
81 | echo $RESSTD |
82 | |
64242d95 |
83 | echo "Added cycles for normal marker (uncached)" |
84 | SUM="0" |
85 | for a in $RESSTDFL; do SUM=$[$SUM + $a]; done |
86 | RESSTDFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin` |
87 | echo $RESSTDFL |
88 | |
89 | |
90 | |
91 | echo "Added cycles for optimized marker (cached)" |
f175e050 |
92 | SUM="0" |
93 | for a in $RESOPT; do SUM=$[$SUM + $a]; done |
db68aac5 |
94 | RESOPT=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin` |
f175e050 |
95 | echo $RESOPT |
96 | |
64242d95 |
97 | echo "Added cycles for optimized marker (uncached)" |
98 | SUM="0" |
99 | for a in $RESOPTFL; do SUM=$[$SUM + $a]; done |
100 | RESOPTFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin` |
101 | echo $RESOPTFL |
102 | |
103 | |
104 | echo "Added cycles for NOP replacement of function call (cached)" |
f175e050 |
105 | SUM="0" |
106 | for a in $RESNOP; do SUM=$[$SUM + $a]; done |
db68aac5 |
107 | RESNOP=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin` |
f175e050 |
108 | echo $RESNOP |
109 | |
64242d95 |
110 | echo "Added cycles for NOP replacement of function call (uncached)" |
111 | SUM="0" |
112 | for a in $RESNOPFL; do SUM=$[$SUM + $a]; done |
113 | RESNOPFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin` |
114 | echo $RESNOPFL |
115 | |
116 | |