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使用率和平均负载区别 总结。

相关推荐
sz66cm15 小时前
CPU架构 -- ARMv7与ARMv8协处理器比较
架构·arm·cpu
dingdingfish4 天前
一个计算密集小程序在不同CPU下的表现
linux·arm·cpu·intel·benchmark·amd
艾恩小灰灰5 天前
HTML5与HTML:不仅仅是标签的革新
前端·html·html5·web开发·web前端·区别·关系
JokerSZ.6 天前
用V e r i l o g实现一个简单ALU(组合逻辑)
fpga开发·cpu·数字逻辑
脑子不好真君9 天前
行列式和矩阵的区别
矩阵·行列式·区别
NPE~22 天前
Linux CGroup资源限制(概念&限制进程CPU使用)
linux·运维·服务器·cpu·磁盘·cgroup
紫郢剑侠1 个月前
Linux shell编程学习笔记57:lshw命令 获取cpu设备信息
linux·学习笔记·cpu·shell编程·脚本编程·系统信息·lshw命令
Rjdeng1 个月前
Android 中资源文件夹RES/RAW和ASSETS的使用区别
android·使用场景·区别·res/raw·assets
橘色的喵1 个月前
如何使用perf 统计cpu和内存?
arm·内存·cpu·perf