move everything out of trunk
[lttv.git] / markers-test / runtest.sh
index c52079ab9d72b40c490eb71ed805f21e605e4cce..ceb4afcf1e63a5d6cece296af2a4a46062b98345 100644 (file)
 #!/bin/sh
 
+make clean
+make #build no flush modules
+
+ITER=10
+LOOPS=20000
+
+insmod test-mark-speed-empty.ko
+cat /proc/testmark
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
+rmmod test-mark-speed-empty
+RESEMP=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
+
 insmod test-mark-speed.ko
-for a in `seq 1 10`; do cat /proc/testmark;done
+cat /proc/testmark
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
 rmmod test-mark-speed
-RESSTD=`dmesg |tail -n 10 |sed 's/^\[.*\] cycles : \(.*\)$/\1/'`
+RESSTD=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
 
 insmod test-mark-speed-opt.ko
-for a in `seq 1 10`; do cat /proc/testmark;done
+cat /proc/testmark
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
 rmmod test-mark-speed-opt
-RESOPT=`dmesg |tail -n 10|sed 's/^\[.*\] cycles : \(.*\)$/\1/'`
+RESOPT=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
 
 insmod test-mark-speed-edit.ko
-for a in `seq 1 10`; do cat /proc/testmark;done
+#Patch with nops
+cat /proc/testmark
+
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
 rmmod test-mark-speed-edit
-RESNOP=`dmesg |tail -n 10|sed 's/^\[.*\] cycles : \(.*\)$/\1/'`
+RESNOP=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
+
+insmod test-mark-speed-local.ko
+#Patch with nops
+cat /proc/testmark
+
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
+rmmod test-mark-speed-local
+RESNOPLOCAL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
+
+
+make clean
+make EXTRA_CFLAGS=-DCACHEFLUSH
+
+
+insmod test-mark-speed-empty.ko
+cat /proc/testmark
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
+rmmod test-mark-speed-empty
+RESEMPFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
+
+insmod test-mark-speed.ko
+cat /proc/testmark
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
+rmmod test-mark-speed
+RESSTDFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
+
+insmod test-mark-speed-opt.ko
+cat /proc/testmark
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
+rmmod test-mark-speed-opt
+RESOPTFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
+
+insmod test-mark-speed-edit.ko
+#Patch with nops
+cat /proc/testmark
+
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
+rmmod test-mark-speed-edit
+RESNOPFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
+
+insmod test-mark-speed-local.ko
+#Patch with nops
+cat /proc/testmark
 
+for a in `seq 1 $ITER`; do cat /proc/testmark;done
+rmmod test-mark-speed-local
+RESNOPLOCALFL=`dmesg |grep "cycles : " |tail -n 10 |sed 's/^\[.*\] //'| sed 's/cycles : \(.*\)$/\1/'`
 
-echo "Numbers for normal marker"
+
+
+echo "Results in cycles per loop"
+
+echo "Cycles for empty loop (will be substracted for cached runs)"
+SUM="0"
+for a in $RESEMP; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESEMP=`echo $SUM/$ITER/$LOOPS | bc -l /dev/stdin`
+echo $RESEMP
+
+echo "Cycles for clflush() loop (will be substracted non-cached runs)"
+SUM="0"
+for a in $RESEMPFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESEMPFL=`echo $SUM/$ITER/$LOOPS | bc -l /dev/stdin`
+echo $RESEMPFL
+
+
+echo -n "Added cycles for normal marker [cached, uncached]    "
+SUM="0"
+for a in $RESSTD; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESSTD=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
+echo -n "[$RESSTD, "
+
+SUM="0"
+for a in $RESSTDFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESSTDFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
+echo "$RESSTDFL]"
+
+
+
+echo -n "Added cycles for optimized marker [cached, uncached]    "
+SUM="0"
+for a in $RESOPT; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESOPT=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
+echo -n "[$RESOPT, "
+
+SUM="0"
+for a in $RESOPTFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESOPTFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
+echo "$RESOPTFL]"
+
+
+echo -n "Added cycles for NOP replacement of function call (1 pointer read, 5 local vars) [cached, uncached]    "
+SUM="0"
+for a in $RESNOP; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESNOP=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
+echo -n "[$RESNOP, "
 
 SUM="0"
-for a in $RESSTD; do SUM=$[$SUM + $a]; done
-RESSTD=$[$SUM / 10]
+for a in $RESNOPFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESNOPFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
+echo "$RESNOPFL]"
 
-echo $RESSTD
 
-echo "Numbers for optimized marker"
+echo -n "Added cycles for NOP replacement of function call (6 local vars) [cached, uncached]    "
 SUM="0"
-for a in $RESOPT; do SUM=$[$SUM + $a]; done
-RESOPT=$[$SUM / 10]
-echo $RESOPT
+for a in $RESNOPLOCAL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESNOPLOCAL=`echo $SUM/$ITER/$LOOPS - $RESEMP | bc -l /dev/stdin`
+echo -n "[$RESNOPLOCAL, "
 
-echo "Numbers for NOP replacement of function call"
 SUM="0"
-for a in $RESNOP; do SUM=$[$SUM + $a]; done
-RESNOP=$[$SUM / 10]
-echo $RESNOP
+for a in $RESNOPLOCALFL; do SUM=`echo "$SUM + $a" | bc -l /dev/stdin`; done
+RESNOPLOCALFL=`echo $SUM/$ITER/$LOOPS - $RESEMPFL | bc -l /dev/stdin`
+echo "$RESNOPLOCALFL]"
 
This page took 0.024039 seconds and 4 git commands to generate.