【发布时间】:2016-06-16 01:37:08
【问题描述】:
我有一个巨大的 C++ 项目,它使用标准容器:vector、map、multimap、set 等。平台是 Linux x86_64,编译器是 g++ 4.9。我遇到了一些大型数据集的内存问题。现在我想知道:有没有办法查看哪些容器的哪些实例占用了最多的内存? 有没有像 valgrind 这样的工具可以做到这一点?可以收集统计信息的修补标准库?
【问题讨论】:
-
您可能会发现 Heaptrack 很有用:milianw.de/blog/heaptrack-a-heap-memory-profiler-for-linux
-
@JesperJuhl Heaptrack 看起来很棒,Massif 也是如此。还不知道 valgrind 的那部分。如果你能制定一个更详细的答案,我很乐意接受。
-
@Arne 完成。添加了答案。
标签: c++ debugging memory-management valgrind