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、參考資料






相關文章
相關標籤/搜索