Python 查看程序内存占用情况

本文介绍了使用Python的psutil库来监测程序运行时的内存占用情况,并通过memory_profiler库详细分析了内存消耗。示例代码创建了一个全为99.0的600x700数组,展示了其内存分配和释放的过程。
摘要由CSDN通过智能技术生成

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
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二分掌柜的

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值