我正在玩围棋中的基准测试,我有一个简单的函数,它只会Hibernate 5纳秒,但当我运行基准测试时,它显示为298.1 ns/op
.我很好奇为什么会这样.不是应该是5 ns/op
吗?
GO版本:
go version go1.19 linux/amd64
个
代码:
package andrei
import (
"testing"
"time"
)
func Hi() {
time.Sleep(5 * time.Nanosecond)
}
func BenchmarkHi(b *testing.B) {
for i := 0; i < b.N; i++ {
Hi()
}
}
结果是:
$ go test -run none -bench . -benchmem ./andrei
goos: linux
goarch: amd64
pkg: andrei/andrei
cpu: 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz
BenchmarkHi-8 3861392 298.1 ns/op 0 B/op 0 allocs/op
PASS
ok andrei/andrei 1.470s