$ go tool pprof pgears.go profilefile.prof
addr2line: crackhdr: unknown header type
Welcome to pprof! For help, type 'help'.
(pprof) top
Total: 8 samples
5 62.5% 62.5% 5 62.5% 0000000000028a8b
1 12.5% 75.0% 1 12.5% 000000000002295c
1 12.5% 87.5% 1 12.5% 000000000009375a
1 12.5% 100.0% 1 12.5% 00000000000d278a
0 0.0% 100.0% 1 12.5% 000000000000252a
0 0.0% 100.0% 1 12.5% 000000000000259d
0 0.0% 100.0% 2 25.0% 0000000000017d9e
0 0.0% 100.0% 2 25.0% 000000000001a2bf
0 0.0% 100.0% 6 75.0% 000000000001b630
0 0.0% 100.0% 1 12.5% 0000000000045401
(pprof)
为什么go tool pprof
显示地址而不是功能名称?
来自http://google-perftools.googlecode.com/svn/trunk/doc/cpuprofile.html
或http://blog.golang.org/profiling-go-programs
我们知道它必须是功能名称。
或者如何将字节信息更改为函数名?
操作系统:Mac OS 10.9.2
转版:go1.2 darwin / amd64
答案 0 :(得分:7)
pprof
的第一个参数必须是二进制,而不是源文件。
所以你必须编译二进制文件:
$ go build -o ppears
并将其用作pprof
的输入:
$ go tool pprof pgears
答案 1 :(得分:1)
go build -o bin // build the binary file
go tool pprof bin profilefile.prof