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过载。

原文地址:https://www.cnblogs.com/xiaoxitest/p/10153185.html

时间: 2024-10-07 17:17:57

Linux下测试CPU性能的相关文章

linux下测试硬盘读写速度

买了个ssd硬盘,就想着跟普通的机械盘做个比较,因为桌面装的是ubuntu系统,所以就想用linux的命令简单测一下好了 下面是ssd的性能数据: 测试写: [email protected]:~ > time dd if=/dev/zero bs=1024 count=1000000 of=1Gb.file 1000000+0 records in 1000000+0 records out 1024000000 bytes (1.0 GB) copied, 3.78724 s, 270 MB

Linux下查看CPU和内存(很详细)

在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要.在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况.运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等.退出 top 的命令为 q (在 top 运行中敲 q 键一次). top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top命

Linux下查看CPU信息

linux下查看CPU的信息主要通过查看/proc/cpuinfo这个文件. 一.针对/proc/cpuinfo文件,我们需要查看processor,physical id,siblings,core id,cpu cores这几个字段. 1.拥有相同physical id的所有逻辑处理器共享同一个物理插座.每个physical id 代表一个唯一的物理封装,即一颗CPU. 2.Siblings表示位于一个物理封装的CPU上逻辑CPU的个数. 3.每个core id 均代表一个唯一的处理器内核,

Linux下获得CPU的信息

1.查看物理cpu个数 cat /proc/cupinfo |grep 'physical id'|sort|uniq|wc -l 2.查看一个cpu的物理核数 cat /proc/cupinfo |grep 'core id'|sort|uniq -c|wc -l 或 cat /proc/cupinfo |grep 'cpu cores'|uniq|awk -F ":" '{print $2}' 3.查看一个cpu的逻辑核数 cat /proc/cupinfo |grep 'sibl

Linux下调节CPU使用的几种方法

一,使用taskset充分利用多核cpu,让cpu的使用率均衡到每个cpu上 #taskset-p,    设定一个已存在的pid,而不是重新开启一个新任务-c,    指定一个处理,可以指定多个,以逗号分隔,也可指定范围,如:2,4,5,6-8. 1,切换某个进程到指定的cpu上taskset -cp 3 13290 2,让某程序运行在指定的cpu上taskset -c 1,2,4-7 tar jcf test.tar.gz test 需要注意的是,taskset -cp 3 13290在设定

[转帖]linux下的CPU、内存、IO、网络的压力测试

https://www.cnblogs.com/zhuochong/p/10185881.html 一.对CPU进行简单测试: 1.通过bc命令计算特别函数 例:计算圆周率 echo "scale=5000; 4*a(1)" | bc -l -q MATH LIBRARY        If bc is invoked with the -l option, a math library is preloaded and the default  scale  is  set  to 

转载 - LINUX下查看CPU使用率的命令

几个常用的命令,一些不错的解释 http://blog.csdn.net/wengpingbo/article/details/6302058 1.top 使用权限:所有使用者 使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b] 说明:即时显示process的动态 d :改变显示的更新速度,或是在交谈式指令列( interactive command)按s q :没有任何延迟的显示速度,如果使用者是有superuser的权限,则top将会以最高的

LINUX下查看CPU使用率的命令[Z]

1.top 使用权限:所有使用者 使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b] 说明:即时显示process的动态 d :改变显示的更新速度,或是在交谈式指令列( interactive command)按s q :没有任何延迟的显示速度,如果使用者是有superuser的权限,则top将会以最高的优先序执行 c :切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S :累积模式,会将己完成或消失的子行程( d

Linux下查询CPU 缓存的工具

在Linux下能够使用例如以下工具查询CPU缓存: 方式1: $ lscpu L1d cache: 32K <span style="white-space:pre"> </span>(一级数据缓存) L1i cache: 32K <span style="white-space:pre"> </span><span style="font-family: Arial, Helvetica, sans-