百摩网
当前位置: 首页 生活百科

如何获取cpu负载(cpu和核心关系负载)

时间:2023-07-22 作者: 小编 阅读量: 2 栏目名: 生活百科

cpu和核心关系[root@catlogs]#lscpuArchitecture:x86_64CPUop-mode(s):32-bit,64-bitByteOrder:LittleEndianCPU(s):8//8个核心On-lineCPU(s)list:0-7Thread(s)percore:2Core(s)persocket:4//每颗cpu有几个核心Socket(s):1//1颗cpuNUM

cpu和核心关系

[root@cat logs]# lscpuArchitecture:x86_64CPU op-mode(s):32-bit, 64-bitByte Order:Little EndianCPU(s):8//8个核心On-line CPU(s) list:0-7Thread(s) per core:2Core(s) per socket:4//每颗cpu有几个核心Socket(s):1//1颗cpuNUMA node(s):1Vendor ID:GenuineIntelCPU family:6Model:94Model name:Intel(R) Core(TM) i7-6700 CPU @ 3.40GHzStepping:3CPU MHz:800.000BogoMIPS:6816.07Virtualization:VT-xL1d cache:32KL1i cache:32KL2 cache:256KL3 cache:8192KNUMA node0 CPU(s):0-7

平均负载

1分钟、5分钟、15分钟

$ uptime 07:40:47 up 24 min,2 users,load average: 0.14, 0.14, 0.19

  1. 单位时间 内,系统处于 可运行状态 和 不可中断状态 的平均进程数,也就是 平均活跃进程数 ,它和CPU使用率并没有直接关系
  2. 所谓 可运行状态 的进程,是指 正在使用CPU 或者 正在等待CPU 的进程也就是我们常用ps命令看到的,处于 R 状态( Running 或 Runnable )的进程
  3. 不可中断状态 的进程则是正处于 内核态关键流程 中的进程,并且这些流程是 不可打断 的比如最常见的是 等待硬件设备的I/O响应也就是我们在ps命令中看到的 D 状态( Uninterruptible Sleep ,也称为 Disk Sleep )的进程当一个进程向磁盘读写数据时,为了 保证数据的一致性在得到磁盘回复前,它是不能被其他进程或者中断打断的,这个时候的进程就处于不可中断状态不可中断状态实际上是系统对 进程 和 硬件设备 的一种 保护机制
理想情况平均负载 = CPU个数

$ grep 'model name' /proc/cpuinfo | wc -l32$ top 1top - 08:04:15 up 48 min,2 users,load average: 0.07, 0.09, 0.09Tasks: 201 total,1 running, 200 sleeping,0 stopped,0 zombie%Cpu0:0.0 us,0.0 sy,0.0 ni,100.0 id,0.0 wa,0.0 hi,0.0 si,0.0 st%Cpu1:0.0 us,0.0 sy,0.0 ni, 99.7 id,0.0 wa,0.0 hi,0.3 si,0.0 st

经验值

关注时机: 平均负载 >= CPU * 70%

平均负载 / CPU 使用率
  1. 平均负载 – 平均活跃进程数CPU 使用率 – 单位时间内 CPU繁忙情况 的统计单位时间内,处于 可运行状态 和 不可中断状态 的进程数
  2. 两者不一定完全对应CPU密集型 进程,使用大量CPU会导致平均负载升高,此时这两者是 一致 的I/O密集型 进程, 等待I/O 也会导致平均负载升高,但 CPU使用率不一定很高(并发)大量等待CPU的进程调度 也会导致平均负载升高,此时的CPU使用率也会比较高

[root@cat logs]# w 09:40:30 up 441 days, 23:36,5 users,load average: 0.92, 1.12, 1.22USERTTYFROMLOGIN@IDLEJCPUPCPU WHATroottty1-01Jun21 441days0.17s0.17s -bashliexin52 pts/0192.168.1.16808Aug220.00s0.19s0.03s sshd: liexin521 [priv]liexin52 pts/1lcrm_new.liexin. 08Aug22 46:41m0.09s0.02s sshd: liexin521 [priv]rootpts/3192.168.1.1826Jul22 43:25m0.08s0.08s -bashrootpts/8192.168.1.192Mon1245:34m0.07s0.07s -bash

工具

工具

用途

stress

Linux系统压力测试工具

sysstat

常用的 Linux 性能工具,监控和分析系统的性能

mpstat :多核CPU性能分析工具,用来实时查看每个CPU的性能指标,以及所有CPU的平均指标

pidstat :进程性能分析工具,用来实时查看进程的CPU、内存、I/O以及上下文切换等性能指标

案例CPU密集型

平均负载高,CPU 使用率也高

发起压力

root@ubuntu:~# stress --cpu 1 --timeout 600stress: info: [4783] dispatching hogs: 1 cpu, 0 io, 0 vm, 0 hdd

平均负载

root@ubuntu:~# watch -d uptime 08:35:03 up1:19,5 users,load average: 1.08, 0.89, 0.50

CPU 使用率

CPU 1的使用率为99.8%,但 iowait为0,平均负载的升高正是由于 CPU 的使用率为100%

root@ubuntu:~# mpstat -P ALL 5Linux 5.4.0-62-generic (ubuntu)02/02/21_x86_64_(2 CPU)08:40:12CPU%usr%nice%sys%iowait%irq%soft%steal%guest%gnice%idle08:40:17all50.050.000.200.000.000.100.000.000.0049.6508:40:1700.000.000.200.000.000.200.000.000.0099.6008:40:17199.800.000.200.000.000.000.000.000.000.00

进程的 CPU 使用率

root@ubuntu:~# pidstat -u 5 1Linux 5.4.0-62-generic (ubuntu)02/02/21_x86_64_(2 CPU)08:40:26UIDPID%usr %system%guest%wait%CPUCPUCommand08:40:3106940.000.200.000.000.201multipathd08:40:3107430.200.000.000.000.200vmtoolsd08:40:31038140.000.400.000.000.400kworker/0:1-events08:40:310618799.800.000.000.2099.801stressAverage:UIDPID%usr %system%guest%wait%CPUCPUCommandAverage:06940.000.200.000.000.20-multipathdAverage:07430.200.000.000.000.20-vmtoolsdAverage:038140.000.400.000.000.40-kworker/0:1-eventsAverage:0618799.800.000.000.2099.80-stress

IO 密集型 –%iowait

平均负载高,但 CPU 使用率不高

发起压力

模拟IO 压力,不断执行sync

root@ubuntu:~# stress --io 1 --timeout 600stress: info: [8941] dispatching hogs: 0 cpu, 1 io, 0 vm, 0 hdd

平均负载

root@ubuntu:~# watch -d uptime 08:59:04 up1:43,5 users,load average: 1.06, 0.58, 0.37

CPU 使用率

CPU 使用率不高,但 %iowait 很高

root@ubuntu:~# mpstat -P ALL 5Linux 5.4.0-62-generic (ubuntu)02/02/21_x86_64_(2 CPU)08:55:52CPU%usr%nice%sys%iowait%irq%soft%steal%guest%gnice%idle08:55:57all0.210.0012.0732.670.000.210.000.000.0054.8408:55:5700.430.0023.8767.530.000.430.000.000.007.7408:55:5710.000.000.810.200.000.000.000.000.0098.99

压力测试:8个进程 一个进程写1g

iostat

[root@host-234 ~]# iostatLinux 3.10.0-1127.19.1.el7.x86_64 (host-234)2022年08月17日_x86_64_(32 CPU)avg-cpu:%user%nice %system %iowait%steal%idle 1.610.000.740.300.0097.34Device:tpskB_read/skB_wrtn/skB_readkB_wrtnsdb14.401.41308.5653843909 11814063450sda17.4713.29373.83508979129 14313025448dm-03.989.9127.04379521960 1035293816dm-10.270.290.791092915230295048dm-25.633.10345.98118521576 13246791308dm-318.151.41308.5853814784 11814705692dm-461.061276.28231.08 48866147007 8847722188dm-50.080.012.6143777699887371dm-60.100.022.5462650097072884dm-170.060.021.9367639674035226dm-180.000.000.0012995610067dm-190.000.000.0014696111486dm-100.060.091.55335334259327101dm-80.000.000.0015892363592dm-90.070.361.411379116954042151dm-130.000.020.0060833295174dm-110.000.010.0020005876432dm-122.549.9381.39380211145 3116143442dm-140.000.020.00908663107019dm-150.000.010.0022929588952dm-160.000.000.01100564352063

iotop

进程的 CPU 使用率

root@ubuntu:~# pidstat -u 5 1Linux 5.4.0-62-generic (ubuntu)02/02/21_x86_64_(2 CPU)08:40:31UIDPID%usr %system%guest%wait%CPUCPUCommand08:40:3101040.003.390.000.003.391kworker/1:1H08:40:3101090.000.400.000.000.400kworker/0:1H08:40:31029972.0035.530.003.9937.521stress08:40:31030570.000.400.000.000.400pidstat

--大量进程 –%wait----

平均负载高,CPU 使用率也高

发起压力

运行进程超出 CPU 的运行能力,出现等待 CPU 的进程

root@ubuntu:~# stress --cpu 8 --timeout 600或stree -c 4 --timeout 600stress: info: [7773] dispatching hogs: 8 cpu, 0 io, 0 vm, 0 hdd

平均负载

root@ubuntu:~# watch -d uptime 08:59:04 up1:43,5 users,load average: 8.10, 6.11, 3.29

CPU 使用率

CPU 的使用率都已经是100%

%iowait : Show the percentage of time that the CPU or CPUs were idle during which the system had an outstanding disk I/O request.root@ubuntu:~# mpstat -P ALL 5Linux 5.4.0-62-generic (ubuntu)02/02/21_x86_64_(2 CPU)08:55:52CPU%usr%nice%sys %iowait%irq%soft%steal%guest%gnice%idle08:55:57all100.000.000.000.000.000.000.000.000.000.0008:55:570100.000.000.000.000.000.000.000.000.000.0008:55:571100.000.000.000.000.000.000.000.000.000.00

进程的 CPU 使用率

8个进程争抢2个 CPU, %wait 很高

%wait : Percentage of CPU spent by the task while waiting to run.

root@ubuntu:~# pidstat -u 5 1Linux 5.4.0-62-generic (ubuntu)02/02/21_x86_64_(2 CPU)08:56:26UIDPID%usr %system%guest%wait%CPUCPUCommand08:56:31076440.000.200.000.000.200kworker/0:2-pm08:56:310777424.750.000.0075.0524.750stress08:56:310777524.950.000.0074.8524.951stress08:56:310777624.950.000.0075.2524.951stress08:56:310777724.750.000.0075.0524.750stress08:56:310777824.750.000.0075.2524.750stress08:56:310777924.950.000.0075.2524.951stress08:56:310778024.950.000.0075.0524.951stress08:56:310778124.750.000.0075.0524.750stress08:56:31082140.000.200.000.000.201pidstatAverage:UIDPID%usr %system%guest%wait%CPUCPUCommandAverage:076440.000.200.000.000.20-kworker/0:2-pmAverage:0777424.750.000.0075.0524.75-stressAverage:0777524.950.000.0074.8524.95-stressAverage:0777624.950.000.0075.2524.95-stressAverage:0777724.750.000.0075.0524.75-stressAverage:0777824.750.000.0075.2524.75-stressAverage:0777924.950.000.0075.2524.95-stressAverage:0778024.950.000.0075.0524.95-stressAverage:0778124.750.000.0075.0524.75-stressAverage:082140.000.200.000.000.20-pidstat

总结:

    推荐阅读
  • 储存和制氢气的方法(制氢气的方法)

    下面希望有你要的答案,我们一起来看看吧!储存和制氢气的方法储存氢气:把氢气经过加压后放在储气罐里。实验室制法:用强酸与活泼金属反应,如Zn+2HCl=ZnCl2+H2↑;用碱金属与水反应,如2Na+2H2O=2NaOH+H2↑。工业制法:利用电解饱和食盐水产生氢气,如2NaCl+2H2O=通电=2NaOH+Cl2↑+H2↑,同时也是工业制氯气的办法。

  • 古代娱乐活动有哪些(古代娱乐活动介绍)

    以下内容大家不妨参考一二希望能帮到您!在我国已经有很久的历史了,在唐朝时甚至有了在清明斗鸡的习俗,这是一项非常受人欢迎的活动。不过大多数人打牌都只是为了消磨时间而已。

  • 阴阳师4月更新公告(阴阳师8月14日更新)

    男主角黑崎一护是个看似暴力、单薄,实质上善良、勇敢、爱护家庭的少年,并且拥有能看见灵的体质。死神朽木露琪亚隶属于十三番队,为了保护一护及其家人,将死神之力分给了一护。因触犯重罪险遭死刑处罚,被一护救出后作为死神回到了正常生活中。同时,黑崎一护妖气副本开放时间为8月14日至20日,每天最多获得1个碎片。

  • 寂静岭新作是什么(关于寂静岭重制版)

    《寂静岭》是有史以来最经典的恐怖游戏之一,无论是角色塑造、气氛营造和心理暗示,都堪称大师级。首先,根据游戏爆料人NateTheHate2的说法,BlooberTeam正在开发《寂静岭2:重制版》,包含新的谜题和结局,并且是Playstation限时独占。另外,多个《寂静岭》项目正在开发中,包含新的主线和支线故事。无论如何,希望《寂静岭》重制版早日上市,毕竟它是恐怖游戏的一颗“瑰宝”。β传闻,下周将有恐怖大作《TheCallistoProtocol》的消息。

  • 成都公积金基数有几个档次?(成都住房公积金缴存基数有几档)

    成都公积金基数主要是为职工本人上一年度月平均工资而计算的,公司来确实缴存比例的,因此基数没有明确的档次。单位缴存住房公积金确有困难的,经本单位职代会或工会讨论通过,可申请低于规定比例缴存住房公积金,经公积金中心审批通过后执行;待单位经济效益好转后,再提高缴存比例。单位在5%~12%范围内,经本单位职代会或工会讨论通过,可按差异化比例缴存;职工个人可在不低于单位缴存比例,并在规定上限范围内选择个人缴存比例。

  • 玉米面汤家常做法(简单易做的玉米汤面)

    ByFC美食煮意用料挂面100克小香葱1根盐少许鸡蛋1个香菇1朵胡萝卜半根枸杞少许做法步骤1、锅中放油,把鸡蛋煎熟。配料,香菇胡萝卜。做菜好吃都有技巧,我的每道菜都有小妙招,大家搜索“豆果”可以直接查看我的菜谱!欢迎在下方留言分享您对这道美食的建议。

  • 空气污染指数都包括什么(空气污染预报图和等级)

    “气象部门在全国范围内设有约80个监测站,可以采集这方面的数据。此外,我们还会参考中国环境监测总站空气质量发布平台上的相关数据。”此外,气溶胶浓度与相对湿度对雾、霾生成与持续,也至关重要。拿到基本的气象要素、大气成分数据和模式运行结果后,气象专家还需要考虑高空环流型变化、低层环流及温度场、冷空气活动、地面气压场变化等。

  • 电脑微信语音聊天无声音(微信语音无声音怎么办)

    电脑微信语音聊天无声音请重新启动计算机,是否听到正常的启动声音。若听到启动声音,请您检查播放软件或所播放的文件是否有问题,现在计算机的硬件和驱动程序已经无问题。确认音箱已经与声卡正确的连接且只有一个声音输出设备;一般正确的接口应为绿色,具体信息您可以参考:声卡各接口的定义和作用。重新启动主机,按住DEL键,进入主机BIOSSETUP中调用缺省设置。请确认任务栏上的声音图标是否为静音,如果是,请您双击图标,取消静音。

  • 开心消消乐隐藏关165关过关攻略(开心消消乐隐形关卡63关过关图解)

    开心消消乐隐形关卡63关过关图解,本关卡中主要的位置在于左侧的空间,开局的时候,就可以制作出魔力鸟的组合,消除起来是比较的有趣的,下面我们来看看这个关卡中的闯关难点介绍吧,希望可以帮助大家了解。