如何识别Go程序CPU使用热点?

时间:2013-06-19 11:15:31

标签: go

如何识别Go程序CPU使用热点?

换句话说......

哪些工具/方法可用于分析Go程序CPU使用情况?

1 个答案:

答案 0 :(得分:11)

检查pprof包以编程方式获取分析数据。

另一种选择是自动分析包测试:

$ go help testflag
...
    -cpuprofile cpu.out
        Write a CPU profile to the specified file before exiting.

可以使用以下方法检查分析数据:

$ go tool pprof your-binary your-profiling-data

有关pprof工具的许多选项的帮助,请运行它,不带参数:

$ go tool pprof

有关pprof的许多命令的帮助,请输入'help':

(pprof) help

我建议在浏览器中使用svg选项。它是交互式的,并且强调瓶颈路径以便于检测。使用'list'命令可以获得详细信息,该命令显示函数/方法的源代码以及每行数据。

推荐阅读:Profiling Go Programs