sysbench——服務器cpu性能測試


一、前言

最近在工作中需要測試cpu占用率、內存占用率,我想要尋找一種合適的能提高cpu占用率的工具及方法。先嘗試了使用 echo "scale=5000; 4*a(1)" | bc -l -q  命令計算浮點數,但這種方式只能 進行CPU單線程簡單測試 ,無法提高服務器的整體cpu占用率。后來,搜了不少資料,終於找到一款合適的cpu性能測試的工具——sysbench。

二、sysbench簡單介紹

SysBench是一個模塊化的、跨平台、多線程基准測試工具,主要用於評估測試各種不同系統參數下的數據庫負載情況。它主要包括以下幾種方式的測試: 
1. cpu性能 
2. 磁盤io性能 
3. 線程調度性能 
4. 互斥鎖性能 
5. 數據庫性能(OLTP基准測試) 
6. 內存性能

目前sysbench主要支持 MySQL、pgsq、Oracle 這3種數據庫。 
sysbench在github的版本分為兩個分支:0.4和0.5,我使用的是0.5這個版本。

三、sysbench安裝

1、在https://github.com/akopytov/sysbench/tree/0.5下載sysbench-0.5.zip源碼包到本地某個目錄下,如/usr/cqs/目錄下;
2、在/etc/cqs/sysbench目錄下運行命令:unzip sysbench-0.5.zip,解壓zip包,會生成sysbench-0.5目錄;
3、 進入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,即可安裝。繼續運行。
4、 運行./configure --without-mysql(不編譯測試mysql的功能模塊)
5、 make && make install
6、 運行sysbench –help測試是否安裝成功。

四、常用測試

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測試類型可用的參數如下:

五、參考資料









免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM