From: Josh Bleecher Snyder Date: Thu, 14 May 2015 02:27:59 +0000 (-0700) Subject: encoding/json: make BenchmarkSkipValue more stable X-Git-Tag: go1.5beta1~602 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=dbf533a5460d7fcc7d7be77014fd74a8aff8c412;p=gostls13.git encoding/json: make BenchmarkSkipValue more stable BenchmarkSkipValue was sensitive to the value of b.N due to its significant startup cost. Two adjacent runs before this CL: BenchmarkSkipValue 50 21047499 ns/op 93.37 MB/s BenchmarkSkipValue 100 17260554 ns/op 118.05 MB/s After this CL, using benchtime to recreate the difference in b.N: BenchmarkSkipValue 50 15204797 ns/op 131.67 MB/s BenchmarkSkipValue 100 15332319 ns/op 130.58 MB/s Change-Id: Iac86f86dd774d535302fa5e4c08f89f8da00be9e Reviewed-on: https://go-review.googlesource.com/10053 Reviewed-by: Andrew Gerrand --- diff --git a/src/encoding/json/scanner_test.go b/src/encoding/json/scanner_test.go index 7880342902..66383ef0ef 100644 --- a/src/encoding/json/scanner_test.go +++ b/src/encoding/json/scanner_test.go @@ -209,6 +209,7 @@ var benchScan scanner func BenchmarkSkipValue(b *testing.B) { initBig() + b.ResetTimer() for i := 0; i < b.N; i++ { nextValue(jsonBig, &benchScan) }