我希望看到碎片是增加我的扭曲服务器内存使用率的原因。我在这里发了一个问题: How to find the source of increasing memory usage of a twisted server?
现在,我要做的是将堆可视化。我找到了一篇文章:Memory fragmentation。那篇文章中的堆数就像我想要的那样。我用matplotlib或其他工具绘制这样的图形并不困难。最困难的工作是:如何记录内存分配和释放?
我知道我可以修改CPython的源代码,在omalloc.c中添加一些日志代码并重新编译Python,并使用修改后的CPython来运行我的服务器。但是,我不想浪费时间。然后我正在寻找一些可用的工具。我知道有一个工具 valgrind 可以用来检测内存泄漏,但我不知道如何记录分配和释放。我看到它的memcheck可以检测到类似的东西:
但这不是我想要的,我只需要:
我的问题是:
感谢。