-
2022-03-14 09:01:04
from multiprocessing import cpu_count print(cpu_count())
更多相关内容 -
Python使用psutil获取进程信息的例子
2021-01-21 17:24:10psutil是一个能够获取系统信息(包括进程、CPU、内存、磁盘、网络等)的Python模块。主要用来做系统监控,性能分析,进程管理,像glances也是基于psutil写成的。 在不了解这个模块之前,我都是直接用subprocess去... -
python 获取内存和cpu的使用率
2021-07-29 14:27:20他的使用很直观,下面是使用Paramiko封装的一个获取cpu、内存使用率的一个例子; import paramiko import time linux = ['192.168.11.111'] def connectHost(ip, uname='root', passwd='bjzh@2020#7120'): ssh = ...获取远端设备的内存使用率和CPU使用率
Python前辈封装了一个Paramiko模块,允许我们通过SSH对远程系统进行操作,上传和下载文件非常方便。他的使用很直观,下面是使用Paramiko封装的一个获取cpu、内存使用率的一个例子;
import paramiko import time linux = ['192.168.11.111'] def connectHost(ip, uname='root', passwd='bjzh@2020#7120'): ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ip, username=uname, password=passwd, port=2020) return ssh def MainCheck(): try: while True: for a in range(len(linux)): ssh = connectHost(linux[a]) # 查询主机名称 cmd = 'hostname' stdin, stdout, stderr = ssh.exec_command(cmd) host_name = stdout.readlines() host_name = host_name[0] # 查看当前时间 csj = 'date +%T' stdin, stdout, stderr = ssh.exec_command(csj) curr_time = stdout.readlines() curr_time = curr_time[0] # 查看cpu使用率(取三次平均值) cpu = "vmstat 1 3|sed '1d'|sed '1d'|awk '{print $15}'" stdin, stdout, stderr = ssh.exec_command(cpu) cpu = stdout.readlines() cpu_usage = str(round((100 - (int(cpu[0]) + int(cpu[1]) + int(cpu[2])) / 3), 2)) + '%' # 查看内存使用率 mem = "cat /proc/meminfo|sed -n '1,4p'|awk '{print $2}'" stdin, stdout, stderr = ssh.exec_command(mem) mem = stdout.readlines() mem_total = round(int(mem[0]) / 1024) mem_total_free = round(int(mem[1]) / 1024) + round(int(mem[2]) / 1024) + round(int(mem[3]) / 1024) mem_usage = str(round(((mem_total - mem_total_free) / mem_total) * 100, 2)) + "%" print(host_name, curr_time, cpu_usage, mem_usage) time.sleep(10) except: print("连接服务器 %s 异常" % (linux[a])) if __name__ == '__main__': MainCheck()
获取本机CPU温度、使用率、内存使用率、硬盘使用率等
在Python中获取系统信息的另一个好办法是使用psutil这个第三方模块。顾名思义,psutil = process and system utilities,它不仅可以通过一两行代码实现系统监控,还可以跨平台使用,支持Linux/UNIX/OSX/Windows等,是系统管理员和运维小伙伴不可或缺的必备模块。
获取CPU信息
import psutil psutil.cpu_count() # CPU逻辑数量 psutil.cpu_count(logical=False) # CPU物理核心
CPU使用率,每秒刷新一次
print(psutil.cpu_percent(interval=1, percpu=True))
获取内存信息
使用psutil获取物理内存和交换内存信息,分别使用:
psutil.virtual_memory() psutil.virtual_memory().percent #获取内存使用率 psutil.swap_memory()
获取磁盘信息
可以通过psutil获取磁盘分区、磁盘使用率和磁盘IO信息:
psutil.disk_partitions() # 磁盘分区信息 psutil.disk_usage('/') # 磁盘使用情况 psutil.disk_io_counters() # 磁盘IO
-
python获取cpu核数来确定最大线程池数量
2020-11-21 01:28:15ProcessPoolExecutorProcessPoolExecutorimportmultiprocessingprint(multiprocessing.cpu_count())如果是cpu密集型 i线程池数量i就是cpu逻辑核数如果是IO密集型, 最大线程数就是2倍的cpu逻辑核数线程池中的线程数...ProcessPoolExecutor
ProcessPoolExecutor
importmultiprocessingprint(multiprocessing.cpu_count())
如果是cpu密集型 i线程池数量i就是cpu逻辑核数
如果是IO密集型, 最大线程数就是2倍的cpu逻辑核数
线程池中的线程数有两个概念: 一个是核心池大小,一个是最大池大小
如果开启的线程数量等于核心池大小了,就是进入队列,当然队列也有大小的,如果队列也满了,就会继续开启线程,如果开启的线程数等于最大线程数了,那就考虑如何处理接下来的任务:是丢弃还是中止任务
with ProcessPoolExecutor(max_workers=200) as executor: # 这个是多进程
executor.map(print_hello, range(num))
但是听闻Python的多线程实际上并不能真正利用多核,所以如果使用多线程实际上还是在一个核上做并发处理。不过,如果使用多进程就可以真正利用多核,因为各进程之间是相互独立的,不共享资源,可以在不同的核上执行不同的进程,达到并行的效果
-
Python——获取CPU的线程数量
2019-12-19 19:38:201 前言 在使用PyTorch搭建目标检测模型时,...2 获取CPU的线程数量 获取CPU线程数量的代码: from multiprocessing import cpu_count print(cpu_count()) 备注: Python官方文档中关于multiprocessing.cpu_c...1 前言
在使用PyTorch搭建目标检测模型时,我们需要设置最佳的数据读取的进程数量;
我觉得,这个数量最好就设置成CPU的线程数量;
2 获取CPU的线程数量
获取CPU线程数量的代码:
from multiprocessing import cpu_count print(cpu_count())
备注:
Python官方文档中关于
multiprocessing.
cpu_count
()的功能是这样说的:Return the number of CPUs in the system.
我先以为是文档描述的不准确,后来
Andrew Svetlov在我的Python文档Bug提交中告诉我:
CPU as a shortcut for "logical processor" is very common in software engineering.
所以这里的“the number of CPUs”实际上就是指的系统可以获取到的CPU逻辑核心数;如果是对于单个CPU而言,那就是当前CPU的线程数量;
3 致谢
感谢 Andrew Svetlov的帮助,
原文链接如下:
-
Python3-22/456 psutil获取进程和系统信息
2022-04-19 19:54:46常用于使用Python来编写脚本来简化日常的运维工作,如在Linux下,有许多的系统命令可以让我们时刻监控系统运行的状态,如ps、free、top、iostat、vmstat、sar等命令从而获取系统信息,以下是psutil模块获取系统信: ... -
如何在linux下获取所有进程信息?
2021-01-14 08:44:36我建议您使用psutil library,就像zenlc2000在评论中所说的那样。...在我给您一个在Python3(或Python2)中使用top命令输出的示例:假设我想知道top命令对gedit的输出:$ top -b n 1 | grep gedit输出:^{pr2}$为... -
python3 获取电脑磁盘读写、CPU、内存使用率高的进程和进程PID
2020-08-04 17:36:02# 获取进程读写磁盘信息 def Disk_io(pid): try: p = psutil.Process(int(pid)) Read_count_1 = p.io_counters().read_count #读操作数 Write_count_1 = p.io_counters().write_count #写操作数 Read_bytes_1 =... -
如何获取Linux中的所有进程信息? - python
2021-03-17 18:29:17我想在linux服务器中获取所有进程信息。PID, USER, CPU% , COMMAND ...确实,我想在python脚本中获取这些信息。我试过了a,b = commands.getstatusoutput('top -n 1')这给了我约20行的结果,按CPU%排序,但是我想要... -
python获取进程,系统信息
2016-12-12 22:34:16python获取进内存和CPU使用率以及句柄数,获取系统的内存,CPU使用率。缺憾进程内存获取的不准确 ,这个根据文档也没有解决。只能这样用了 -
用python来查看电脑的CPU的核心个数
2020-11-22 16:15:21psutil (process and system utilities)是Python里一个跨平台的库,用于查看电脑中正在运行的进程和系统信息,比如CPU、内存、磁盘、网络、传感器等相关信息,因此,使用psutil,可以进行系统监控、剖析和限制... -
Python多进程和多线程(跑满CPU)
2019-05-07 15:06:16Python多进程和多线程(跑满CPU) 概念 任务可以理解为进程(process),如打开一个word就是启动一个word进程。在一个word进程之中不只是进行打字输入,还需要拼写检查、打印等子任务,我们可以把进程中的这些子... -
Python使用psutil获取进程信息
2020-12-04 23:24:32>>> p = psutil.Process(27050)>>> ppsutil.Process(pid=27050, name='python', started='10:45:29')&... p.name() #进程名'python'>>> p.exe() #进程的bin路径'/usr/bin/python3.6'>... -
python 查看cpu的核数
2020-10-31 11:12:06python 查看cpu的核数 ...用python做多线程多进程任务时,获取CPU核数很重要,因为对于不同的构建服务器,开满core数的进程,很容易造成系统假死,一旦全部core跑满,ssh都无法连接,杀进程都杀不掉只能重启机器 -
python3获取服务器运行状态及进程详细信息
2020-08-20 17:23:31import psutil # 进程运行情况 import platform # 包含系统信息查询函数 import os import logging # # # 硬件信息 svmem = psutil.virtual_memory() mem_total = svmem.total # 系统内存总数 mem_used = svmem.used... -
python3 获取 进程id 线程id
2020-11-24 08:30:401.获取线程idimport threading# 1 获取线程ID,NAMEt = threading.currentThread()#线程IDprint('Thread id : %d' % t.ident)#线程NAMEprint('Thread name : %s' % t.getName())输出:Thread id : 7080Thread name : ... -
python 获取CPU、内存、硬盘、进程状态信息 代码
2017-05-22 17:26:31# test to check CPU ,memory and process state # built time 2017-05-19 # coder:ly # Bluedon #!/usr/bin/python # -*- coding: UTF-8 -*- import os import time import psutil import sys i -
Python获取磁盘使用信息,python获取GPU信息,python根据进程号获取进程信息,pynvml 获取GPU信息,psutil ...
2020-11-12 17:05:04psutil是一个跨平台模块,试用相应方法可以直接获取计算机CPU,内存,磁盘,网络等资源使用情况;可以使用我们学习知识与这模块用来做系统监控,性能分析;如果大家熟悉Linux系统,它能够实现ps、top、lsof、netstat... -
[原] Python 获取全部进程信息
2019-03-25 12:01:20转战Python已经半年,现在开始写一些自己开发的代码段 # 获取全部进程信息 def processInfo(): """ 获取全部进程信息 :return: list """ # 定义一个获取进程属性的方法 def getProperty(process, pro: str):... -
python 线程数
2020-12-16 14:00:09python 多线程真正的多线程吗?对于多核处理器,在同一时间确实可以多个线程独立运行,但在Python中确不是这样的了。原因在于,python虚拟机中引入了GIL这一概念。GIL(Global Interpreter Lock)全局解析器锁是用来... -
python 利用psutil获取系统的内存使用率前10的进程,CPU使用率前10的进程,系统负载,网卡流量以及每个进程...
2019-12-05 15:28:09python 利用psutil获取系统的内存使用率前10的进程,CPU使用率前10的进程,系统负载,网卡流量以及每个进程的磁盘IO情况。 注:仅适用于 linux 系统。 #!/usr/bin/python # -*- coding: UTF-8 -*- import psutil ... -
python之psutil模块(获取系统性能信息(CPU,内存,磁盘,网络)
2020-12-04 23:24:34psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU、内存、磁盘、网络等)信息。它主要应用于系统监控,分析和限制系统资源及进程的管理。它实现了同等... -
进程与子进程(python3入门)
2020-12-06 09:56:54一、开启进程的两种方式方式一:#方式一:使用函数开启进程from multiprocessing importProcessimporttimedeftask(x):print('%s is running' %x)time.sleep(1)print('%s is done' %x)if __name__ == '__main__':#p1 ... -
python监控进程脚本
2020-12-25 06:10:28监控一个指定进程,每隔5秒钟获取其CPU、内存使用量超过60%即kill掉该进程,获取其句柄数,超过300也kill掉该进程 运行环境是windows 64位系统+python 2.7 64位 ,这里需要使用到psutil 类库,要另外安装。脚本里面... -
python多进程 获取返回值的简单示例
2020-12-19 11:44:40例子参照了 https://docs.python.org/3/library/concurrent.futures.html import math import time from concurrent.futures import ProcessPoolExecutor PRIMES = [ 112272535095293, 112582705942171, ... -
python终止进程
2020-12-22 04:08:51多线程与计划任务通常,程序在文件中最后一行代码执行后终止(或调用sys.exit())。在程序的所有线程终止之前,python程序不会终止。...文章技术小美2017-11-14717浏览量python3中的进程由于GIL的存在,py... -
Python获取磁盘使用信息,python获取GPU信息!
2020-11-17 14:59:15psutil是一个跨平台模块,试用相应方法可以直接获取计算机CPU,内存,磁盘,网络等资源使用情况;可以使用我们学习知识与这模块用来做系统监控,性能分析;如果大家熟悉Linux系统,它能够实现ps、top、lsof、netstat... -
Python--多进程使用
2022-07-03 20:44:18一些经常用的python多进程概念