Python 如何查看程序内存占用情况
目录
- 查看程序内存占用情况
- 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 aA: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())
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
利用Python如何实时检测自身内存占用
前言 最近在做文本统计,用 Python 实现,遇到了一个比较有意思的难题--如何保存统计结果. 直接写入内存实在是放不下,十几个小时后内存耗尽,程序被迫关闭.如果直接写入数据库吧,每次写入又太慢了,本来就十几个小时了,这样下去就要往星期上数了,也不是个办法. 解决方案 最后,我想到了一个两者兼顾的方案--用内存做缓冲,达到一定量之后一次性将当前所有数据合并到硬盘里. 但这样就有一个阈值,如何确定同步硬盘的时机,通常可以按照文件粒度进行处理,比如处理一个语料文件同步一次--但我的语料有大有小,大
-
Python帮你解决手机qq微信内存占用太多问题
目录 导语: 正文: glob 模块 glob方法 zlib.crc32 去重复 总结 导语: 哈喽,哈喽~大家有没有遇到过这种情况,手机用着用着没有内存了,一到设置里面一看. 微信和 QQ 10G! 啊这.....就离谱!好说,好说,设置中都有一个清除数据的功能,一键下去内存暂时都回来了,但是宝,你确定你微信和QQ中的信息都没用吗? 下面能小编就用 Python 写个删除重复文件的脚本清理这些微信和QQ空间.确保在清除内存的时候,你的重要信息还在. 正文: glob 模块 glob 模块非常
-
python获取系统内存占用信息的实例方法
psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系统监控,分析和限制系统资源及进程的管理.它实现了同等命令行工具提供的功能,如ps.top.lsof.netstat.ifconfig.who.df.kill.free.nice.ionice.iostat.iotop.uptime.pidof.tty.taskset.pmap等.目前支持32位和64位的Li
-
Python获取android设备cpu和内存占用情况
功能:获取android设备中某一个app的cpu和内存 环境:python和adb 使用方法:使用adb连接android设备,打开将要测试的app,执行cpu/内存代码 cpu获取代码如下:(输入参数为脚本执行时间) # coding:utf-8 ''' 获取系统total cpu ''' import os, csv import time import csv import numpy as np from matplotlib import pyplot as plt cpu_list
-
python中使用psutil查看内存占用的情况
有的时候需要对python程序内存占用进行监控,这个时候可以用到psutil库,Anaconda中是自带的,如果import出错,可以用pip install psutil(安装在python中)或conda install psutil(安装在Anaconda中) #常用的: import psutil import os info = psutil.virtual_memory() print u'内存使用:',psutil.Process(os.getpid()).memory_info(
-
python3使用迭代生成器实现减少内存占用
技术背景 在python编码中for循环处理任务时,会将所有的待遍历参量加载到内存中.其实这本没有必要,因为这些参量很有可能是一次性使用的,甚至很多场景下这些参量是不需要同时存储在内存中的,这时候就会用到本文所介绍的迭代生成器yield. 基本使用 首先我们用一个例子来演示一下迭代生成器yield的基本使用方法,这个例子的作用是构造一个函数用于生成一个平方数组.在普通的场景中我们一般会直接构造一个空的列表,然后将每一个计算结果填充到列表中,最后return列表即可,对应的是这里的函数square
-
Python 如何查看程序内存占用情况
目录 查看程序内存占用情况 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.ful
-
通过Java查看程序资源占用情况
利用Jconsole工具查看程序的资源占用请求.安装jdk时bin目录有jconsole.exe工具,或者通过 Win + R,输入jconsole.exe启动jconsole 连接 可以看到资源占用情况 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.
-
详解Linux查看程序端口占用情况
今天发现服务器上Tomcat 8080端口起不来,老提示端口已经被占用. 使用命令: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程. 使用命令: netstat –apn 查看所有的进程和端口使用情况.发现下面的进程列表,其中最后一栏是PID/Program name 发现8080端口被PID为9658的Java进程占用. 进一步使用命令: ps -aux | grep java 或者直接: ps -aux | grep pid 查看 就可以明确知道808
-
Python利用memory_profiler查看内存占用情况
目录 简介 安装 使用方法 1.通过装饰器运行 2.通过命令行运行 补充 简介 memory_profiler是第三方模块,用于监视进程的内存消耗以及python程序内存消耗的逐行分析.它是一个纯python模块,依赖于psutil模块. 安装 pip install memory_profiler 使用方法 1.通过装饰器运行 @profile def func1(): 2.通过命令行运行 python -m memory_profiler test_code.py 案例源码: # -*- c
-
Python中使用MELIAE分析程序内存占用实例
写的dht协议搜索的程序,这几天优化了一下发现速度确实快了好多.但是出现了一个新的问题,内存直接飙升,我开了十个爬虫占用内存800m.开始我以为是节点太多了,找了几个小问题修改一下,发现没用.后来就到网上查找python内存分析的工具,查了一点资料发现python有个meliae库操作非常方便,就使用分析了一下,发现不是节点太多的原因0 0,是保存发送的t_id,用来标示返回的消息是那个发出的一个字典过大了. 从分析的结果非常容易的定位了某个对象的数量和大小,非常容易分析.我开始以为是因为好多发
-
python中查看变量内存地址的方法
本文实例讲述了python中查看变量内存地址的方法.分享给大家供大家参考.具体实现方法如下: 这里可以使用id >>> print id.__doc__ id(object) -> integer Return the identity of an object. This is guaranteed to be unique among simultaneously existing objects. (Hint: it's the object's memory address
-
Linux 查看端口的占用情况并找出并杀死占用进程的方法
1 lsof查看端口的占用情况 1.1 命令使用示例 # 命令为 lsof -i [root@onepiece ~]# lsof -i # 将会显示 命令 + 进程ID + 进程所属用户, 以及监听的协议.状态等信息 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME dhclient 728 root 6u IPv4 11262 0t0 UDP *:bootpc ntpd 839 ntp 16u IPv4 13671 0t0 UDP *:ntp
-
详解Tomcat中查看JVM内存使用情况
TOMCAT运行时,实时监控当前应用JVM的使用情况:可以利用Tomcat自带的应用manager查看详情. 首先,确认服务目录webapps下有manager应用 其次,需要创建角色manager和对应的用户,修改/conf/tomcat-users.xml <?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="tomcat"/> <r
-
如何查看进程实际的内存占用情况详解
top命令可以查看进程内存的使用,但是不够详细.还有一些命令可以进行更加详细的查看. [root@localhost ~]# cat /proc/5606/statusName: switch4State: S (sleeping)Tgid: 5606Pid: 5606PPid: 1TracerPid: 0Uid: 0 0 0 0Gid: 0 0 0 0Utrace: 0FDSize
随机推荐
- VUE饿了么树形控件添加增删改功能的示例代码
- vue中使用localstorage来存储页面信息
- Vue.js 递归组件实现树形菜单(实例分享)
- git修改和删除功能_动力节点Java学院整理
- 详解java 中Spring jsonp 跨域请求的实例
- Java concurrency之AtomicReference原子类_动力节点Java学院整理
- Swift实现文件压缩和解压示例代码
- ThinkPHP采用<volist>实现三级循环代码实例
- 图解MYSQL的安装和数据升级第1/2页
- 一步一步学习PHP(6) 面向对象
- linux环境下python中MySQLdb模块的安装方法
- 浅谈javascript回调函数
- MySQL DNS的使用过程详细分析
- CSS顶级技巧大放送,div+css布局必知
- JavaScript针对网页节点的增删改查用法实例
- Jquery 监视按键,按下回车键触发某方法的实现代码
- xml 封装与解析(javascript和C#中)
- Bootstrap表单使用方法详解
- 如何彻底删除SVN中的文件和文件夹(附恢复方法)
- vue v-for循环重复数据无法添加问题解决方法【加track-by='索引'】