首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何分析C程序的内存使用情况

如何分析C程序的内存使用情况
EN

Stack Overflow用户
提问于 2009-12-15 17:30:42
回答 4查看 7.7K关注 0票数 7

我需要弄清楚我正在运行的linux程序的哪一部分占用了多少(百分比或绝对)内存。我需要创建一个多个这样的程序的配置文件,这样我就可以在我的代码中识别一些更大的内存消耗者,并看看是否可以优化它们以使用更少的内存。我需要它在MIPS平台上,不幸的是,Valgrind不能在MIPS上工作。

任何帮助/指示都将不胜感激。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-12-15 17:45:09

您可以将对freemalloc的所有调用包装在您自己的函数中,您还可以在其中提供,例如,在哪个文件中以及在哪个行号完成每个分配。从这些信息中,很容易看出在哪里使用了哪些内存。

票数 6
EN

Stack Overflow用户

发布于 2009-12-15 21:03:09

除了Valgrind之外,还有很多其他的内存调试器/分析器。以下所有似乎都支持MIPS (但我还没有在该架构上尝试过它们):

jemallocCCMALLOCmpatrolNJAMDDmalloc,甚至谷歌自己的google-perftools

票数 9
EN

Stack Overflow用户

发布于 2009-12-17 21:35:34

您可以使用Google's perftools进行内存分析。该项目提供了very fast, multi-threaded malloc implementationHeap profilerHeap checkera CPU profiler.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1906228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档