鲲鹏社区首页
中文
注册
开发者
系统资源与性能分析——CPU

系统资源与性能分析——CPU

openEuler

发表于 2025/12/09

0

CPU

基本概念

中央处理器(Central Processing Unit,简称CPU)是计算机的主要设备之一,其功能是解释计算机指令以及处理计算机软件中的数据。

  1. 物理核:可以真实看到的CPU核,有独立的电路元件以及L1、L2缓存,可以独立地执行指令。一个CPU可以有多个物理核。
  2. 逻辑核:在同一个物理核内,逻辑层面上存在的核。一般一个物理核对应一个线程,但是如果开启了超线程,当超线程数量为n时,一个物理核可以分成n个逻辑核。

可以通过lscpu命令查看服务器中有多少个CPU,每个CPU中有几个物理核,以及每个CPU有几个逻辑核。

常用CPU性能分析工具

  • uptime:可用于打印系统平均负载,通过查看最后三个数字,可以判断平均负载的变化趋势。 平均负载大于CPU数量时表示CPU不足以服务线程,部分线程在等待;平均负载小于CPU数量,代表当前还有余量。

  • vmstat:可以动态地了解系统资源的使用情况,以及查看系统中是哪一个环节最占用系统资源。 通过vmstat -h命令可以查看命令详解参数。 例如:

字段含义
procs进程信息字段。
memory内存信息字段。
swap交换分区信息字段。
io磁盘读/写信息字段。
system系统信息字段。
cpuCPU信息字段。-us:非内核进程消耗 CPU 运算时间的百分比。-sy:内核进程消耗 CPU 运算时间的百分比。-id:空闲。-wa:等待 I/O 所消耗的 CPU 百分比。-st:被虚拟机所盗用的 CPU 百分比。


  • sar:可用于分析系统性能,可以用来观察当前的活动以及配置,用以归档和报告历史统计信息。 例如
# 安装sysstat
yum install -y sysstat

# 查看系统CPU的整体负载情况,每3秒统计一次,共统计5次
sar -u 3 5

在命令的输出信息中,各字段所代表的含义如下:

字段含义
%user用户模式下消耗的 CPU 时间的比例。
%nice通过 nice 改变了进程调度优先级的进程,在用户模式下消耗的 CPU 时间的比例。
%system系统模式下消耗的 CPU 时间的比例。
%iowaitCPU 等待磁盘 I/O 导致空闲状态消耗的时间比例。
%steal利用操作系统等虚拟化技术,等待其他虚拟CPU计算占用的时间比例。
%idleCPU空闲时间比例。
  • ps:可用于查看正在运行的进程
# 查看系统中所有的进程,以及查看进程的父进程的 PID 和进程优先级
ps -le

# 查看当前shell产生的进程
ps -l

  • top:可以动态地持续查看进程的运行状态,显示最消耗CPU的进程
top