首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在GO - No symbols中分析

在GO - No symbols中分析
EN

Stack Overflow用户
提问于 2012-07-24 22:49:13
回答 3查看 753关注 0票数 1

我正在尝试使用下面描述的过程来分析GO程序:

http://blog.golang.org/2011/06/profiling-go-programs.html

但是,pprof在输出中显示的是地址而不是函数名:

代码语言:javascript
运行
复制
(pprof) top10
Total: 2113 samples
     298  14.1%  14.1%      298  14.1% 0000000000464d34
     179   8.5%  22.6%      179   8.5% 0000000000418e83
     157   7.4%  30.0%      157   7.4% 0000000000418e60
     112   5.3%  35.3%      112   5.3% 0000000000403293
     101   4.8%  40.1%      101   4.8% 0000000000464d4f
      83   3.9%  44.0%       83   3.9% 000000000040329c
      77   3.6%  47.7%       77   3.6% 0000000000418e7a
      62   2.9%  50.6%       62   2.9% 0000000000456a38
      37   1.8%  52.3%       37   1.8% 0000000000418e41
      37   1.8%  54.1%       37   1.8% 0000000000435f57

有没有人经历过这种情况,并找到了解决办法?

这里提到了一个6prof工具,它可以替代上述步骤使用。有人知道它是否还在维护,在哪里可以找到它吗?

我在Win7 64上使用go1.0.2。

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-28 23:48:44

我修复了perl脚本,使其可以在Windows下工作。

详情请访问:http://exneehilo.blogspot.com.au/2012/07/profiling-go-with-pprof-under-windows.html

票数 2
EN

Stack Overflow用户

发布于 2012-07-25 07:30:31

我自己没有检查过,但据我所知,pprof脚本的问题是它使用的是标准(mingw)版本的nm,而不是Go特定的nm。Go发行版有自己的nm程序:

C:>go工具nm用法: nm -aghnsTu文件...go工具nm:退出状态1

C:>

它能理解所有的Go二进制格式,而mingw自带的nm程序却不能。查看pprof perl脚本中的nm_commands变量。它列出了几个可能的候选者,但没有一个是你想要的。如果您将其改为指向Go nm,它应该可以工作。

请随时在这里报告错误,http://code.google.com/p/go/issues。我认为它以前是有效的,因为6 nm在nm_commands中列出,但是Go nm已经被重命名为just nm并移出了用户路径。

亚历克斯

票数 0
EN

Stack Overflow用户

发布于 2012-07-27 23:03:09

我也遇到过类似的问题。

解决方案在实际的建筑应用中得到了应用。因此,当我使用"go build test_app.go“进行构建,然后运行"./test_app”之后,我就得到了包含函数名的分析文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11633468

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档