diff options
author | hunt <hunt> | 2005-08-22 22:19:57 +0000 |
---|---|---|
committer | hunt <hunt> | 2005-08-22 22:19:57 +0000 |
commit | b5e93a155bcaf04e3b2795a70489a8800eb60e97 (patch) | |
tree | f39b8053692ae3fe02f507f0a3ea9bb363701c2d /runtime/probes/bench/run_bench | |
parent | df8fadee215f81b07f809f4d3ebb016e390f2c9b (diff) | |
download | systemtap-steved-b5e93a155bcaf04e3b2795a70489a8800eb60e97.tar.gz systemtap-steved-b5e93a155bcaf04e3b2795a70489a8800eb60e97.tar.xz systemtap-steved-b5e93a155bcaf04e3b2795a70489a8800eb60e97.zip |
New benchmark: trans_bench.
Diffstat (limited to 'runtime/probes/bench/run_bench')
-rwxr-xr-x | runtime/probes/bench/run_bench | 47 |
1 files changed, 39 insertions, 8 deletions
diff --git a/runtime/probes/bench/run_bench b/runtime/probes/bench/run_bench index 471da231..8bbc2dd4 100755 --- a/runtime/probes/bench/run_bench +++ b/runtime/probes/bench/run_bench @@ -2,6 +2,8 @@ # -*- tcl -*- proc do_time {module n} { + global Failures + # start kprobes if {[catch {exec ../../stpd/stpd -mq $module.ko > xxx &} pid]} { puts $pid @@ -21,9 +23,29 @@ proc do_time {module n} { puts $res } + exec sleep 2 + + # look for warnings + exec tail xxx >xxx.tail + if {[catch {open xxx.tail r} fd]} { + puts "Cannot open test output\n" + exit -1 + } + + set Failures 0 + while {[gets $fd line] >= 0} { + if {[regexp {^\033\[33mWARNING: \033\[0mThere were ([0-9]*) transport failures.} $line match var]} { + set Failures $var + break + } + } + close $fd + exec /bin/rm -f xxx xxx.out return $res2 } +######## START HERE ########### + set nproc [exec grep ^processor /proc/cpuinfo | wc -l] if {![catch {exec grep "physical id" /proc/cpuinfo} phyid]} { @@ -37,16 +59,21 @@ set model [string range $model [expr [string first : $model]+1] end] set model [string trimleft $model] puts "STP BENCH for [exec uname -r] on [exec uname -m]" -puts "[exec uptime]" +if {[file exists /etc/redhat-release]} { + puts [exec cat /etc/redhat-release] +} +puts "[exec uname -n]: [exec uptime]" if {$nproc > 1} { puts "processors: $nproc ([array size cpu] physical) $model" } else { puts "processors: $nproc $model" } +set mem [split [exec cat /proc/meminfo] \n] +puts "[lindex $mem 0] [lindex $mem 1]" puts "--------------------------------------" # load the modules -if {[catch {exec ./check_modules} res]} { +if {[catch {exec stp_check} res]} { puts $res exit -1 } @@ -60,6 +87,9 @@ if {[catch {exec ./ttest 4} res1]} { set r_overhead [lindex $res1 0] set w_overhead [lindex $res1 1] +puts "function call overhead = $r_overhead ns" +puts "--------------------------------------" + set res2 [do_time bench 4] set t_kprobe [expr [lindex $res2 0] - $r_overhead] set t_jprobe [expr [lindex $res2 1] - $w_overhead] @@ -91,9 +121,10 @@ set res2 [do_time bench_io1 1] 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" -puts "_stp_print on 100 chars = $t_print ns" +puts "PROCFS" +puts "_stp_printf on 100 chars = $t_printf ns." +puts "_stp_print on 100 chars = $t_print ns." +puts "Transport failures: $Failures" puts "--------------------------------------" exec sleep 4 @@ -103,9 +134,9 @@ 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" -puts "_stp_print on 100 chars = $t_print ns" +puts "_stp_printf on 100 chars = $t_printf ns." +puts "_stp_print on 100 chars = $t_print ns." +puts "Transport failures: $Failures" puts "--------------------------------------" -exec rm xxx exec /bin/rm -f stpd_cpu* |