sysbench——服务器cpu性能测试

1、前言

最近在工做中须要测试cpu占用率、内存占用率,我想要寻找一种合适的能提升cpu占用率的工具及方法。先尝试了使用 echo "scale=5000; 4*a(1)" | bc -l -q  命令计算浮点数,但这种方式只能 进行CPU单线程简单测试 ,没法提升服务器的总体cpu占用率。后来,搜了很多资料,终于找到一款合适的cpu性能测试的工具——sysbench。

2、sysbench简单介绍

SysBench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各类不一样系统参数下的数据库负载状况。它主要包括如下几种方式的测试: 
1. cpu性能 
2. 磁盘io性能 
3. 线程调度性能 
4. 互斥锁性能 
5. 数据库性能(OLTP基准测试) 
6. 内存性能

目前sysbench主要支持 MySQL、pgsq、Oracle 这3种数据库。 
sysbench在github的版本分为两个分支:0.4和0.5,我使用的是0.5这个版本。

3、sysbench安装

一、在https://github.com/akopytov/sysbench/tree/0.5下载sysbench-0.5.zip源码包到本地某个目录下,如/usr/cqs/目录下;
二、在/etc/cqs/sysbench目录下运行命令:unzip sysbench-0.5.zip,解压zip包,会生成sysbench-0.5目录;
三、 进入sysbench-0.5目录,运行命令:./autogen.sh
注意:这一步可能会报错:automake 1.10.x (aclocal) wasn’t found, exiting。这说明你的操做系统没有安装automake,运行命令:yum install automake.noarch,便可安装。而后再运行./autogen.sh命令,又报错:libtoolize 1.4+ wasn’t found, exiting。说明你的操做系统没有安装libtool,运行命令:yum install libtool,便可安装。继续运行。
四、 运行./configure --without-mysql(不编译测试mysql的功能模块)
五、 make && make install
六、 运行sysbench –help测试是否安装成功。

4、经常使用测试

1. 帮助信息
# sysbench –help
2. cpu测试
测试计算素数直到某个最大值所须要的时间。
# sysbench --test=cpu --cpu-max-prime=2000 --num-threads=40 run
补充:
查看CPU信息方法:
查看物理cpu个数
 grep "physical id" /proc/cpuinfo | sort -u | wc -l
查看核心数量
 grep "core id" /proc/cpuinfo | sort -u | wc -l
查看线程数量
 grep "processor" /proc/cpuinfo | sort -u | wc -l  #在sysbench的测试中,--num-threads取值为"线程数量"便可。
查看cpu占用比
top
3. 内存测试
测试内存的连续读写性能。
# sysbench –test=memory –num-threads=16 –memory-block-size=8192 –memory-total-size=1G run 
memory测试类型可用的参数以下:

5、参考资料






相关文章
相关标签/搜索