Python脚本的内存性能分析器

0 投票
2 回答
1100 浏览
提问于 2025-04-18 03:55

我想知道有没有一种内存分析工具,可以分析我的Python脚本占用的内存,并告诉我随着时间的变化,内存的使用情况。

这样做的目的是为了能够把这些数据画成图表,从中得出一些结论。

在Python中,越简单越好。

谢谢。

2 个回答

0

你可以使用任何性能分析工具,比如其他回答中提到的mem-profile,或者用psutil也可以。你可以在你的代码中加上一些逻辑,来收集时间戳和当前的内存使用情况,之后再用这些数据来绘图。我只是提醒一下,以防你没注意到,希望对你有帮助。你可以查看这个回答 psutil获取内存,了解如何用psutil查询当前的内存使用情况。

2

查看这个链接: https://pypi.python.org/pypi/memory_profiler

只需要在你想要监控的每个函数前面加上 @profile 这个标记。

下面的内容是直接从上面的链接复制过来的:

example.py

@profile
def my_func():
    a = [1] * (10 ** 6)
    b = [2] * (2 * 10 ** 7)
    del b
    return a

if __name__ == '__main__':
    my_func()

然后:

$ pip install memory_profiler
$ python -m memory_profiler example.py

撰写回答