Python 如何查看程序内存占用情况
作者:TheOldManAndTheSea
这篇文章主要介绍了Python 如何查看程序内存占用情况,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
查看程序内存占用情况
flyfish
psutil
这里用在查看内存占用情况memory_profiler
输出每一行代码增减的内存
安装
pip install memory_profiler
代码
import numpy as np import os import psutil import gc from memory_profiler import profile @profile def test(): a=np.full(shape=(600, 700), fill_value=99.0) return a if __name__ == '__main__': a=test() print('A:%.2f MB' % (psutil.Process(os.getpid()).memory_info().rss / 1024 / 1024)) del a gc.collect() print('B:%.2f MB' % (psutil.Process(os.getpid()).memory_info().rss / 1024 / 1024))
如果没有from memory_profiler import profile这句代码,执行终端命令如下
python -m memory_profiler test.py
结果
Line # Mem usage Increment Occurences Line Contents
============================================================
10 53.8 MiB 53.8 MiB 1 @profile
11 def test():
12 56.8 MiB 3.0 MiB 1 a=np.full(shape=(600, 700), fill_value=99.0)
13 56.8 MiB 0.0 MiB 1 return a
A:56.83 MB
B:53.83 MB
python查看内存使用
在程序中使用python查看电脑内存,可以使用:
import psutil import os info = psutil.virtual_memory() print(u'内存使用:',psutil.Process(os.getpid()).memory_info().rss) print(u'总内存:',info.total) print(u'内存占比:',info.percent) print(u'cpu个数:',psutil.cpu_count())
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。