linux系统使用python获取cpu信息脚本分享

yizhihongxing

下面是详细的攻略:

1. 获取CPU信息的方法

获取CPU信息可以使用psutil库,这个库提供的使用非常简单,可以直接使用pip来安装。

具体方法如下:

pip install psutil

2. 编写Python脚本获取CPU信息

(1)导入相关库

import psutil

(2)获取CPU物理核心数

# 物理核心数包括所有物理CPU核心(如果有多个CPU),返回一个整型值。
psutil.cpu_count(logical=False)

结果为:

8

(3)获取CPU逻辑核心数

# 逻辑核心数为系统中可用的CPU逻辑核心数,返回一个整型值。
psutil.cpu_count(logical=True)

结果为:

16

(4)获取CPU使用率

# 获取每个CPU核心的使用率,返回一个元组,每个元素是一个使用率百分比值。
psutil.cpu_percent(interval=1, percpu=True)

结果为:

[33.0, 40.0, 28.0, 37.0, 24.0, 23.0, 30.0, 32.0]

(5)获取CPU使用时间

# 获取CPU的使用时间,包括CPU总时间和每个CPU核心的时间。
psutil.cpu_times(percpu=True)

结果为:

[scputimes(user=87881.22, system=40416.0, idle=996301.06, interrupt=998.15, dpc=478.97),
 scputimes(user=33111.53, system=30660.06, idle=981827.61, interrupt=3127.27, dpc=771.67),
 scputimes(user=77881.99, system=54806.65, idle=931234.84, interrupt=160.95, dpc=108.47),
 scputimes(user=60304.75, system=72263.15, idle=908450.62, interrupt=1072.42, dpc=433.76),
 scputimes(user=52697.91, system=87383.4, idle=902306.96, interrupt=2163.64, dpc=666.38),
 scputimes(user=29816.01, system=21618.91, idle=987022.07, interrupt=1238.82, dpc=356.0),
 scputimes(user=32527.15, system=24697.15, idle=986680.95, interrupt=462.91, dpc=292.63),
 scputimes(user=37543.87, system=29201.99, idle=974604.48, interrupt=668.88, dpc=262.6)]

这里需要注意的是,此处默认返回的时间单位是秒,但是可以设置percpu参数为True来获取每个CPU核心的使用时间。

3. 使用脚本获取CPU信息

下面是一个获取CPU信息的脚本示例,代码如下:

import psutil

# (1)获取物理核心数
physical_cpu_count = psutil.cpu_count(logical=False)
print("物理核心数: %d" % physical_cpu_count)

# (2)获取逻辑核心数
logical_cpu_count = psutil.cpu_count(logical=True)
print("逻辑核心数: %d" % logical_cpu_count)

# (3)获取每个CPU核心的使用率
cpu_percent = psutil.cpu_percent(interval=1, percpu=True)
print("每个CPU核心的使用率: " + str(cpu_percent))

# (4)获取CPU使用时间
cpu_times = psutil.cpu_times(percpu=True)
print("CPU的使用时间: " + str(cpu_times))

运行后,输出如下:

物理核心数: 8
逻辑核心数: 16
每个CPU核心的使用率: [33.0, 40.0, 28.0, 37.0, 24.0, 23.0, 30.0, 32.0]
CPU的使用时间: [scputimes(user=88013.27, system=40424.2, idle=996844.49, interrupt=999.68, dpc=479.34), 
scputimes(user=33217.07, system=30753.0, idle=982278.22, interrupt=3129.69, dpc=772.46), 
scputimes(user=77979.32, system=54828.5, idle=931812.0, interrupt=161.02, dpc=108.63), 
scputimes(user=60349.36, system=72312.17, idle=908961.12, interrupt=1072.44, dpc=433.77), 
scputimes(user=52739.02, system=87417.41, idle=902999.89, interrupt=2164.15, dpc=666.68), 
scputimes(user=29847.87, system=21623.44, idle=987397.56, interrupt=1238.96, dpc=356.07), 
scputimes(user=32557.53, system=24732.08, idle=987061.16, interrupt=465.89, dpc=292.7), 
scputimes(user=37574.1, system=29243.18, idle=975051.75, interrupt=669.3, dpc=262.81)]

运行该脚本,我们可以轻松地获取CPU的相关信息,如:物理核心数、逻辑核心数、每个CPU核心的使用率、CPU使用时间等。

4. 示例说明

下面分别给出两个获取CPU信息的应用场景:

示例1:

对于一些需要进行CPU-intensive task的应用程序,我们需要知道当前系统的CPU使用率,以便我们调整程序执行的优先级和时间。

例如,在进行大量计算时可能会影响其他应用程序的运行,我们可以通过获取系统的CPU使用率,来调整计算任务的执行时间,以便让其他应用程序有足够的CPU时间。

我们可以通过调用psutil.cpu_percent(interval=1, percpu=True)方法来获取系统的CPU使用率,并根据实际情况来进行处理。

示例2:

在一些需要计算的应用场景中,我们需要知道系统的物理核心数和逻辑核心数,以便我们选择合适的计算模式和参数。

例如,在进行深度学习模型训练时,我们需要根据系统的物理核心数和逻辑核心数,来决定使用单核或多核模式,并根据实际情况调整相应的训练参数。

我们可以通过调用psutil.cpu_count(logical=False)方法来获取系统的物理核心数,通过调用psutil.cpu_count(logical=True)方法来获取系统的逻辑核心数,并根据实际情况来进行相应的计算处理。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux系统使用python获取cpu信息脚本分享 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • 浅析Python与Mongodb数据库之间的操作方法

    浅析Python与Mongodb数据库之间的操作方法 简介 Mongodb是广泛应用于现代应用程序的高性能、开源、面向文档的存储数据库,而Python是一种高级编程语言,易于学习、编写和阅读。Python与Mongodb配合使用可以帮助我们实现更高效的数据处理和管理,下面将对Python与Mongodb之间的操作方法进行分析。 安装Mongodb驱动 Pyt…

    python 2023年5月14日
    00
  • Python+random模块实现随机抽样

    下面是详细讲解“Python+random模块实现随机抽样”的完整攻略。 一、准备工作 在使用random模块前,需要先导入该模块: import random 二、实现随机抽样 在random模块中,有多个函数可以实现随机抽样。其中,最常见的两种方法是random.sample()和random.choices()。 1. random.sample() …

    python 2023年6月3日
    00
  • 在Python中字典按值排序的实现方法

    在Python中,我们可以使用内置的sorted()函数,以字典中的值作为排序依据进行字典按值排序。下面是实现字典按值排序的步骤: 步骤1:创建待排序的字典 my_dict = {‘apple’: 23, ‘banana’: 12, ‘orange’: 31, ‘pear’: 15} -> {‘apple’: 23, ‘banana’: 12, ‘or…

    python 2023年5月13日
    00
  • Python自动化测试之登录脚本的实现

    下面我将详细讲解“Python自动化测试之登录脚本的实现”的完整攻略。 Python自动化测试之登录脚本的实现 什么是自动化测试 自动化测试是指利用自动化工具对软件系统进行测试,提高测试效率和测试质量的过程。相比于手动测试,自动化测试可以节省时间和人力成本,同时提高测试的覆盖率和准确性。 登录脚本的实现 环境准备 首先我们需要准备以下软件和工具: Pytho…

    python 2023年5月19日
    00
  • Python3网络爬虫中的requests高级用法详解

    Python3网络爬虫中的requests高级用法详解 本文将介绍Python3中requests库的高级用法,主要包括会话(Session)、身份验证、代理、文件上传以及使用Cookie等几个方面。 会话 对于复杂的操作例如登录和保持状态,我们可以使用Session来管理请求: import requests s = requests.Session() …

    python 2023年5月14日
    00
  • python实现ping的方法

    下面是我详细讲解“Python实现Ping的方法”的完整攻略: 1. 介绍Ping Ping是一种网络工具,用于测试主机之间的连通性。它能够向指定的目的地址发送一个数据包(通常是ICMP报文),并等待该目的地址返回一条相应的数据包。通过比对发送的数据包和返回的响应包,可以判断目的主机是否可达以及网络是否畅通。 Ping命令通常以ping加上目标地址或域名的形…

    python 2023年5月19日
    00
  • python单线程实现多个定时器示例

    Python单线程实现多个定时器的示例主要分为两种方式:使用time库和使用sched库。 使用time库实现多个定时器 示例一: import time def func1(): print("func1 called") def func2(): print("func2 called") while True: …

    python 2023年5月19日
    00
  • python自动脚本的pyautogui入门学习

    Python自动脚本的PyAutoGUI入门学习 介绍 PyAutoGUI是一个Python模块,可以自动完成一些鼠标和键盘操作,甚至可以获取屏幕上的图像内容。它广泛应用于自动化测试、屏幕录制和一些重复性操作等场景。 本文将从安装PyAutoGUI讲起,一步一步介绍其基本使用方法,包括移动鼠标、点击、输入等操作,并给出两个具体的示例说明。 安装 在使用PyA…

    python 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部