侧边栏壁纸
博主头像
爱运维 博主等级

行动起来,活在当下

  • 累计撰写 197 篇文章
  • 累计创建 143 个标签
  • 累计收到 21 条评论

目 录CONTENT

文章目录

linux cpu性能分析

Administrator
2019-01-19 / 0 评论 / 0 点赞 / 3 阅读 / 0 字
1.vmstat:低开销良好的性能视图
    -n :默认隔一会儿会显示标题,-n一直显示数据,不显示标题

    -s:一次性输出vmstat详细信息,该信息为系统启动后的总数据


[root@task-server-01 ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 260516  37612 582464    0    0     4    54    1    2  5  1 94  0  0
 0  0      0 259964  37612 582464    0    0     0     0 2500 2671  1  0 99  0  0
 0  0      0 259952  37620 582456    0    0     0    44 2531 2757  1  1 98  1  0
 0  0      0 260028  37620 582464    0    0     0     0 2453 2620  0  0 100  0  0
 0  0      0 260028  37620 582464    0    0     0     0 3000 3131  1  1 99  0  0
cpu相关参数:
    r:当前可运行进程数,这些进程没有等待IO,而是已经准备好的。理想情况下和cpu数相等
    b:等待I/O完成的阻塞进程数
    in:系统发生中断次数
    cs:系统发生上下文切换次数
    us:用户进程消耗总cpu时间比
    sy:系统消耗cpu时间百分比,包含system,irq,softirq状态时间
    wa:等待I/O消耗总cpu时间比
    id:系统空闲消耗总cpu时间比
2.top 默认3s一次按照cpu占有率从高到底排序
    -n:输出次数
    -d:间隔时间
    -i:是否显示空闲进程
运行时参数:
    A:进程信息的另一种显示方式,其类容为各个系统资源最大的消耗着
    I:选择top是否使用系统cpu数量除以cpu使用率
    f:显示配置界面选择在屏幕显示哪些统计信息
    o:修改配置界面,修改统计信息的显示顺序
    1:切换cpu核数显示 [root@hryj-test ~]# top -i
top - 14:50:10 up 111 days, 18:06,  9 users,  load average: 0.74, 0.87, 0.95
Tasks: 252 total,   1 running, 244 sleeping,   6 stopped,   1 zombie
%Cpu(s):  8.5 us,  6.4 sy,  0.0 ni, 85.1 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 32781236 total,  2712008 free, 21079072 used,  8990156 buff/cache
KiB Swap:        0 total,        0 free,        0 used. 10729012 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                     
14816 root      20   0 5437248 124764  10036 S  47.1  0.4   5187:39 dockerd                                                                                                     
24406 root      20   0 6570764 1.123g  10320 S  41.2  3.6   3481:48 java                                                                                                        
24387 root      20   0  415828   3728   1064 S  17.6  0.0 915:08.04 docker-containe                                                                                             
 1178 root      20   0 7244300 0.978g  14280 S   5.9  3.1   2:38.34 java     
cpu相关参数:
    us:用户应用消耗CPU时间
    sy:内核消耗CPU时间
    id:空闲cpu时间
    wa:等待I/Ocpu时间
    hi:irq处理程序消耗cpu时间
    si:softirq处理程序消耗cpu时间
    load average: 1分钟 5分钟 15分钟的平均负载
    %cpu:特定进程消耗cpu时间百分比
    PRI:进程优先级,值越大优先级越高,RT为实时优先级,改优先级高于普通进程
    NI:进程nice值,进程nice值越高,系统执行进程的必要性越低,具有高nice值的进程优先级非常低
    TIME:自进程开始执行已消耗cpu时间(用户和系统)
    COMMAND:执行的命令
    S:进程状态。睡眠S,运行R,僵尸Z,不可中断D,跟踪状态T
3.mpstat:简单命令,暂时cpu的时间行为,来源爱运维
    -P cpu单个:但是单个cpu信息,ALL所有核心
[root@hryj-test ~]# mpstat  1
Linux 3.10.0-693.2.2.el7.x86_64 (hryj-test) 	12/13/2018 	_x86_64_	(8 CPU)
   //内核版本                     主机名              时间             系统位数        cpu个数 
03:11:12 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
03:11:13 PM  all    5.26    0.13    3.59    0.13    0.00    0.38    0.00    0.00    0.00   90.51
03:11:14 PM  all    4.62    0.00    3.47    0.00    0.00    0.26    0.00    0.00    0.00   91.66
03:11:15 PM  all    6.59    0.00    2.97    0.39    0.00    0.26    0.00    0.00    0.00   89.79
03:11:16 PM  all    6.16    0.00    3.21    0.00    0.00    0.26    0.00    0.00    0.00   90.37
03:11:17 PM  all    5.26    0.13    3.08    0.00    0.00    0.39    0.00    0.00    0.00   91.14
cpu相关信息说明:
    usr:前一个采样中user  cpu消耗时间比
    nice:前一个采样中cpu执行优先级进程消耗时间百分比
    sys:前一个采样中系统消耗时间比
    iowait:前一个采样中cpu等待I/O时间比
    irq:前一个采样中cpu处理中断消耗时间比
    soft:前一个采样中,中断处理后,软中断消耗时间比
4.pidstat:实时显示cpu使用
    安装:yum install -y sysstat
    每隔5秒输出一次CPU的使用信息,这里详细显示了cpu多少个,进程在哪个cpu上,以及每个进程的cpu使用率
[root@VM_177_51_centos conf]# pidstat -u 5
Linux 3.10.0-514.21.1.el7.x86_64 (VM_177_51_centos) 	12/04/2018 	_x86_64_	(2 CPU)

03:57:24 PM   UID       PID    %usr %system  %guest    %CPU   CPU  Command
03:57:29 PM     0      9172    0.20    0.00    0.00    0.20     1  dockerd
03:57:29 PM     0     16433    0.20    0.00    0.00    0.20     1  java
03:57:29 PM     0     24313    0.00    0.20    0.00    0.20     0  YDService
03:57:29 PM     0     24384    0.00    0.20    0.00    0.20     1  pidstat
03:57:29 PM     0     30695    0.00    0.20    0.00    0.20     1  barad_agent
03:57:29 PM     0     30696    0.20    0.20    0.00    0.40     0  barad_agent
03:57:29 PM     0     32554    0.20    0.20    0.00    0.40     0  htop



0

评论区