2.linux操作系统CPU使用率和平均负载区别

目录

概述

linux操作系统CPU 使用率平均负载 区别

负载高并不一定使用率高,有可能 cpu 被占用,但不干活。

cpu使用率

cpu使用率:cpu非空闲态运行的时间占比,反映cpu的繁忙程度,和平均负载不一定完全一致

  • 生产系统的cpu总使用率不要超过70~80%
  • 比如
    • 单核cpu 1s 内非空闲态运行时间为0.8s ,那么它的cpu使用率就是 80%
    • 双核cpu 1s 内非空闲态运行时间为分别为 0.4s 和 0.6s,总体 cpu 使用率就是 (0.4s+0.6s)/(1s*2) = 50%
  • linux的top命令查看cpu使用率 (核心指标、不常用的忽略)
    • us(user) :cpu在用户态运行的时间百分比,通常用户态cpu高表示有应用程序比较繁忙,使用率高
    • sy(sys): cpu在内核态运行的时间百分比(不包括中断),内核态 cpu 越低越好
    • id(idle):cpu处于空闲态的时间占比,cpu会执行一个特定的虚拟进程,名为 system idle process
      • 值高的话,则说明cpu比较空闲
    • wal(iowait)
      • cpu 在等待i/0 操作完成所消耗的时间,改指标越低越好,否则表示 i/o 存在瓶颈,用 iostat 命令进一步分析
    • hi(hardirq): cpu处理硬中断所花的时间,由外设硬件(如键盘控制器、硬件优越感器等)发出的中断信号,快速执行
    • si(softirq): cpu 处理软中断所花费的时间,由软件程序(如网络收发、定时调试等) 发出的中断信号,延迟执行
    • st(steal) :cpu被其他的虚拟机占用的时间,仅出现在多虚拟机场景,指标过高的话,检查 下宿主机或其他虚拟机是否异常

区别

cpu使用率和平均负载

  • cpu平均负载 :指单位时间内活跃进程数,包括正在使用 cpu 的进程,还包括等待 cpu 和等待 i/0的进程

    • 可运行状态和不可中断状态的平均进程数
  • cpu使用率:是指单位时间内cpu繁忙情况的统计

说明

  • cpu密集型进程,使用大量 cpu 运算会导致平均负载升高,使用率也会升高,这个场景两者是一致的
  • i/o 密集型进程,等待 i/o 也会导致平均负载长高,但 cpu 使用率不一定很高
  • 拓展:cpu 密集型应用和io密集型应用

结束

linux操作系统CPU使用率和平均负载区别 总结。

相关推荐
Jing_jing_X3 天前
CPU 架构:x86、x64、ARM 到底是什么?为什么程序不能通用?
arm开发·架构·cpu
小白狮ww5 天前
Ovis-Image:卓越的图像生成模型
人工智能·深度学习·目标检测·机器学习·cpu·gpu·视觉分割模型
菜鸟的学习日记、7 天前
CPU/MCU/SOC/FPGA概念对比
mcu·cpu·soc
SunkingYang8 天前
QT中如何遍历QList与QStringList容器分别都有什么功能,如何来使用它们?
qt·用法·区别·功能·用途·qlist·qstringlist
SunnyRivers8 天前
Python 中的 HTTP 客户端:Requests、HTTPX 与 AIOHTTP 对比
python·httpx·requests·aiohttp·区别
驱动探索者10 天前
AMD EPYC 服务器 CPU 学习
运维·服务器·学习·cpu
十五年专注C++开发14 天前
浅谈CPU中的SIMD
c++·cpu·代码优化·simd
AndrewHZ16 天前
【AI黑话日日新】什么是访存bound?
人工智能·语言模型·大模型·cpu·访存·计算逻辑
REDcker20 天前
Intel英特尔芯片架构演进史详解
架构·cpu·intel·英特尔·演进
高新打工人23 天前
RISC-V(三):RV32M(RISC-V 32 位乘法 / 除法扩展指令集)
cpu·risc-v