Memory 如何记录程序中内存的每次分配和释放?
我想看看碎片是不是我的twisted服务器内存使用率增加的原因。我在这里发布了一个问题: 现在,我要做的是可视化堆。我发现一篇文章:。那篇文章中的堆的数字和我想要的一样。用matplotlib或其他工具绘制这样的图形对我来说并不困难。最困难的工作是:如何记录内存分配和释放 我知道我可以修改CPython的源代码,在omalloc.c中添加一些日志代码并重新编译Python,然后使用修改后的CPython运行我的服务器。但是,我不想浪费时间。然后我正在寻找一些可用的工具。我知道有一个工具可以用来检测内存泄漏,但我不知道如何记录分配和释放。我看到它的memcheck可以检测到如下内容:Memory 如何记录程序中内存的每次分配和释放?,memory,heap,valgrind,fragmentation,Memory,Heap,Valgrind,Fragmentation,我想看看碎片是不是我的twisted服务器内存使用率增加的原因。我在这里发布了一个问题: 现在,我要做的是可视化堆。我发现一篇文章:。那篇文章中的堆的数字和我想要的一样。用matplotlib或其他工具绘制这样的图形对我来说并不困难。最困难的工作是:如何记录内存分配和释放 我知道我可以修改CPython的源代码,在omalloc.c中添加一些日志代码并重新编译Python,然后使用修改后的CPython运行我的服务器。但是,我不想浪费时间。然后我正在寻找一些可用的工具。我知道有一个工具可以用来
- 无效读取
- 未初始化
- 无效自由
- 记录每次内存分配和释放的时间、地址和大小
谢谢。回答有关替代工具的问题:
我知道有一个“别针”工具,也许值得一看:你看过瓦尔格兰德地块了吗?