问题标签 [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 回答
481 浏览

c - gprof 是否会考虑被阻止的时间?

我在我的可执行文件上运行 gprof,但可执行文件花费大量时间wait()来完成子进程。等待时间是否计入 gprof 时间?

0 投票
1 回答
1214 浏览

dynamic-linking - 如何在不分析主机应用程序的情况下分析共享对象?

我有一个主机应用程序,并且我编写了一个插件。我将我的插件编译成一个共享对象(比如 foo.so),宿主应用程序将通过 dlopen 加载它。在这种情况下,我的主机应用程序是来自 llvm 的 opt 工具(尽管我认为这对这个问题并不重要)。

我想在启用分析的情况下编译我的插件(即g++ -pg, gprof)。但是,当我这样做时,永远不会创建配置文件输出文件 gmon.out。也许 gprof 期望有人调用一个设置例程,或者类似的东西。

由于各种原因,我想避免使用 -pg 重新编译主机应用程序。我很好奇是否可以在不分析主机应用程序 opt 的情况下分析共享对象 foo.so。

我还研究了其他分析工具;HP 的 qprof 应该能够处理这种情况,但它无法解析共享对象中的函数名称(它以非常幼稚的方式回退到 addr2line)。

谢谢,尼克

0 投票
2 回答
2100 浏览

gprof - 内存不足错误。分配...

我正在尝试使用 gprof 命令:gprof -s executable.exe gmon.out gmon.sum合并从我的程序的 2 次运行中收集的分析数据。但是会出现以下错误:

gprof:在总共 196608 个字节后分配 3403207348 个字节的内存不足

我的程序很简单(只有一个for循环)。如果我运行一次,运行时间太短(显示 0.00 秒),gprof 无法记录。

在 CygWin 中,我执行以下步骤:

  1. gcc -pg -o fl forAndWhillLoop.c

  2. fl(运行程序)

  3. mv gmon.out gmon.sum

  4. fl(运行程序)

  5. gprof -s fl.exe gmon.out gmon.sum

  6. gprof fl.exe gmon.sum>gmon.out

  7. gprof fl.exe

我的程序:

那么有人可以帮我解决这个问题吗?谢谢!

0 投票
4 回答
2476 浏览

c++ - 基准测试 (gprof) C++ 程序。使用eclipse环境

那么我有以下问题。

事实;- 使用 Eclipse - 使用 MinGW

我想对我创建的 C++ 程序进行基准测试。我搜索了谷歌然后来了; http://www.cs.utah.edu/dept/old/texinfo/as/gprof.html

然后我想添加“-pg”构建命令。但是我如何/在哪里添加它?我进入“属性 - C/C++ 构建 - 发现选项”并将其添加到“编译器调用命令”(http://img515.imageshack.us/img515/3159/67826349.png)但它什么也没做,据我在控制台中看到的。

那么我做错了什么?

0 投票
4 回答
8252 浏览

c - 使用 Eclipse 时在 Windows 上分析 C 代码

我知道我可以使用Linuxgprofkprof在 Linux 上分析我的代码。在 Windows 上是否有与这些应用程序类似的替代方案?

0 投票
4 回答
2802 浏览

c# - 优化:Visual Studio 的 gprof 等工具

作为一名 C# 程序员,我正在从小型项目过渡到中型项目。以前我的小项目不需要分析器。但是现在我需要一个工具来帮助我提高代码的性能。多年前,我在 C 语言中使用过 gprof。

有人可以给我一个起点,或者向我推荐一个类似 gprof 的 VS2008 工具吗?那就是:一个工具,它计算每个函数被调用了多少次,以及在每个函数中花费了多少时间。无论是否必须为此付费(在某些限制下)。

关于如何定位应该优化的代码部分的任何其他建议都会很棒。

谢谢。

0 投票
2 回答
6903 浏览

profiling - gprof 图书馆 - 问题

我需要在我们的系统中 gprof 一个库来检查函数调用,看看我们是否可以进一步优化它。基本上,我所拥有的是

使用共享库 myLib.so 的可执行文件 A

我想 gprof myLib.so。当我使用 -pg 选项编译 myLib.so 源时,它会生成一个 .so 文件就好了。

但是,由于某种原因,针对该库重新编译可执行文件 A 不会生成 *.gmon 文件。需要做什么?我应该静态链接 myLib 吗?如果是这样,请告诉我如何。我是新手,请原谅我的无知。我每天都在学习

提前致谢。

0 投票
2 回答
28670 浏览

bash - 是否可以获得 gprof 结果的图形表示?

我有兴趣获得一些数字运算程序的分析。我用 -g 和 -pg 选项编译它并链接它并得到它 gmon.out。阅读信息(纯文本)后,它看起来有点难看。我想知道是否有一些开源工具可以获取程序花费最多时间的 10 个函数的图形表示以及通量图。

谢谢

0 投票
6 回答
1096 浏览

c++ - 如何使用一些分析信息获取程序的调用图

我想了解给我的 C++ 程序是如何工作的,以及它在哪里花费的时间最多。

为此,我尝试先使用gprof然后gprof2dot获取图片,但结果有时有点难看。

你通常是怎么做的?你能推荐任何更好的替代品吗?

PD 哪些是开源解决方案(最好适用于 Linux 或 Mac OS)X?

0 投票
11 回答
57927 浏览

c++ - 如何在 Linux 上分析多线程 C++ 应用程序?

我曾经使用gprof进行所有 Linux 分析。

但是,对于我的多线程应用程序,它的输出似乎不一致。

现在,我挖了这个:

http://sam.zoy.org/writings/programming/gprof.html

但是,这是很久以前的事了,在我的 gprof 输出中,我的 gprof 似乎正在列出非主线程使用的函数。

所以,我的问题是:

  1. 在 2010 年,我可以轻松地使用 gprof 来分析多线程 Linux C++ 应用程序吗?(Ubuntu 9.10
  2. 我应该使用哪些其他工具进行分析?