linux性能系列--cpu
一、先看看什么是CPU?
回答:中央处理器(Central Processing Unit)的缩写,即CPU,CPU是电脑中的核心配件,只有火柴盒那么大,几十张纸那么厚,但它却是一台计算机的运算核心和控制核心。电脑中所有操作都由CPU负责读取指令,对指令译码并执行指令的核心部件。
想了解详细的cpu介绍请去百科:CPU页面
二、如何查看机器的cpu相关信息呢
?


三、怎么查看系统CPU的负载情况
?

关于vmstat的详细介绍请点击这里
四、如何查看某个进程的cpu使用情况呢
?


五、Cpu性能指标及解释
- CPU Utilization - CPU使用率
CPU Utilization是衡量程序占用系统资源的最直观指标,即CPU使用率。如果CPU Utilization在5%-10%之间则基本上对系统没有影响,可以不关注。但如果在80%-90%,或者更高的话,就可能出现处理器性能瓶颈了。 - User Time - 用户时间
描述CPU耗费在用户进程上的百分比,包括Nice time。如果User Time值很高,则表明系统正在执行实际的工作。 - System Time - 系统时间
描述CPU耗费在内核操作上的CPU百分比,包括硬中断(IRQ)和软中断(SoftIRQ?)。System Time值持续很高表明网络或驱动程序栈可能存在瓶颈。性能良好的系统应当耗费尽量少的时间在内核操作上。 - Waiting - 等待时间
描述CPU在等待I/O操作所耗费的时间总和,与阻塞(Blocked)指标相似,系统不应该耗费太多的时间在等待I/O操作;否则你应该检查一下各个I/O子系统的性能。 - Idle time - 空闲时间
描述CPU等待任务到达的时间百分比,即CPU空闲时间。 - Nice time - Nice时间
描述CPU耗费在进程re-nicing的百分比,re-nicing指的是改变进程的执行顺序和优先级。 - Load average - 平均负载
Load average不是CPU百分比,它是以下数值加和的平均值:
— 队列中等待执行的进程数
— 等待不可中断任务执行完成的进程数
也 就是TASK_RUNNING和TASK_UNINTERRUPTIBLE之和的平均值。如果请求CPU 处理的进程发生阻塞(意味着CPU没有空闲时间去执行该进程),Load average将会上升。相反如果每个进程都可以立即执行,而且没有空转的CPU周期,那Load average将会降低。 - Runable processes - 可运行进程
Runable processes描述准备执行的进程数。在一段持续的时间内Runable processes不应该超过CPU数量的10倍,否则CPU可能存在性能瓶颈。 - Blocked - 堵塞
描述因等待I/O操作完成而挂起的进程数,Blocked指标往往意味着I/O存在性能瓶颈。 - Context switch - 上下文交换
Context switch描述系统中线程之间发生交换的数量。只有一小部分情况下需要Context switch,通常情况下是不需要Context switch,因为每次操作都伴随着刷新CPU缓存。Context switch次数过多与大量的中断请求有关,这意味着驱动或应用程序可能存在问题。 - Interrupts - 中断
Interrupts包括硬中断(hard interrupts)和软中断(soft interrupts)。hard interrupts会对系统性能产生非常不利的影响。Interrupts过高意味着应用程序存在性能瓶颈,可能在内核或者驱动中。 Interrupts也包括CPU时钟产生的中断。
linux性能系列--cpu的更多相关文章
- linux性能监控 -CPU、Memory、IO、Network等指标的讲解
[操作系统-linux]linux性能监控 -CPU.Memory.IO.Network等指标的讲解(转) 一.CPU 1.良好状态指标 CPU利用率:User Time <= 70%,Syst ...
- linux性能优化cpu 磁盘IO MEM
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
- Linux性能监控——CPU,Memory,IO,Network
版权声明:本文由刘爽原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/107 来源:腾云阁 https://www.qclou ...
- linux性能系列--内存
一.啥是内存呢? 回答:内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁.计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大. 内存(Memory)也被称为内存储器, ...
- linux性能监控——CPU、Memory、IO、Network
一.CPU 1.良好状态指标 CPU利用率:User Time <= 70%,System Time <= 35%,User Time + System Time <= 70%. 上 ...
- Linux性能监控 - CPU、Memory、IO、Network
一.CPU 良好状态指标 CPU利用率:User Time <= 70%,System Time <= 35%,User Time + System Time <= 70%. 上下文 ...
- linux性能系列--块设备
一.啥是块设备呢? 回答:I/O设备大致分为两类:块设备和字符设备.块设备将信息存储在固定大小的块中,每个块都有自己的地址.数据块的大小通常在512字节到32768字节之间.块设备的基本特征是每个块都 ...
- linux性能系列--网络
一.为啥网络监控不好做? 回答:网络是所有子系统中最难监控的了.首先是由于网络是抽象的,更重要的是许多影响网络的因素并不在我们的控制范围之内.这些因素包括,延迟.冲突.阻塞等 等.由于网络监控中, ...
- Linux性能优化--CPU[备忘]
http://kumu-linux.github.io/blog/2014/04/21/performance-cpu/
随机推荐
- 去除inline-block之间的空白
做一个水平排列的导航通常有以下几种布局: 1.给一个浮动. 2.设置display为inline. 3.设置display为inline-block. 但要追求代码量最少的话,设置为inline元素或 ...
- 使gitignore生效
git rm -r --cached . // 删除本地缓存 git add . // 添加要提交的文件 初次提交直接声明gitignore并提交就可以: 非初次提交,改动的gitignore要进行上 ...
- Delphi下OpenGL2d绘图(06)-画图(多窗口、多视图、多个DC)
一.前言 在学习OpenGL的过程中,发现很多函数都是全局的.前面几章中都是在一个窗口DC中画图,那么要在多个窗口画图,需要怎么处理呢?网上方法有多种,这里采用其中一种,利用wglMakeCurren ...
- api拆分(数据传递和接收的几种方式)
传递方式一:对象转String 接收:String类型接收再转对象 传递方式二:Map 接收:Map 传递方式三:json(Map转json) 接收:String转Map 传递方式四:Map里放jso ...
- <深入理解JavaScript>学习笔记(2)_揭秘命名函数表达式
写在前面的话 注:本文是拜读了 深入理解JavaScript 之后深有感悟,故做次笔记方便之后查看. 感觉这章的内容有点深奥....略难懂啊. 先坐下笔记,加深一下印象吧. 我主要记一下自己感觉有用的 ...
- Mongodb操作之查询(循序渐进对比SQL语句)(转http://www.tuicool.com/articles/UzQj6rF)
工具推荐:Robomongo,可自行百度寻找下载源,个人比较推荐这个工具,相比较mongoVUE则更加灵活. 集合简单查询方法 mongodb语法:db.collection.find() //co ...
- 借助 Filter 生成静态页面缓存问题
如果有些 jsp 页面,在一次 jsp 页面生成后 html 后, 就不太可能需要更新.可以使用缓存机制来解决这个问题. 解决思路如下 1. 定义一个文件夹 pagestaticize,用来存放 j ...
- python学习之老男孩python全栈第九期_day019知识点总结——collections模块、时间模块、random模块、os模块、sys模块
一. collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:namedtuple.deque.Counte ...
- Javascript周报#182
This week’s JavaScript news Read this issue on the Web | Issue Archive JavaScript Weekly Issue 182Ma ...
- 简单的sqlserver批量插入数据easy batch insert data use loop function in sqlserver
--example 1: DECLARE @pid INT,@name NVARCHAR(50),@level INT,@i INT,@column2 INT SET @pid=0 SET @name ...