mirror of
https://github.com/golang/go
synced 2024-11-24 23:07:56 -07:00
misc/benchcmp: show byte allocation statistics
R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6971048
This commit is contained in:
parent
4b7c2dfcea
commit
e09f1e7a46
@ -35,18 +35,28 @@ $1 ~ /Benchmark/ && $4 == "ns/op" {
|
|||||||
|
|
||||||
# allocs/op might be at $8 or $10 depending on if
|
# allocs/op might be at $8 or $10 depending on if
|
||||||
# SetBytes was used or not.
|
# SetBytes was used or not.
|
||||||
if($8 == "allocs/op")
|
# B/op might be at $6 or $8, it should be immediately
|
||||||
|
# followed by allocs/op
|
||||||
|
if($8 == "allocs/op") {
|
||||||
|
newbytes[$1] = $5
|
||||||
newalloc[$1] = $7
|
newalloc[$1] = $7
|
||||||
if($10 == "allocs/op")
|
}
|
||||||
|
if($10 == "allocs/op") {
|
||||||
|
newbytes[$1] = $7
|
||||||
newalloc[$1] = $9
|
newalloc[$1] = $9
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
old[$1] = $3
|
old[$1] = $3
|
||||||
if($6 == "MB/s")
|
if($6 == "MB/s")
|
||||||
oldmb[$1] = $5
|
oldmb[$1] = $5
|
||||||
if($8 == "allocs/op")
|
if($8 == "allocs/op") {
|
||||||
|
oldbytes[$1] = $5
|
||||||
oldalloc[$1] = $7
|
oldalloc[$1] = $7
|
||||||
if($10 == "allocs/op")
|
}
|
||||||
|
if($10 == "allocs/op") {
|
||||||
|
oldbytes[$1] = $7
|
||||||
oldalloc[$1] = $9
|
oldalloc[$1] = $9
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -94,5 +104,21 @@ END {
|
|||||||
printf("%-*s %12d %12d %6s%%\n", len, what,
|
printf("%-*s %12d %12d %6s%%\n", len, what,
|
||||||
oldalloc[what], newalloc[what], delta)
|
oldalloc[what], newalloc[what], delta)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# print alloc bytes
|
||||||
|
anybytes = 0
|
||||||
|
for(i=0; i<n; i++) {
|
||||||
|
what = name[i]
|
||||||
|
if(!(what in newbytes))
|
||||||
|
continue
|
||||||
|
if(anybytes++ == 0)
|
||||||
|
printf("\n%-*s %12s %12s %7s\n", len, "benchmark", "old bytes", "new bytes", "delta")
|
||||||
|
if(oldbytes[what] == 0)
|
||||||
|
delta="n/a"
|
||||||
|
else
|
||||||
|
delta=sprintf("%.2f", 100*newbytes[what]/oldbytes[what]-100)
|
||||||
|
printf("%-*s %12d %12d %6s%%\n", len, what,
|
||||||
|
oldbytes[what], newbytes[what], delta)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
' "$@"
|
' "$@"
|
||||||
|
Loading…
Reference in New Issue
Block a user