summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhunt <hunt>2005-06-28 21:36:23 +0000
committerhunt <hunt>2005-06-28 21:36:23 +0000
commit78d274476a657494e3e6fbad4dcdf01ac5158eab (patch)
tree472f595ee2d2fac60186e0455905c881583a2aa8
parentdbe1778625303ddfc5bb27db6f1a4a0920e6d69f (diff)
downloadsystemtap-steved-78d274476a657494e3e6fbad4dcdf01ac5158eab.tar.gz
systemtap-steved-78d274476a657494e3e6fbad4dcdf01ac5158eab.tar.xz
systemtap-steved-78d274476a657494e3e6fbad4dcdf01ac5158eab.zip
*** empty log message ***
-rwxr-xr-xruntime/probes/bench/run_bench25
1 files changed, 15 insertions, 10 deletions
diff --git a/runtime/probes/bench/run_bench b/runtime/probes/bench/run_bench
index fc27731d..48a60adb 100755
--- a/runtime/probes/bench/run_bench
+++ b/runtime/probes/bench/run_bench
@@ -57,9 +57,12 @@ if {[catch {exec ./time} res1]} {
exit -1
}
+set r_overhead [lindex $res1 0]
+set w_overhead [lindex $res1 1]
+
set res2 [do_time bench]
-set t_kprobe [expr [lindex $res2 0] - [lindex $res1 0]]
-set t_jprobe [expr [lindex $res2 1] - [lindex $res1 1]]
+set t_kprobe [expr [lindex $res2 0] - $r_overhead]
+set t_jprobe [expr [lindex $res2 1] - $w_overhead]
puts "Jprobes overhead = $t_jprobe ns"
puts "Kprobes overhead = $t_kprobe ns"
@@ -67,8 +70,8 @@ puts "--------------------------------------"
if {[file exists bench_ret.ko]} {
set res2 [do_time bench_ret]
- set t_ret [expr [lindex $res2 0] - [lindex $res1 0]]
- set t_entret [expr [lindex $res2 1] - [lindex $res1 1]]
+ set t_ret [expr [lindex $res2 0] - $r_overhead]
+ set t_entret [expr [lindex $res2 1] - $w_overhead]
puts "Return probe overhead = $t_ret ns"
puts "Entry+Return probe overhead = $t_entret ns"
@@ -76,16 +79,17 @@ if {[file exists bench_ret.ko]} {
}
set res2 [do_time bench_multi]
-set t_k2 [expr [lindex $res2 0] - [lindex $res1 0]]
-set t_k4 [expr [lindex $res2 1] - [lindex $res1 1]]
+set t_k2 [expr [lindex $res2 0] - $r_overhead]
+set t_k4 [expr [lindex $res2 1] - $w_overhead]
puts "2 kprobes on same func = $t_k2 ns"
puts "4 kprobes on same func = $t_k4 ns"
puts "--------------------------------------"
set res2 [do_time bench_io1]
-set t_printf [expr [lindex $res2 0] - [lindex $res1 0] - $t_kprobe]
-set t_print [expr [lindex $res2 1] - [lindex $res1 1] - $t_kprobe]
+# subtract function call overhead and kprobe overhead
+set t_printf [expr [lindex $res2 0] - $r_overhead - $t_kprobe]
+set t_print [expr [lindex $res2 1] - $w_overhead - $t_kprobe]
puts "NETLINK"
puts "_stp_printf on 100 chars = $t_printf ns"
@@ -94,8 +98,9 @@ puts "--------------------------------------"
exec sleep 4
set res2 [do_time bench_io2]
-set t_printf [expr [lindex $res2 0] - [lindex $res1 0] - $t_kprobe]
-set t_print [expr [lindex $res2 1] - [lindex $res1 1] - $t_kprobe]
+# subtract function call overhead and kprobe overhead
+set t_printf [expr [lindex $res2 0] - $r_overhead - $t_kprobe]
+set t_print [expr [lindex $res2 1] - $w_overhead - $t_kprobe]
puts "RELAYFS"
puts "_stp_printf on 100 chars = $t_printf ns"