Linux 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时钟产生的中断。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。