awk/testdir/ctimes

41 lines
678 B
Plaintext
Executable File

awk '
BEGIN {
OFS = "\t"
print " new old new/old"
print ""
}
/differ/
/:$/ { name = $1; cnt = 0; next }
$1 ~ /user|sys/ {
n = split($2, x, "m") # 0m0.23s
if (n == 1)
time[cnt] += x[1]
else
time[cnt] += 60 * x[1] + x[2]
}
$1 ~ /sys/ {
cnt++
if (cnt == 2)
dump()
}
function dump() {
old = time[1]
new = time[0]
if (old > 0) {
printf "%8.2f %8.2f %8.3f %s\n", new, old, new/old, name
rat += new/old
}
nrat++
totnew += new
totold += old
time[0] = time[1] = cnt = 0
}
END {
print ""
printf "%8.2f %8.2f\n\n", totnew, totold
printf "avg new/old = %.3f\n", rat/nrat
printf "total new/old = %.3f\n", totnew/totold
print nrat " tests"
}
' $*