应用 go 架构开展基准测试可帮助评定和提高应用软件特性。撰写标准函数,应用 "func benchmark" 前缀和要测试函数的名字;导进 "testing" 包;应用 "go test -bench" 指令运作基准测试;查询 "results" 以获得基准测试结论,包含每个操控的纳秒数、每核每个操控的纳秒数、每个操控的字节数和每个操作的分配频次。
怎么使用 Go 架构开展基准测试
基准测试对评定和优化应用软件特性尤为重要。Go 架构带来了用以开展基准测试的一组工具,可帮助你轻松高效地测量应用程序的特性特点。
标准函数
要进行基准测试,你需要撰写标准函数。标准函数应用 func Benchmark 前缀申明,后跟您要检测的函数的名字。
funcBenchmarkFibonacci(btesting.B){
fori:=0;i
fibonacci(i)
}
}
在上面的示例中,BenchmarkFibonacci 函数将检测 fibonacci 函数性能。testing.B 参数代表基准测试目标,它提供了用以控制测试的一些方法。
导进基准测试包
要进行基准测试,你需要导进 testing 包。
import"testing"
运作基准测试
要运作基准测试,请选择 go test-bench指令。此指令将运作基准测试并打印结论。
$ go test-bench
PASS
okinteger_bench2.446s
应用 Results 查看结果
基准测试数据显示在屏幕上,主要包括以下信息:
ns/op: 每个操控的纳秒数ns/op per core: 每核的每个操控的纳秒数B/op: 每个操控的字节数allocs/op: 每个操作的分配频次实战案例
假定您有一个简单的函数来计算斐波那契数列第 n 项:
funcfibonacci(nint)int{
if n <=1{
returnn
}
returnfibonacci(n-1)+fibonacci(n-2)
}
您可以使用下列标准函数检测此函数性能:
funcBenchmarkFibonacci(btesting.B){
fori:=0;i
fibonacci(i)
}
}
运作基准测试:
$ go test-bench
PASS
okinteger_bench2.446s
BenchmarkFibonacci14445130ns/op12329230ns/oppercore
结果显示,测算斐波那契数列第 n 项的均值时间约为 14.4 纳秒。
以上就是怎么使用 Go 架构开展基准测试的详细内容,大量请关注其他类似文章!