mirror of
https://github.com/golang/go
synced 2024-11-24 18:10:02 -07:00
testing/benchmark: paranoia - make sure n always grows
R=wcn CC=golang-dev https://golang.org/cl/223075
This commit is contained in:
parent
ef531c2b57
commit
fe746055a2
@ -78,6 +78,13 @@ func min(x, y int) int {
|
|||||||
return x
|
return x
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func max(x, y int) int {
|
||||||
|
if x < y {
|
||||||
|
return y
|
||||||
|
}
|
||||||
|
return x
|
||||||
|
}
|
||||||
|
|
||||||
// roundDown10 rounds a number down to the nearest power of 10.
|
// roundDown10 rounds a number down to the nearest power of 10.
|
||||||
func roundDown10(n int) int {
|
func roundDown10(n int) int {
|
||||||
var tens = 0
|
var tens = 0
|
||||||
@ -125,7 +132,8 @@ func (b *B) run() {
|
|||||||
}
|
}
|
||||||
// Run more iterations than we think we'll need for a second (1.5x).
|
// Run more iterations than we think we'll need for a second (1.5x).
|
||||||
// Don't grow too fast in case we had timing errors previously.
|
// Don't grow too fast in case we had timing errors previously.
|
||||||
n = min(int(1.5*float(n)), 100*last)
|
// Be sure to run at least one more than last time.
|
||||||
|
n = max(min(n+n/2, 100*last), last+1)
|
||||||
// Round up to something easy to read.
|
// Round up to something easy to read.
|
||||||
n = roundUp(n)
|
n = roundUp(n)
|
||||||
b.runN(n)
|
b.runN(n)
|
||||||
|
Loading…
Reference in New Issue
Block a user