Go夜读 第 83 期对 Go 程序进行可靠的性能测试

mai_yang for Go 夜读 · 2020年03月28日 · 最后由 orangleliu 回复于 2020年04月05日 · 1302 次阅读
本帖已被设为精华帖!

YouTube

分享嘉宾

欧长坤,Go 夜读 SIG 小组成员

大纲

性能测试是 Go 语言工具链中比较重要的一环。我们已经知道了如何编写一个形如 func BenchmarkFunc(b *testing.B) 形式的的性能测试。那他的目标是什么?是否对其进行独立运行就已经足够了?如果不是,那如何才能正确的进行性能测试?又如何判断我们性能测试得到的结果是可靠的?

benchstat 作为 Go 语言工具链的一环,为我们提供了进行可靠性能测试的必要条件之一。那么 benchstat 又是什么?benchstat 能够为我们做哪些事情?它的基本原理又是什么?有了 benchstat 之后我们就可以「高枕无忧」了吗?我们还需要什么其他的工具吗?

本次分享我们将就上述这些问题展开,讨论如何在 Go 语言中进行可靠的性能测试。

  • 准备可靠的测试环境
  • benchstat
  • 例子与实践
    • 对代码块进行性能调优
    • Benchmark 的正确性分析
    • 其他的影响因素
  • benchstat 中假设检验的原理
  • 局限性及应对措施

Slides

https://changkun.de/s/gobench/

QA

https://github.com/talk-go/night/issues/564

更多原创文章干货分享,请关注公众号

更多原创文章干货分享,请关注公众号
  • 加微信实战群请加微信(注明:实战群):gocnio
kevin 将本帖设为了精华贴 03月28日 17:48
mahuaibo GoCN 每日新闻 (2020-04-04) 中提及了此贴 04月04日 15:18
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册