问题标签 [gperftools]
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.
linux - gperftools/tcmalloc 2.8 - 内存不足
我们正在从 gperftools/tcmalloc 2.0 迁移到 2.8。但是我们的一些测试用例因“内存不足”错误而失败。我们使用 Cent OS 6.5。这发生在 posix_memalign() 调用请求 32536008 字节的 64 位对齐。在安装 gperftools 时,我没有在 configure 中使用任何特定选项。有没有人遇到过与 tcmalloc 2.8 类似的问题?谢谢,普拉莫德
c++ - 使用 brew 安装后 gperftools 未在 Mac 上安装 -lprofiler
最近我想分析我的 cpp 代码并遇到了 gperftool,但是关于如何在 Mac 上使用它并没有真正明确的说明。到目前为止,我已经运行brew install gperftools
并想编译我的简单 cpp 文件,它只输出“Hello world!”。我运行g++ main.cpp -lprofiler -o main
但得到错误ld: library not found for -lprofiler
。如果你能指导我或者应该给我一个易于遵循的教程,我真的很感激。谢谢 :)
编辑:目前我正在使用带有新 M1 芯片的 MacOS(不确定这是否会导致任何问题)
c++ - arm 架构上的 malloc 泄漏未反映在 gperftool 上
我试图在 ARM 体系结构上为我的应用程序进行内存泄漏检查,我遇到了一个问题,我使用 malloc 进行了内部泄漏,但这并没有反映在我的堆检查器图中。然后我只写了一个带有 malloc 泄漏的示例 pgm并交叉编译它并在我的设备上运行它没有显示任何泄漏,而我使用 new 运算符进行了相同的泄漏,我可以在分析图形 代码片段上看到泄漏:使用 malloc 泄漏: sample1.c:
使用新的代码片段: new1.cpp
Sampe1.c :Output 这是我在设备中得到的输出:root@tchxi6:/tmp# HEAPCHECK=normal HEAP_CHECK_MAX_LEAKS=100 TCMALLOC_STACKTRACE_METHOD=libgcc ./sample1 WARNING: Perftools heap leak checker is active -- 性能可能会受到影响有内存区域w /o callers: may report false leaks 没有发现检查“ main ”的泄漏(但不能 100% 保证不存在任何泄漏):找到 13 个 20494 字节的可到达堆对象 root@tchxi6:/tmp#
附上 New1.cpp 文件输出
tcmalloc - 如何检查预编译的 libtcmalloc.so 是否在没有 libunwind 的情况下编译?
我什至不知道从哪里开始,为菜鸟问题道歉,但似乎在这个特定案例中没有任何内容,除非有更多我不知道的通用术语。
pprof - 对从远程机器收集的数据运行 pprof?
我有一个程序在有内存泄漏的远程无头机器(即没有 X 服务器)上运行。我能够安装 gperftools 并运行发现泄漏的堆检查器。
我的问题是我无法在远程机器上安装 pprof,因为需要所有图形库,所以我将生成的 .heap 文件复制到另一台安装了 pprof 的机器上。这台机器也有与 rmote 机器相同的库。
我尝试运行堆检查器建议的 pprof 命令,但使用 --text 而不是 --gv
但它抱怨 curl 命令失败
所以我的问题是:我正在尝试的东西是否可能?我应该使用不同的 pprof 命令吗?curl 命令是关于什么的?
谢谢,