1
0
mirror of https://github.com/golang/go synced 2024-11-19 14:24:47 -07:00

runtime: add a map growth benchmark

Updates #19931
Updates #19992

Change-Id: Ib2d4e6b9b89a49caa443310d896dce8d6db06050
Reviewed-on: https://go-review.googlesource.com/40978
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
This commit is contained in:
Josh Bleecher Snyder 2017-04-18 06:57:43 -07:00
parent 17d497feaa
commit 2abd91e265

View File

@ -5,6 +5,7 @@ package runtime_test
import (
"fmt"
"strconv"
"strings"
"testing"
)
@ -308,6 +309,20 @@ func BenchmarkSmallKeyMap(b *testing.B) {
}
}
func BenchmarkMapPopulate(b *testing.B) {
for size := 1; size < 1000000; size *= 10 {
b.Run(strconv.Itoa(size), func(b *testing.B) {
b.ReportAllocs()
for i := 0; i < b.N; i++ {
m := make(map[int]bool)
for j := 0; j < size; j++ {
m[j] = true
}
}
})
}
}
type ComplexAlgKey struct {
a, b, c int64
_ int