Hi Folks, I'm getting weird results from Benchmark. Maybe someone can help me understand this. I'm running on amd-64 (Threadripper 16 core 32 thread) Windows 10. Go 1.14.3
I have the benchmark below (main_test.go) on a minimum "hello world" main.go (just like playground). When I run the benchmark as it is below, I get the results included just below here. Notice it reports 0.135 ns/op but the time is actually 135 *ms* so it is off by a factor of 1 billion. It is like it trying to report in seconds but did not change the label from ns to s. Further, if I increase the loop 10x from 10_000_000 to 100_000_000, then it prints Duration 1.349 seconds (good) and now the Benchmark time has increased by a factor of 10 *billion *and is now correctly reported as 1349224200 ns/op What am I missing here? BenchmarkMarshalSample-32 1000000000 0.135 ns/op 0 B/op 0 allocs/op --- BENCH: BenchmarkMarshalSample-32 main_test.go:14: Duration 136.1221ms main_test.go:14: Duration 135.1214ms main_test.go:14: Duration 134.1763ms main_test.go:14: Duration 135.1217ms main_test.go:14: Duration 135.1298ms main_test.go:14: Duration 135.1217ms main_test.go:14: Duration 135.1218ms main_test.go:14: Duration 135.1213ms main_test.go:14: Duration 135.1298ms main_test.go:14: Duration 135.1216ms ... [output truncated] PASS package main import ( "math/rand" "testing" "time" ) func BenchmarkMarshalSample(b *testing.B) { start := time.Now() for i := 0; i < 10_000_000; i++ { rand.Int63() } b.Log("Duration", time.Now().Sub(start)) } -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/33c4ab46-18ae-46c2-99e9-e467d6f3e184%40googlegroups.com.