Go 工具 Pprof 输出不一致
查询围绕着 Go 中提供分析功能的“pprof”工具的莫名其妙的输出。尽管过去性能准确,但该工具最近开始生成不确定的结果。
无论正在分析的应用程序是什么,即使是具有大量函数调用的相对复杂的应用程序,“pprof”工具也会返回乏味的调用图和贫瘠的结果,尽管应用程序本身运行正常。
即使升级到 MacOS Yosemite 和 El Capitan 后,问题仍然存在。 Go v1.5.1 使用包“github.com/davecheney/profile”。
为了生成配置文件,代码在“profile.Start”和“profile.Stop”的开头包含“profile.Start”和“profile.Stop”。 main' 函数,然后是二进制文件的构建和运行。但是,生成的输出类似于以下内容:
(pprof) top 269.97kB of 269.97kB total ( 100%) flat flat% sum% cum cum% 269.97kB 100% 100% 269.97kB 100% (pprof)
提供的解决方案通过强调“pprof”调用中不存在二进制文件来解决此差异。正确的命令结构是:
go tool pprof ./orig /path/to/profile.pprof
此更正可确保“pprof”以编译的二进制文件为目标,使其能够提供所需的分析信息。
以上是尽管应用程序性能准确,但为什么我的 Go `pprof` 输出显示空白结果?的详细内容。更多信息请关注PHP中文网其他相关文章!