我想对以嵌入方式(来自C ++)调用的python模块进行一些内存分析。有人怀疑它的一部分远远不是最佳的,但它是一个相当复杂的模块,使人工检查非常麻烦。如果需要,我可以更改python代码(例如添加@profile函数装饰器等)。理想情况下,我想概述这些模块中的某些功能。
我一直在寻找一些选择,例如memory_profiler,但我无法弄清楚如何让它们以嵌入式方式工作(它们在独立脚本上测试时工作正常)。 问题是,是否有人知道如何解决这个问题。
我理解这个问题可能有点模糊,但是在线搜索并没有真正提出任何具体的策略来解决这个问题。即便如此,我认为这可能是一个可能与更多人相关的问题。
答案 0 :(得分:2)
简而言之 - 以下工作非常顺利(在memory_profiler文档中也有解释):
from memory_profiler import profile
@profile
def your_function(...):
将显示一个很好的逐行内存报告。 我为过早的问题道歉 - 并且可以为此目的全心全意地推荐memory_profiler。