问题标签 [gprof]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
629 浏览

c++ - 使用gprof显示模板化方法的调用图的参数格式?

使用 gprof 显示模板类中方法的函数调用图的命令行格式是什么?

对于简单的 C 方法,您可以像这样指定它:

如何parse从以下指定方法:

0 投票
3 回答
3791 浏览

c++ - 在 gprof 中分析单个函数

是否可以使用 gprof 对 C++ 中的单个函数进行行分析?

就像是:

,这似乎不起作用。

0 投票
2 回答
2231 浏览

c++ - 什么是函数__tcf_0?(在使用 gprof 和 g++ 时看到)

我们使用 g++ 4.2.4,我试图找出我的代码中的一些性能问题。

我正在运行 gprof 来生成配置文件,并且我得到了以下“奇怪”,因为最昂贵的函数是 __tcf_0:

然后,此函数似乎调用了我的大多数用户函数(即,它是从 main 调用的函数)。我为此找到的最接近的解释是here,但该链接指的是静态对象和atexit,我认为这不适用于我的情况。

如果有帮助,我正在使用 Boost (program_options and fusion) 和 HDF5 库。

更新:

我在构建时使用的命令是:

0 投票
3 回答
3659 浏览

c++ - 无法使用 gprof 累积时间 - gnu 分析器

我在 Windows 上运行 cygwin 并使用最新版本的 gprof 来分析我的代码。我的问题是平面配置文件对我的代码中的每个函数显示为零秒,我什至尝试循环函数(尝试了一百万的 for 循环)但 gprof 无法累积任何时间。请帮助。这是我的示例函数之一。

0 投票
5 回答
668 浏览

c++ - 在 C++ 中交换二维双数组

我有以下方法可以在 c++ 中交换两个双精度数组(double**)。分析代码,方法占运行时的7%......我在想这应该是一个低成本的操作,有什么建议吗?我是 C++ 新手,但我希望只是交换对数组的引用。

0 投票
1 回答
706 浏览

linux - gprof 错误:配置文件的版本不受支持

我正在尝试分析共享库,但调用 gprof 时出现错误:

共享库是使用 -ggdb -pg 标志编译的。

gcc 4.2.1 版,gprof 2.20 版,linux 2.6.22

任何想法是什么问题?

0 投票
7 回答
76016 浏览

profiling - gprof 的替代品

还有哪些其他程序与 gprof 做同样的事情?

0 投票
4 回答
7807 浏览

c - 如何修改 C 程序以便 gprof 可以对其进行分析?

当我在我的 C 程序上运行 gprof 时,它说我的程序没有累积时间,并且所有函数调用都显示为 0 时间。但是它确实计算了函数调用。

我如何修改我的程序,以便 gprof 能够计算运行需要多少时间?

0 投票
1 回答
295 浏览

gprof - gprof - 可在远程位置执行(在 PATH 中)

我有一系列由 shell 脚本制作的黑盒测试(类似于 GNU Hello 的测试)。

如果找到 gmon.out,我试图让它自动生成平面配置文件(如果项目配置了 --enable-prof 则它将是)。

问题是测试与可执行文件本身位于不同的目录中,即使可执行文件位于 PATH 中,gprof 也无法找到可执行文件。

是否有可能以某种方式强制 gprof 搜索可执行文件或类似文件的路径?

0 投票
3 回答
28721 浏览

c - gprof:如何为链接到主程序的共享库中的函数生成调用图

我正在研究Linux环境。我有两个“C”源包 train 和 test_train。

  1. train 包编译时生成 libtrain.so
  2. test_train 链接到 libtrain.so 并生成可执行的 train-test

现在我想使用 gprof 生成一个调用图,它显示了主程序以及 libtrain.so 中的函数调用序列

我正在使用 -pg 选项编译和链接这两个包,调试级别为 o0。在我执行 ./train-test 之后,会生成 gmon.out。然后我做:

在这里,输出显示了 train-test 中函数的调用图,而不是 libtrain.so 中的函数调用图

可能是什么问题呢 ?