一種內(nèi)存帶寬以及壓力漸變并行的驗證方法
【專利摘要】本發(fā)明公開了一種內(nèi)存帶寬以及壓力漸變并行的驗證方法,步驟如下:搭建測試平臺,準備測試環(huán)境;設(shè)置環(huán)境變量;設(shè)置運行次數(shù);配置測試參數(shù)文件;刪除過程測試結(jié)果文件;獲取硬件信息;開始測試,每個線程對一部分內(nèi)存進行Copy、Scale、Add、Triad運算;監(jiān)控測試過程;測試過程中出現(xiàn)異常,重復驗證;收集測試結(jié)果,完整測試運行完,系統(tǒng)無異常但Triad值不滿足70%的理論值,測試Fail,調(diào)優(yōu)繼續(xù)進行測試;完整測試運行完,系統(tǒng)無異常并且Triad值滿足70%的理論值,穩(wěn)定性測試效果,測試PASS。本發(fā)明具有操作簡單,實用性較強等特點,有效確保服務器的穩(wěn)定性,是驗證產(chǎn)品質(zhì)量的非常有效的方法。
【專利說明】一種內(nèi)存帶寬以及壓力漸變并行的驗證方法
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及計算機服務器【技術(shù)領(lǐng)域】,具體地說是一種內(nèi)存帶寬以及壓力漸變并行的驗證方法。
【背景技術(shù)】
[0003]隨著社會的發(fā)展,計算機服務器已經(jīng)應用到各個領(lǐng)域,在互聯(lián)網(wǎng)、金融等領(lǐng)域應用的更是普遍,服務器的使用變得復雜多樣。這使得服務器出現(xiàn)各種各樣的問題,例如某款服務器在應用中,頻繁出現(xiàn)報錯重啟等重大故障,這是不能接受的嚴重質(zhì)量問題。因此,服務器無論是在研發(fā)階段還是后續(xù)產(chǎn)品維護階段,都需要對產(chǎn)品進行全面的系統(tǒng)壓力測試,從而確保該產(chǎn)品的穩(wěn)定性。
[0004]服務器主板設(shè)計非常重要的一部分就是主板的供電部分,雖然POWER測試team會有一套完整的驗證供電驗證,但是很難覆蓋周全,系統(tǒng)驗證部作為整機系統(tǒng)驗證team是務必要保證整機系統(tǒng)的穩(wěn)定性,100%的保證整機系統(tǒng)的質(zhì)量,過去最大系統(tǒng)負載以及最小負載測試均有涵蓋,可 以說能夠保證系統(tǒng)百分之八九十的質(zhì)量,面對越來越多樣化的應用,剩余的質(zhì)量問題開始逐步顯現(xiàn)。
[0005]紅帽系統(tǒng)是Linux操作系統(tǒng)的一種(或稱一個發(fā)行版)。因為它具備最好的圖形界面,無論是安裝、配置還是使用都十分方便,而且運行穩(wěn)定,它一直是Linux商業(yè)發(fā)行版中最受歡迎的。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的技術(shù)任務是提供一種內(nèi)存帶寬以及壓力漸變并行的驗證方法。
[0007]本發(fā)明的技術(shù)任務是按以下方式實現(xiàn)的,驗證方法步驟如下:
1)搭建測試平臺,準備測試環(huán)境;
2)設(shè)置環(huán)境變量;
3)設(shè)置運行次數(shù);
4)配置測試參數(shù)文件;
5)刪除過程測試結(jié)果文件;
6)獲取硬件信息;
7)開始測試,每個線程對一部分內(nèi)存進行Copy、Scale、Add、Triad運算;
8)監(jiān)控測試過程;
9)測試過程中出現(xiàn)死機、出錯異常情況,根據(jù)測試日志信息排查,重復驗證;
10)收集測試結(jié)果,完整測試運行完,系統(tǒng)無異常但Triad值不滿足70%的理論值,測試Fail,調(diào)優(yōu)繼續(xù)進行測試;
11)收集測試結(jié)果,完整測試運行完,系統(tǒng)無異常并且Triad值滿足70%的理論值,達到性能、穩(wěn)定性測試效果,測試PASS。
[0008]所述的Copy運算是:先訪問一個內(nèi)存單元讀出其中的值,再將值寫入到另一個內(nèi)
存單元。
[0009]所述的Scale運算是:先從內(nèi)存單元讀出其中的值,作一個乘法運算,再將結(jié)果寫入到另一個內(nèi)存單元。
[0010]所述的Add運算是:先從內(nèi)存單元讀出兩個值,做加法運算,再將結(jié)果寫入到另一個內(nèi)存單元。
[0011]所述的Triad運算是:先從內(nèi)存單元中讀兩個值,對該兩個值進行乘加混合運算,再將運算結(jié)果寫入到另一個內(nèi)存單元。
[0012]本發(fā)明的一種內(nèi)存帶寬以及壓力漸變并行的驗證方法和現(xiàn)有技術(shù)相比,具有操作簡單,實用性較強等特點,有效確保了服務器的穩(wěn)定性,是驗證產(chǎn)品質(zhì)量的非常有效的方法。同時能夠取得更精準的內(nèi)存帶寬值,能夠達到雙層驗證效果。
【專利附圖】
【附圖說明】
[0013]附圖1為一種內(nèi)存帶寬以及壓力漸變并行的驗證方法的流程圖。
【具體實施方式】
[0014]實施例1:
該驗證方法步驟如下:
1)搭建測試平臺,準備測試環(huán)境,安裝紅帽系統(tǒng)、安裝Python語言;
2)設(shè)置環(huán)境變量;
3)設(shè)置運行次數(shù);
4)配置測試參數(shù)文件;
5)刪除過程測試結(jié)果文件;
6)獲取硬件信息;
7)開始測試,每個線程對一部分內(nèi)存進行Copy、Scale、Add、Triad運算;
Copy運算是:先訪問一個內(nèi)存單元讀出其中的值,再將值寫入到另一個內(nèi)存單元;Scale運算是:先從內(nèi)存單元讀出其中的值,作一個乘法運算,再將結(jié)果寫入到另一個內(nèi)存單元;Add運算是:先從內(nèi)存單元讀出兩個值,做加法運算,再將結(jié)果寫入到另一個內(nèi)存單元;Add運算是:先從內(nèi)存單元讀出兩個值,做加法運算,再將結(jié)果寫入到另一個內(nèi)存單元。
[0015]8)監(jiān)控測試過程;
9)測試過程中出現(xiàn)死機、出錯異常情況,根據(jù)測試日志信息排查,重復驗證;
10)收集測試結(jié)果,完整測試運行完,系統(tǒng)無異常但Triad值不滿足70%的理論值(CPU主頻*通道數(shù)*64/8),測試Fail,調(diào)優(yōu)繼續(xù)進行測試;
11)收集測試結(jié)果,完整測試運行完,系統(tǒng)無異常并且Triad值滿足70%的理論值(CPU主頻*通道數(shù)*64/8),達到性能、穩(wěn)定性測試效果,測試PASS。
[0016]運行在x86平臺紅帽系統(tǒng),通過CPU、內(nèi)存壓力漸變能夠達到驗證系統(tǒng)供電穩(wěn)定性的效果同時能夠取得更精準的內(nèi)存帶寬值,具體實現(xiàn)內(nèi)容如下:
#!/bin/shCur—Dir='dirname $0'
MPICH_DIR=$Cur_Dir//dep/mpich
MPICH_RUN_DIR=$Cur_Dir//dep/mpich/bin
STREAM—BIN=$Cur—Dir/bin/stream—c—mpi
RES—FILE=$Cur—Dir/result/stream—res.txt
RES_CSV=$Cur—Dir/result/stream—res.csv
L00PS=400根據(jù)實際需求,定義循環(huán)運行的次數(shù)
echo $ LOOPS
rm -rf /etc/mpd.conf
chmod 600 $MPICH_DIR/mpd.conf 為 mpd.conf 添加可執(zhí)行權(quán)限 cp $MPICH_DIR/mpd.conf /etc/
ip=' ifconfig ethO | grep 〃inet addr〃 | cut _d: -f2 | cut _d〃 〃 -f I'
host—name= hostname
sed -1 〃/$host—name/d〃 /etc/hosts
echo $ip $host—name >> /etc/hosts
sleep 2
echo 〃127.0.0.1 localhost" >> /etc/hosts
$MP I CH_RUN_D I R/mp da 11 ex i t >>/dev/null
$MPICH—RUN—DIR/mpd &
sleep 5
#Clear the Result File
rm -rf $Cur—Dir/result/*如果已經(jīng)存在測試結(jié)果,則刪除
NUM—PCORE='cat/proc/cpuinfο | grep processor | wc -1' 獲取 CPU 線程數(shù) #Get the Mem Size to config stream vector size
MEM—SIZE—KB='cat/proc/meminfo | grep "MemTotal〃 | awk,{print $2}獲取內(nèi)存
容量
VECTOR—SIZE='echo "$MEM—SIZE—KB / 3 / 10 / $NUM—PCORE * 1024〃 | bc' 每個線程要運行的內(nèi)存容量
echo 〃start running stream test $ LOOPS times 〃
#Run the Stream Benchmark
i=l
while [ $1-1e $L00PS ]
do
echo 〃it is runing $i times of $L00P 〃
$MPICH_RUN_DIR/mpirun _np $NUM—PCORE $STREAM—BIN ${RES—FILE}${i} $VECT0R_
SIZE
i=$(($i+l))
done執(zhí)行測試:使用$MPICH—RUN—DIR目錄下的mpirun測試
#Get the CSV file獲取測試結(jié)果
【權(quán)利要求】
1.一種內(nèi)存帶寬以及壓力漸變并行的驗證方法,其特征在于,驗證方法步驟如下: 1)搭建測試平臺,準備測試環(huán)境; 2)設(shè)置環(huán)境變量; 3)設(shè)置運行次數(shù); 4)配置測試參數(shù)文件; 5)刪除過程測試結(jié)果文件; 6)獲取硬件信息; 7)開始測試,每個線程對一部分內(nèi)存進行Copy、Scale、Add、Triad運算; 8)監(jiān)控測試過程; 9)測試過程中出現(xiàn)死機、出錯異常情況,根據(jù)測試日志信息排查,重復驗證; 10)收集測試結(jié)果,完整測試運行完,系統(tǒng)無異常但Triad值不滿足70%的理論值,測試Fail,調(diào)優(yōu)繼續(xù)進行測試; 11)收集測試結(jié)果,完整測試運行完,系統(tǒng)無異常并且Triad值滿足70%的理論值,達到性能、穩(wěn)定性測試效果,測試PASS。
2.根據(jù)權(quán)利要求1所述的一種內(nèi)存帶寬以及壓力漸變并行的驗證方法,其特征在于,所述的Copy運算是:先訪問一個內(nèi)存單元讀出其中的值,再將值寫入到另一個內(nèi)存單元。
3.根據(jù)權(quán)利要求1所述的一種內(nèi)存帶寬以及壓力漸變并行的驗證方法,其特征在于,所述的Scale運算是:先從內(nèi)存單元讀出其中的值,作一個乘法運算,再將結(jié)果寫入到另一個內(nèi)存單元。
4.根據(jù)權(quán)利要求1所述的一種內(nèi)存帶寬以及壓力漸變并行的驗證方法,其特征在于,所述的Add運算是:先從內(nèi)存單元讀出兩個值,做加法運算,再將結(jié)果寫入到另一個內(nèi)存單J Li ο
5.根據(jù)權(quán)利要求1所述的一種內(nèi)存帶寬以及壓力漸變并行的驗證方法,其特征在于,所述的Triad運算是:先從內(nèi)存單元中讀兩個值,對該兩個值進行乘加混合運算,再將運算結(jié)果寫入到另一個內(nèi)存單元。
【文檔編號】G06F11/34GK104035850SQ201410310945
【公開日】2014年9月10日 申請日期:2014年7月2日 優(yōu)先權(quán)日:2014年7月2日
【發(fā)明者】康艷麗, 劉云飛 申請人:浪潮電子信息產(chǎn)業(yè)股份有限公司