Skip to content

Commit ddac18d

Browse files
committed
Benchmarks for everyone!
1 parent 8d94aa3 commit ddac18d

File tree

9 files changed

+68
-1
lines changed

9 files changed

+68
-1
lines changed

counter_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@ package metrics
22

33
import "testing"
44

5+
func BenchmarkCounter(b *testing.B) {
6+
c := NewCounter()
7+
b.ResetTimer()
8+
for i := 0; i < b.N; i++ {
9+
c.Inc(1)
10+
}
11+
}
12+
513
func TestCounterClear(t *testing.T) {
614
c := NewCounter()
715
c.Inc(1)

debug_test.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package metrics
2+
3+
import "testing"
4+
5+
func BenchmarkDebugGCStats(b *testing.B) {
6+
r := NewRegistry()
7+
RegisterDebugGCStats(r)
8+
b.ResetTimer()
9+
for i := 0; i < b.N; i++ {
10+
CaptureDebugGCStatsOnce(r)
11+
}
12+
}

ewma_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import "testing"
44

55
func BenchmarkEWMA(b *testing.B) {
66
a := NewEWMA1()
7+
b.ResetTimer()
78
for i := 0; i < b.N; i++ {
89
a.Update(1)
910
a.Tick()

gauge_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@ package metrics
22

33
import "testing"
44

5+
func BenchmarkGuage(b *testing.B) {
6+
g := NewGauge()
7+
b.ResetTimer()
8+
for i := 0; i < b.N; i++ {
9+
g.Update(int64(i))
10+
}
11+
}
12+
513
func TestGauge(t *testing.T) {
614
g := NewGauge()
715
g.Update(int64(47))

histogram_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@ import "testing"
44

55
func BenchmarkHistogram(b *testing.B) {
66
h := NewHistogram(NewUniformSample(100))
7+
b.ResetTimer()
78
for i := 0; i < b.N; i++ {
8-
h.Update(1)
9+
h.Update(int64(i))
910
}
1011
}
1112

meter_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,14 @@ import (
55
"time"
66
)
77

8+
func BenchmarkMeter(b *testing.B) {
9+
m := NewMeter()
10+
b.ResetTimer()
11+
for i := 0; i < b.N; i++ {
12+
m.Mark(1)
13+
}
14+
}
15+
816
func TestMeterDecay(t *testing.T) {
917
m := &StandardMeter{
1018
make(chan int64),

registry_test.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,15 @@ package metrics
22

33
import "testing"
44

5+
func BenchmarkRegistry(b *testing.B) {
6+
r := NewRegistry()
7+
r.Register("foo", NewCounter())
8+
b.ResetTimer()
9+
for i := 0; i < b.N; i++ {
10+
r.Each(func(string, interface{}) {})
11+
}
12+
}
13+
514
func TestRegistry(t *testing.T) {
615
r := NewRegistry()
716
r.Register("foo", NewCounter())

runtime_test.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package metrics
2+
3+
import "testing"
4+
5+
func BenchmarkRuntimeMemStats(b *testing.B) {
6+
r := NewRegistry()
7+
RegisterRuntimeMemStats(r)
8+
b.ResetTimer()
9+
for i := 0; i < b.N; i++ {
10+
CaptureRuntimeMemStatsOnce(r)
11+
}
12+
}

timer_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,14 @@ import (
66
"time"
77
)
88

9+
func BenchmarkTimer(b *testing.B) {
10+
tm := NewTimer()
11+
b.ResetTimer()
12+
for i := 0; i < b.N; i++ {
13+
tm.Update(1)
14+
}
15+
}
16+
917
func TestTimerExtremes(t *testing.T) {
1018
tm := NewTimer()
1119
tm.Update(math.MaxInt64)

0 commit comments

Comments
 (0)