我使用gperftools来分析我的C代码。因此,我无法使用pprof
应用程序分析配置文件。
$ gcc -g prog.c -o prog -lprofiler
$ export CPUPROFILE=info.prof
$ ./prog
Inside main()
Inside func1
Inside new_func1()
Inside func2
PROFILE: interrupts/evictions/bytes = 1133/0/300
$ ls
info.prof prog prog.c
$ ls -lah info.prof
-rw-rw-r-- 1 mm mm 2.6K Jun 6 09:36 info.prof
$ pprof info.prof prog
Reading Profile files in profile.*
Error: Could not open profile.0.0.0: No such file or directory
profile.ftab: No such file or directory
$
我错了什么? profile.ftab
文件是什么?
答案 0 :(得分:7)
您没有使用正确的' pprof'工具。特别是,你使用的是http://www.cs.uoregon.edu/research/tau/docs/newguide/bk03ch01s08.html(这完全不相关),而你需要这里的那个:https://code.google.com/p/gperftools/我有同样的问题并通过下载gperftools来解决问题。源,构建它,并使用./src/pprof
答案 1 :(得分:1)
我刚刚遇到了这个问题,我认为值得一提的是在最新版本的Ubuntu(特别是18.04)中如何处理此问题。
当尝试运行pprof
命令时,系统建议安装tau
软件包:
Command 'pprof' not found, but can be installed with:
sudo apt install tau
但是请不要安装该软件包,因为正如David Carney在回答中指出的那样,它完全无关。改为安装google-perftools
软件包,但要注意其中的可执行文件名为google-pprof
,而不仅仅是pprof
。