如何查看Linux的CPU负载

哪些工具可以查看 CPU 负载?

可以使用 top 命令、uptime 命令,特别是 top 命令,功能强大,不仅仅可以用来查看 CPU 负载。

CPU 负载怎么理解?是不是 CPU 利用率?

要区别 CPU 负载和 CPU 利用率,它们是不同的两个概念,但它们的信息可以在同一个 top 命令中进行显示。CPU 利用率显示的是程序在运行期间实时占用的 CPU 百分比,而 CPU 负载显示的是一段时间内正在使用和等待使用 CPU 的平均任务数。CPU 利用率高,并不意味着负载就一定大。网上有篇文章举了一个有趣比喻,拿打电话来说明两者的区别,我按自己的理解阐述一下。 某公用电话亭,有一个人在打电话,四个人在等待,每人限定使用电话一分钟,若有人一分钟之内没有打完电话,只能挂掉电话去排队,等待下一轮。电话在这里就相当于 CPU,而正在或等待打电话的人就相当于任务数。 在电话亭使用过程中,肯定会有人打完电话走掉,有人没有打完电话而选择重新排队,更会有新增的人在这儿排队,这个人数的变化就相当于任务数的增减。为了统计平均负载情况,我们 5 秒钟统计一次人数,并在第 1、5、15 分钟的时候对统计情况取平均值,从而形成第 1、5、15 分钟的平均负载。 有的人拿起电话就打,一直打完 1 分钟,而有的人可能前三十秒在找电话号码,或者在犹豫要不要打,后三十秒才真正在打电话。如果把电话看作 CPU,人数看作任务,我们就说前一个人(任务)的 CPU 利用率高,后一个人(任务)的 CPU 利用率低。 当然, CPU 并不会在前三十秒工作,后三十秒歇着,只是说,有的程序涉及到大量的计算,所以 CPU 利用率就高,而有的程序牵涉到计算的部分很少,CPU 利用率自然就低。但无论 CPU 的利用率是高是低,跟后面有多少任务在排队没有必然关系。

如何来降低服务器的 CPU 负载呢?

最简单办法的是更换性能更好的服务器,不要想着仅仅提高 CPU 的性能,那没有用,CPU 要发挥出它最好的性能还需要其它软硬件的配合。 在服务器其它方面配置合理的情况下,CPU 数量和 CPU 核心数(即内核数)都会影响到 CPU 负载,因为任务最终是要分配到 CPU 核心去处理的。两块 CPU 要比一块 CPU 好,双核要比单核好。 因此,我们需要记住,除去 CPU 性能上的差异,CPU 负载是基于内核数来计算的!有一个说法,“有多少内核,即有多少负载”。

CPU 负载为多少才算比较理想?

个人比较赞同 CPU 负载小于等于 0.7 算是一种理想状态。 不管某个 CPU 的性能有多好,1 秒钟能处理多少任务,我们可以认为它无关紧要,虽然事实并非如此。在评估 CPU 负载时,我们只以 5 秒钟为单位为统计任务队列长度。如果每隔 5 秒钟统计的时候,发现任务队列长度都是 1,那么 CPU 负载就为 1。假如我们只有一个单核的 CPU,负载一直为 1,意味着没有任务在排队,还不错。 上面提到的我那台服务器,是双核又 CPU,等于是有 4 个内核,每个内核的负载为 1 的话,总负载为 4。这就是说,如果我那台服务器的 CPU 负载长期保持在 4 左右,还可以接受。但实际上 CPU 负载已经达到 9 以上了,所以就很麻烦了。  但是每个内核的负载为 1,并不能算是一种理想状态!这意味着我们的 CPU 一直很忙,不得清闲。网上有说理想的状态是每个内核的负载为 0.7 左右,我比较赞同,0.7 乘以内核数,得出服务器理想的CPU 负载,比如我这台服务器,负载在 3.0 以下就可以。

#查看CPU型号:

$>grep ‘model name‘ /proc/cpuinfo |uniq

model name : Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHz

#查看CPU物理个数

$>grep ‘physical id‘ /proc/cpuinfo |sort |uniq |wc -l

0

#查看单个CPU是几核的

$>grep ‘cpu cores‘ /proc/cpuinfo |uniq

原文地址:https://www.cnblogs.com/setevn/p/8729446.html

时间: 2024-08-30 06:34:42

如何查看Linux的CPU负载的相关文章

Linux的CPU负载

Linux下的CPU负载: 指的是一段时间内任务队列的长度,通俗的讲,就是一段时间内一共有多少任务在使用或等待使用CPU. 通常通过有3个数值,分别代表1,5,15钟内的平均CPU负载,越小越好. CPU负载与CPU利用率不是同一个概念.虽然CPU负载表示当前系统还有多少个任务等待处理,而CPU利用则表明的是在一个任务上,CPU的使用率. Linux的CPU负载

LINUX内核CPU负载均衡机制【转】

转自:http://oenhan.com/cpu-load-balance 还是神奇的进程调度问题引发的,参看Linux进程组调度机制分析,组调度机制是看清楚了,发现在重启过程中,很多内核调用栈阻塞在了double_rq_lock函数上,而double_rq_lock则是load_balance触发的,怀疑当时的核间调度出现了问题,在某个负责场景下产生了多核互锁,后面看了一下CPU负载平衡下的代码实现,写一下总结. 内核代码版本:kernel-3.0.13-0.27. 内核代码函数起自load_

查看 Linux 下 CPU、内存的占用率的方法集锦

如何查看 Linux 下内存占用率方法一 : 我们可以使用下面命令的组合来达到此目的.在该方法中,我们使用的是 free 和 awk 命令的组合来获取内存占用率. 要获取不包含百分比符号的内存占用率: #free -t | awk 'NR ==2 {print "CurrentMemory Utilization is: "$3/$2*100}' 或 #free -t | awk 'FNR ==2 {print"Current Memory Utilization is: &

如何查看linux系统CPU利用率

当linux系统被某一个进程占用时,它无法处理其它进程的请求.余下等待处理的请求必须等到CPU空闲.这个时候,系统会变得很慢.以下命令将能够帮助你识别CPU的利用率,从而解决与CPU相关的问题.    查明CPU利用率是一项重要的任务.linux系统附带了报告CPU利用率的各种工具.利用这些工具,你将可以查明:    *CPU利用率    *显示每一个CPU的利用率    *了解系统CPU的平均利用率    *直观的找到哪个进程正在吃CPU #1:toptop程序提供了一个动态的.实时的.直观的

查看Linux物理CPU个数

查看内核版本 lsb_release -a 查看物理CPU个数.核数.逻辑CPU个数 (1)具有相同core id的CPU是同一个core的超线程. (2)具有相同physical id的CPU是同一个CPU封装的线程或核心. (3)总物理核数 = 物理CPU个数 X 每颗物理CPU的核数 (4)总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 (5)因此,对比总物理核数和总逻辑CPU数,如果不相等,则表示服务器CPU开启超线程. #查看CPU信息(型号) awk -F

查看linux的cpu信息

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 查看每个物理CPU中core的个数(即核数) cat /proc/cpuinfo| grep "cpu cores"| uniq # 查看总逻辑CPU的个数 cat /proc/cpuinf

查看linux服务器CPU数量

首先,要区分两个概念:物理CPU和逻辑CPU. 物理CPU就是服务器上实际安装的CPU.但是一个物理CPU可以有多个核.例如,一个 i5 760 是双核,而一个 i5 2250 是四核.如果开启了Intel的超线程技术(HT),还可以在逻辑上再分出一倍的核出来.也就是: 逻辑CPU数量 = 物理CPU数量 x CPU核数.如果开启了HT,再 x 2. 那么,如何查看这些信息? Linux下,通过查看 /proc/cpuinfo 文件的内容就可以得到CPU的信息了.以下是一个示例: 这个文件存储了

查看Linux进程CPU过高具体的线程堆栈(不中断程序)

1.TOP命令,找到占用CPU最高的进程 $ top top - 20:11:45 up 850 days,  1:18,  3 users,  load average: 1.04, 1.01, 0.99 Tasks:  61 total,   1 running,  60 sleeping,   0 stopped,   0 zombie Cpu(s):  1.4% us,  0.1% sy,  0.0% ni, 98.3% id,  0.1% wa,  0.0% hi,  0.2% si 

查看Linux上CPU信息

一.命令说明 CPU相关的信息从/proc/cpuinfo文件中查看,以下是查看的命令: 查看物理CPU数 cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 查看CPU核心数 cat /proc/cpuinfo | grep "cpu cores" |uniq 查看CPU的处理器数 cat /proc/cpuinfo | grep "processor" | wc -l 二.实例 1.以下