zoukankan      html  css  js  c++  java
  • Linux下测试CPU性能

    一、安装stress服务

    1、下载stress_1.0.1.orig.tar.gz安装包

    2、解压tar xvf stress_1.0.1.orig.tar.gz

    3、进入解压目录执行./configure

    4、make

    5、make  check

    6、make install

    7、make clean

    二、安装sysstat服务

    1、下载sysstat-11.5.6.tar.gz安装包

    2、解压tar xvf sysstat-11.5.6.tar.gz

    3、进入解压目录执行./configure

    4、make & make install

    三、测试CPU密集型进程

    1、在第一个终端输入以下命令:stress --cpu 1 --timeout 600

    2、在第二个终端输入watch -d uptime实时查看平均负载的变化情况:

    3、在第三个终端运行mpstat查看CPU使用率的变化情况:

     在第二个终端可以看到,1分钟的平均负载会慢慢增加到1.00,而从第三个终端可以看到正好有一个CPU的使用率为100%,但是它的iowait只有0。说明平均负载的升高正是由于CPU使用率为100%。

    4、使用pidstat查看是哪个进程导致CPU使用率为100%

    可以看到,PID为3938的stress进程导致CPU使用率为100%。

    四、模拟大量进程

    1、在第一个终端输入以下命令:stress -c 16  --timeout 600

    2、在第二个终端输入watch -d uptime实时查看平均负载的变化情况:

     

    由于系统只有4个CPU,明显比16个进程要少,因而系统的CPU处于严重过载的状态,平均负载高达16.05

    3、接着再运行pidstat看下进程的情况:

     

    可以看出,16个进程在争抢4个CPU,每个进程等待CPU的时间(上面的%wait列)高达70%多。超出CPU计算能力,最终导致CPU过载。

  • 相关阅读:
    Python类的继承(进阶5)
    面向对象编程基础(进阶4)
    Python模块(进阶3)
    Python函数式编程(进阶2)
    python多线程
    Ternary Search Tree Java实现
    Trie和Ternary Search Tree介绍
    索引时利用K-邻近算法过滤重复歌曲
    Sql排名和分组排名
    Lucene和jackson冲突
  • 原文地址:https://www.cnblogs.com/xiaoxitest/p/10153185.html
Copyright © 2011-2022 走看看