AMDuProf缺少golang源

idv4meu8  于 2023-10-14  发布在  Go
关注(0)|答案(1)|浏览(141)

我想用AMDuProf分析器分析我的程序,但设置根/源文件夹不起作用,分析器只显示反汇编代码。看起来,尽管(或连同)缺乏源代码,它也缺乏调试符号,因为函数的形式是processname<address offset>
是我做错了什么,还是错过了一些分析选项?我试着用“release”/debug选项构建程序,没有看到任何区别。

ztigrdn8

ztigrdn81#

我修好了。首先,我用导出的、未压缩的侏儒符号构建了应用程序:
go build -gcflags="all=-N -l -E" -ldflags="-compressdwarf=false" -o main.exe
下一步是使用cv2pdb工具将侏儒符号转换为.pdb,因为我在Windows上运行Profiler非常重要。
它不工作,即使我指定的文件夹,分析器应该搜索该.pdb文件(Add Symbol File Location(s)字段)。我手动复制.PDB文件到Symbols Download Path字段下的文件夹中,它神奇地开始工作。
编辑:似乎有什么特定的事情碰巧发生了。所以这可能会起作用,但可能不会。
Edit2:Golang似乎正在使用DEBUG_STRIPPED标志执行。手动移除标志后,AMDuProf会正确显示符号。更多信息:https://community.amd.com/t5/server-gurus-discussions/amd-uprof-for-golang-on-windows10/m-p/606820/highlight/true#M1831

相关问题