- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
gperftools documentation说 libprofiler
应该链接到目标程序中:
$ gcc myprogram.c -lprofiler
CPUPROFILE=/tmp/profiler_output ./a.out
libprofile
有机会在仅加载分析器但未调用其功能时启动和完成分析器吗?
最佳答案
根据链接网页的文档,在链接库下,它描述了 -lprofiler 步骤与使用 LD_PRELOAD 选项链接共享对象文件相同。
共享对象文件与头文件不同。头文件包含编译程序时查找的函数声明,因此函数的名称解析,但名称只是名称,而不是实现。共享对象文件 (.so) 包含函数的实现。如需更多信息,请参阅 the following StackOverflow answer .
Source file of /trunk/src/profiler.cc在第 182 行,有一个 CPUProfiler 构造函数,它根据 CPUPROFILE 环境变量(第 187 行和第 230 行)检查是否应该启用分析。
然后它在第 237 行调用 Start 函数。根据此文件中的注释,析构函数在第 273 行调用 Stop 函数。
为了回答你的问题,我相信 Line 132 CpuProfiler CpuProfiler::instance_;
是 CpuProfiler 被实例化的那一行。
gperftools 文档中缺乏明确性是已知问题,请参阅 here .
关于gcc - gperftools CPU 分析器究竟是如何启动的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13619974/
我已经配置并构建了gpreftools 。但是,我似乎找不到我的程序生成的配置文件来显示它。 我采取了以下行动: 添加 -lprofiler链接器标志到我的 .pro ,构建程序并在链接阶段正确添加标
在运行一个使用地址清理器构建的程序时出现这个问题,这让我很好奇。 The gperftools source code包含以下功能: void MallocExtension::Register(Ma
gperftools documentation说 libprofiler应该链接到目标程序中: $ gcc myprogram.c -lprofiler (不改变程序的代码)。 然后程序应该使用特定
我正在寻找如何gperftools的简单解释作品。到目前为止,这是我学到的: 它运行一个 stop-the-world 采样器。换句话说,它会定期停止正在分析的程序以收集信息。 Golang 的 pp
我花了一整天的时间试图制作 gperftools工作:/ 我厌倦了不同的 libunwind 版本,但是当我成功安装它时,每当我使用 std::system 时,我都会收到以下错误“Profiling
我正在使用 gperftools用于分析我的 C 代码。结果我无法使用 pprof 应用程序分析配置文件。 $ gcc -g prog.c -o prog -lprofiler $ export CP
我正在尝试使用 gperftools 分析多线程工作负载,但在解释生成的输出时遇到困难。我编写了一个简单的程序,它启动两个具有相同工作负载的线程,并使用 gperftools cpu 分析器进行分析。
我正在尝试为我使用 gperftools 的代码生成分析(逐行源代码)。 gcc a.c -lprofiler -Wl,--no-as-needed -lprofiler -Wl,--as-neede
我有一个任务 gprof 似乎无法使用。 Callgrind 在这里提供了很多帮助,但是当找到更像 gprof 的解决方案时,我。例如,gperftools,深入其中进行尝试。 所以我写了一个虚拟程序
我正在尝试在 unix 平台上对 C++ 应用程序进行堆分析。我已经尝试过 valgrind 的 massif,但它会使应用程序非常慢并影响应用程序的行为。 我正在寻找其他选项并遇到了 gperfto
我正在安装 gperftools: https://code.google.com/p/gperftools/ 一切正常,我看到该项目链接到/usr/local/lib 我想将库放在我项目的本地文件夹
我正在尝试使用 mod_fascgi 和 perftools 分析在 apache 中运行的 fcgi 应用程序 (C++) >。所以是 Centos 6 x86_64。 问题如下。根据gperfto
根据文档,http://gperftools.googlecode.com/svn/trunk/doc/cpuprofile.html , cpu profiles 确实支持多进程并且会生成独立的输出
我已阅读相关帖子 here和 here ,并查看了 Dirk Eddelbuettel 的演讲 here然而,我什至无法从 gperftools 获取 .log 文件。这是我的 R 文件,名为 Rcp
我正在尝试分析应用程序以比较其使用不同分配策略的性能。 我在使用 tcmalloc 时可以毫无困难地分析它,但是如何使用 libc 的分配函数来分析它呢?事实上,启用 gperftool 的堆分析器需
我想分析一个在 ARM 设备中运行的 C++ 应用程序。我运行了我的应用程序并使用 ProfilerStart("googleProfBL.prof") 对其进行了分析,因此生成了文件。当我在本地计算
我正在尝试对回调驱动的系统进行 CPU 分析,我只对分析回调导致我以某种方式使用react时的分析感兴趣?我可以使用 gperftools 来完成这个吗? ProfilerEnable()/Profi
我想分析我的守护程序,它会暂停主线程: sigset_t signal_mask; sigemptyset(&signal_mask); sigaddset(&signal_mask, SIGTERM
当您在 GPerfTool 的 pprof 命令中使用“--gv”选项时,您会得到一个非常漂亮的图表。是的。 线条可以是粗线、细线、虚线或实线。我认为厚/薄是基于该行之后的样本条目数。 但我既没有弄清
我在 ubuntu 16.04 上。 这是我做的: 已安装 gperftools: sudo apt-get install google-perftools libgoogle-perftools-
我是一名优秀的程序员,十分优秀!