Python内存使用量检测程序

去年时,自己写一个程序时,不太确定自己的内存使用量,就想找写工具来打印程序或函数的内存使用量。
这里将上次找到的内存检测工具的基本用法记录一下,今后分析Python程序内存使用量时也是需要的。这里推荐2个工具吧。

memory_profiler模块(与psutil一起使用)
注:psutil这模块,我太喜欢了,它实现了很多Linux命令的主要功能,如:ps, top, lsof, netstat, ifconfig, who, df, kill, free 等等。
示例代码(https://github.com/smilejay/python/blob/master/py2014/mem_profile.py):


运行上面的代码,输出结果为:

Guppy (使用了Heapy)
Guppy is an umbrella package combining Heapy and GSL with support utilities such as the Glue module that keeps things together.
示例代码(https://github.com/smilejay/python/blob/master/py2014/try_guppy.py):

注意其中,要输出更多信息的.more用法。
运行上面的程序,输出结果为:

另外,还有一个叫“PySizer”的也是做memory profiling的,不过没怎么维护了。

我在这里只是根据文档举了几个最简单的例子,更多信息,请阅读如下参考文档:
stackoverflow.com/questions/110259/which-python-memory-profiler-is-recommended
https://pypi.python.org/pypi/memory_profiler
https://pypi.python.org/pypi/psutil
http://guppy-pe.sourceforge.net/

master

Stay hungry, stay foolish.

发表评论

邮箱地址不会被公开。 必填项已用*标注

*