一種內存帶寬以及壓力漸變並行的驗證方法
2023-05-21 04:17:56 4
一種內存帶寬以及壓力漸變並行的驗證方法
【專利摘要】本發明公開了一種內存帶寬以及壓力漸變並行的驗證方法,步驟如下:搭建測試平臺,準備測試環境;設置環境變量;設置運行次數;配置測試參數文件;刪除過程測試結果文件;獲取硬體信息;開始測試,每個線程對一部分內存進行Copy、Scale、Add、Triad運算;監控測試過程;測試過程中出現異常,重複驗證;收集測試結果,完整測試運行完,系統無異常但Triad值不滿足70%的理論值,測試Fail,調優繼續進行測試;完整測試運行完,系統無異常並且Triad值滿足70%的理論值,穩定性測試效果,測試PASS。本發明具有操作簡單,實用性較強等特點,有效確保伺服器的穩定性,是驗證產品質量的非常有效的方法。
【專利說明】一種內存帶寬以及壓力漸變並行的驗證方法
[0001]
【技術領域】
[0002]本發明涉及計算機伺服器【技術領域】,具體地說是一種內存帶寬以及壓力漸變並行的驗證方法。
【背景技術】
[0003]隨著社會的發展,計算機伺服器已經應用到各個領域,在網際網路、金融等領域應用的更是普遍,伺服器的使用變得複雜多樣。這使得伺服器出現各種各樣的問題,例如某款伺服器在應用中,頻繁出現報錯重啟等重大故障,這是不能接受的嚴重質量問題。因此,伺服器無論是在研發階段還是後續產品維護階段,都需要對產品進行全面的系統壓力測試,從而確保該產品的穩定性。
[0004]伺服器主板設計非常重要的一部分就是主板的供電部分,雖然POWER測試team會有一套完整的驗證供電驗證,但是很難覆蓋周全,系統驗證部作為整機系統驗證team是務必要保證整機系統的穩定性,100%的保證整機系統的質量,過去最大系統負載以及最小負載測試均有涵蓋,可 以說能夠保證系統百分之八九十的質量,面對越來越多樣化的應用,剩餘的質量問題開始逐步顯現。
[0005]紅帽系統是Linux作業系統的一種(或稱一個發行版)。因為它具備最好的圖形界面,無論是安裝、配置還是使用都十分方便,而且運行穩定,它一直是Linux商業發行版中最受歡迎的。
【發明內容】
[0006]本發明的技術任務是提供一種內存帶寬以及壓力漸變並行的驗證方法。
[0007]本發明的技術任務是按以下方式實現的,驗證方法步驟如下:
1)搭建測試平臺,準備測試環境;
2)設置環境變量;
3)設置運行次數;
4)配置測試參數文件;
5)刪除過程測試結果文件;
6)獲取硬體信息;
7)開始測試,每個線程對一部分內存進行Copy、Scale、Add、Triad運算;
8)監控測試過程;
9)測試過程中出現死機、出錯異常情況,根據測試日誌信息排查,重複驗證;
10)收集測試結果,完整測試運行完,系統無異常但Triad值不滿足70%的理論值,測試Fail,調優繼續進行測試;
11)收集測試結果,完整測試運行完,系統無異常並且Triad值滿足70%的理論值,達到性能、穩定性測試效果,測試PASS。
[0008]所述的Copy運算是:先訪問一個內存單元讀出其中的值,再將值寫入到另一個內
存單元。
[0009]所述的Scale運算是:先從內存單元讀出其中的值,作一個乘法運算,再將結果寫入到另一個內存單元。
[0010]所述的Add運算是:先從內存單元讀出兩個值,做加法運算,再將結果寫入到另一個內存單元。
[0011]所述的Triad運算是:先從內存單元中讀兩個值,對該兩個值進行乘加混合運算,再將運算結果寫入到另一個內存單元。
[0012]本發明的一種內存帶寬以及壓力漸變並行的驗證方法和現有技術相比,具有操作簡單,實用性較強等特點,有效確保了伺服器的穩定性,是驗證產品質量的非常有效的方法。同時能夠取得更精準的內存帶寬值,能夠達到雙層驗證效果。
【專利附圖】
【附圖說明】
[0013]附圖1為一種內存帶寬以及壓力漸變並行的驗證方法的流程圖。
【具體實施方式】
[0014]實施例1:
該驗證方法步驟如下:
1)搭建測試平臺,準備測試環境,安裝紅帽系統、安裝Python語言;
2)設置環境變量;
3)設置運行次數;
4)配置測試參數文件;
5)刪除過程測試結果文件;
6)獲取硬體信息;
7)開始測試,每個線程對一部分內存進行Copy、Scale、Add、Triad運算;
Copy運算是:先訪問一個內存單元讀出其中的值,再將值寫入到另一個內存單元;Scale運算是:先從內存單元讀出其中的值,作一個乘法運算,再將結果寫入到另一個內存單元;Add運算是:先從內存單元讀出兩個值,做加法運算,再將結果寫入到另一個內存單元;Add運算是:先從內存單元讀出兩個值,做加法運算,再將結果寫入到另一個內存單元。
[0015]8)監控測試過程;
9)測試過程中出現死機、出錯異常情況,根據測試日誌信息排查,重複驗證;
10)收集測試結果,完整測試運行完,系統無異常但Triad值不滿足70%的理論值(CPU主頻*通道數*64/8),測試Fail,調優繼續進行測試;
11)收集測試結果,完整測試運行完,系統無異常並且Triad值滿足70%的理論值(CPU主頻*通道數*64/8),達到性能、穩定性測試效果,測試PASS。
[0016]運行在x86平臺紅帽系統,通過CPU、內存壓力漸變能夠達到驗證系統供電穩定性的效果同時能夠取得更精準的內存帶寬值,具體實現內容如下:
#!/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根據實際需求,定義循環運行的次數
echo $ LOOPS
rm -rf /etc/mpd.conf
chmod 600 $MPICH_DIR/mpd.conf 為 mpd.conf 添加可執行權限 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/*如果已經存在測試結果,則刪除
NUM—PCORE='cat/proc/cpuinfο | grep processor | wc -1' 獲取 CPU 線程數 #Get the Mem Size to config stream vector size
MEM—SIZE—KB='cat/proc/meminfo | grep "MemTotal〃 | awk,{print $2}獲取內存
容量
VECTOR—SIZE='echo "$MEM—SIZE—KB / 3 / 10 / $NUM—PCORE * 1024〃 | bc' 每個線程要運行的內存容量
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執行測試:使用$MPICH—RUN—DIR目錄下的mpirun測試
#Get the CSV file獲取測試結果
【權利要求】
1.一種內存帶寬以及壓力漸變並行的驗證方法,其特徵在於,驗證方法步驟如下: 1)搭建測試平臺,準備測試環境; 2)設置環境變量; 3)設置運行次數; 4)配置測試參數文件; 5)刪除過程測試結果文件; 6)獲取硬體信息; 7)開始測試,每個線程對一部分內存進行Copy、Scale、Add、Triad運算; 8)監控測試過程; 9)測試過程中出現死機、出錯異常情況,根據測試日誌信息排查,重複驗證; 10)收集測試結果,完整測試運行完,系統無異常但Triad值不滿足70%的理論值,測試Fail,調優繼續進行測試; 11)收集測試結果,完整測試運行完,系統無異常並且Triad值滿足70%的理論值,達到性能、穩定性測試效果,測試PASS。
2.根據權利要求1所述的一種內存帶寬以及壓力漸變並行的驗證方法,其特徵在於,所述的Copy運算是:先訪問一個內存單元讀出其中的值,再將值寫入到另一個內存單元。
3.根據權利要求1所述的一種內存帶寬以及壓力漸變並行的驗證方法,其特徵在於,所述的Scale運算是:先從內存單元讀出其中的值,作一個乘法運算,再將結果寫入到另一個內存單元。
4.根據權利要求1所述的一種內存帶寬以及壓力漸變並行的驗證方法,其特徵在於,所述的Add運算是:先從內存單元讀出兩個值,做加法運算,再將結果寫入到另一個內存單J Li ο
5.根據權利要求1所述的一種內存帶寬以及壓力漸變並行的驗證方法,其特徵在於,所述的Triad運算是:先從內存單元中讀兩個值,對該兩個值進行乘加混合運算,再將運算結果寫入到另一個內存單元。
【文檔編號】G06F11/34GK104035850SQ201410310945
【公開日】2014年9月10日 申請日期:2014年7月2日 優先權日:2014年7月2日
【發明者】康豔麗, 劉雲飛 申請人:浪潮電子信息產業股份有限公司