董晶
摘要: 為具體了解CFD軟件NUMECA FINE/Turbo的并行計算性能,良好把握后續的科研工作進度,分別研究在激活超線程情況下單節點計算與多節點并行計算以及CPU在激活超線程前、后計算速度的差異.結果表明:在多節點并行計算時,計算速度與實際參加并行計算的CPU物理核心數量成正比;在激活超線程的情況下,并行計算節點數在超過實際物理核心數后明顯降低計算速度的提升.
關鍵詞: 并行計算; 超線程; 計算節點數; CPU核心數量; 計算速度; NUMECA; FINE/Turbo
中圖分類號: O246文獻標志碼: B
0引言
計算機產業在不斷進步,對計算機系統可提供的計算速度的需求總在不斷增長,對計算的要求也越來越高,因此并行計算的開發和應用也愈發的重要.[13]即使在目前所提供的運算速度最快、容量最大的超級計算機上進行計算,一個三維定常問題的數值模擬也要花費幾十個小時.因此,并行計算方法的研究越來越被人們重視.[45]并行計算,或稱平行計算,是相對于串行計算來說的.所謂并行計算可分為時間上的并行和空間上的并行.時間上的并行是指流水線技術,而空間上的并行則是指用多個處理器并發執行計算.[67]為利用并行計算,通常計算問題表現為以下特征:
1)工作可分成離散部分,有助于同時解決;
2)隨時并及時地執行多個程序指令;
3)多計算資源下解決問題的耗時要少于單個計算資源下的耗時.
本文研究內容為空間上的并行,測試采用具有單個CPU處理器的DELL PRECISION T5500工作站和具有2個CPU處理器的HP Z820工作站,選取不同數量線程數和超線程激活前后開展測試,得出相關的對比數據和經驗.
NUMECA是總部位于比利時布魯塞爾市的NUMECA國際公司的產品,該公司于1992年在國際著名葉輪機械氣體動力學及CFD專家、比利時王國科學院院士、布魯塞爾自由大學流體力學系主任查爾斯·赫思教授的倡導下成立,其核心軟件是在20世紀八九十年代為歐洲宇航局編寫的CFD軟件——歐洲空氣動力數值求解器——的基礎之上發展起來的.其分析軟件包包括FINE/Turbo,FINE/Marine和FINE/Open等,其中均包括前處理、求解器和后處理3個部分.本文主要采用FINE/Turbo模塊完成相關的計算測試工作.
1測試模型
在測試研究過程中共采用4種計算網格模型.
1)模型1選取長輸管線輸油泵國產化項目的雙吸葉輪與導葉單通道網格計算模型,見圖1,在DELL PRECISION T5500工作站平臺上,開展在激活超線程的情況下單點計算與多點并行計算速度測試研究,網格節點數約為293.4萬個.
圖 1測試模型1
Fig.1Test model 1
2)模型2為國家重大專項“CAP 1400屏蔽電機主泵研制”項目研制過程中的CAP 1400屏蔽電機主泵水力模型的全通道網格計算模型,見圖2.開展CPU在超線程激活前后計算速度差異情況的研究,網格節點數約為1 962.6萬個.
3)模型3以模型2為基礎,在HP Z820工作站雙CPU平臺上對網格數量進行調整,得到網格節點數約為3 354萬個.
4)模型4為AP 1000屏蔽電機主泵研究迷宮密封的網格模型,見圖3.在HP Z820工作站雙CPU平臺上對網格數量進行調整,網格節點數約為2 236萬個.
圖 2測試模型2
Fig.2Test model 2
圖 3測試模型4
Fig.3Test model 4
2測試硬件
NUMECA軟件單點硬件平臺為DELL PRECISION T5500機型,Red Hat 6.0系統,CPU為Intel(R) Xeon(R) X5650@2.67 GHz,內核數為6個,超線程12個,內存48 GiB,硬盤2 TiB;并行計算測試硬件平臺為HP Z820機型,Red Hat 6.0系統,CPU為Intel Xeon E52667 v2 3.30 GHz,內核數為16個,超線程32個,內存64 GiB,硬盤2 TiB.
3計算測試
在激活超線程狀態下采用DELL PRECISION T5500完成單線程與多線程測試工作,共完成單節點、2個節點、4個節點、8個節點與10個節點的并行計算測試.計算的收斂曲線見圖4,其中粗網格疊代2次,每次500步,細網格計算共完成6 000步.模型1并行計算統計表見表1,可知計算耗時主要集中在細網格計算部分.計算公式為TS=T0÷6 000(1)
V=60÷TS(2)式中:TS為細網格單位步數耗時,s/步;T0為6 000步細網格的總耗時,s;V為計算速度,步/min.由表1可知,隨著計算節點數的增加:在計算節點數小于6個的范圍內,計算速度基本呈線性增加的趨勢,超過6個以后計算速度的增速放緩,見圖5a.初步分析這種現象產生的原因為實際參加計算的線程數超過CPU的物理核心數所致.圖5b可以進一步驗證上述分析,圖中5個節點的數據來源于表1中的10個并行節點數的數據.由此可以認為在使用NUMECA開展相關的多節點并行數值計算時,其計算速度與實際參加并行計算的CPU物理核心數量成正比關系.
圖 4測試模型1的收斂曲線
Fig.4Convergence curve of test model 1
表 1測試模型1并行計算統計表
Tab.1Parallel computing statistics of test model 1方案12345節點數/個1248102層粗網格總耗時T2/s131704140321層粗網格總耗時T1/s1 626869494465384T0/(s/步)189 690100 31656 61052 13444 084Ts/(s/步)31.316.69.48.67.3V/(步/min)1.93.66.478.2endprint
a)曲線1b)曲線2圖 5測試模型1計算速度曲線
Fig.5Computation speed curves of test model 1
在未激活超線程的情況下,在HP Z820工作站上開展模型3的速度測試,測試結果顯示計算速度與并行節點數基本呈線性關系,在并行節點數為14時計算速度達到3.8 步/min,具體見圖6.為進一步驗證,在HP Z820工作站上繼續開展模型4的速度測試,測試結果顯示計算速度與并行節點數也基本呈線性關系,在并行節點數為14時計算速度約4.9 步/min,具體見圖7.圖 6測試模型3的速度曲線
Fig.6Computation speed curve of test model 3
圖 7測試模型4速度曲線
Fig.7Computation speed curve of test model 4
為進一步研究計算工作站在激活超線程前后的速度差異,采用圖2測試模型2及DELL PRECISION T5500工作站完成相關的對比測試.在未激活超線程的情況下,并行計算采用5個計算節點,在激活超線程的情況下,并行計算采用11個節點.計算結果見表2,可知方案2的每步耗時高于方案1約10.7%,方案1實際參加計算的物理核數為5.5,這與計算機CPU實際參加計算的物理核心數的比例關系基本一致,相差基本為10%.
表 2超線程激活前后的測試結果
Tab.2Test results before and after hyperthread is activated方案總線程
數/個計算用線
程數/個細網格計算
100步時間/s細網格每
步耗時/s備注112113 167.131.7超線程2653 513.435.1常規
4結論
通過在多核CPU的計算工作站平臺上使用NUMECA進行2種情況下并行計算的對比分析,可以得出如下結論.
1)無論計算模型網格有多少,其計算速度與實際參加并行計算的CPU物理核心數基本上成正比關系.
2)在激活超線程的情況下,多任務計算工作站使用的并行計算節點數在超過實際物理核心數后會明顯地降低計算速度的提升.
3)在CPU未滿負荷運行且參與計算的物理核心數相同的情況下,計算工作站的CPU在超線程激活前后,其并行計算的速度基本一致.參考文獻:
[1]李鵬, 邵明剛. 并行計算技術[J]. 中國科技信息, 2006(7): 254255.
LI Peng, SHAO Minggang. Parallel computing technologies[J]. China Sci & Technol Inform, 2006(7): 254255.
[2]胡峰, 胡保生. 并行計算技術與并行算法綜述[J]. 電腦與信息技術, 1999, 7(5): 4759.
HU Feng, HU Baosheng. Overview on parallel computing technologies and parallel algorithm[J]. Comput & Inform Technol, 1999, 7(5): 4759.
[3]何有世, 袁壽其, 王大承, 等. 計算流體力學CFD中的迭代法及其并行計算方法[J]. 中國安全科學學報, 2002, 12(3): 4345.
HE Youshi, Yuan Shouqi, WANG Dacheng, et al. Iteration and its parallel computation in computational fluid dynamics[J]. China Safety Sci J, 2002, 12(3): 4345.
[4]李珊珊, 錢大琳. 基于多核并行計算技術的混合交通微觀仿真[J]. 中南大學學報: 自然科學版, 2012, 43(12): 49314938.
LI Shanshan, QIAN Dalin. Mixed traffic microscopic simulation based on multicore parallel computing technology[J]. J Central South Univ: Nat Sci, 2012, 43(12): 49314938.
[5]NAGLE K, RICKERT M. Parallel implementation of TRANSIMS microsimulation[J]. Parallel Computing, 2001, 27(12): 16111639.
[6]侯中喜, 王承堯, 梁劍寒. 面向對象技術在CFD分區并行計算中的應用研究[J]. 空氣動力學學報, 2002, 20(S1): 4551.
HOU Zhongxi, WANG Chengyao, LIAN Jianhan. The study of objectoriented technology applied in zone divided parallel calculation in CFD[J]. Acta Aerodynamica Sinica, 2002, 20(S1): 4551.
[7]狄鵬. Grbner基生成算法的并行[D]. 西安: 西安電子科技大學, 2008年.
(編輯武曉英)endprint
a)曲線1b)曲線2圖 5測試模型1計算速度曲線
Fig.5Computation speed curves of test model 1
在未激活超線程的情況下,在HP Z820工作站上開展模型3的速度測試,測試結果顯示計算速度與并行節點數基本呈線性關系,在并行節點數為14時計算速度達到3.8 步/min,具體見圖6.為進一步驗證,在HP Z820工作站上繼續開展模型4的速度測試,測試結果顯示計算速度與并行節點數也基本呈線性關系,在并行節點數為14時計算速度約4.9 步/min,具體見圖7.圖 6測試模型3的速度曲線
Fig.6Computation speed curve of test model 3
圖 7測試模型4速度曲線
Fig.7Computation speed curve of test model 4
為進一步研究計算工作站在激活超線程前后的速度差異,采用圖2測試模型2及DELL PRECISION T5500工作站完成相關的對比測試.在未激活超線程的情況下,并行計算采用5個計算節點,在激活超線程的情況下,并行計算采用11個節點.計算結果見表2,可知方案2的每步耗時高于方案1約10.7%,方案1實際參加計算的物理核數為5.5,這與計算機CPU實際參加計算的物理核心數的比例關系基本一致,相差基本為10%.
表 2超線程激活前后的測試結果
Tab.2Test results before and after hyperthread is activated方案總線程
數/個計算用線
程數/個細網格計算
100步時間/s細網格每
步耗時/s備注112113 167.131.7超線程2653 513.435.1常規
4結論
通過在多核CPU的計算工作站平臺上使用NUMECA進行2種情況下并行計算的對比分析,可以得出如下結論.
1)無論計算模型網格有多少,其計算速度與實際參加并行計算的CPU物理核心數基本上成正比關系.
2)在激活超線程的情況下,多任務計算工作站使用的并行計算節點數在超過實際物理核心數后會明顯地降低計算速度的提升.
3)在CPU未滿負荷運行且參與計算的物理核心數相同的情況下,計算工作站的CPU在超線程激活前后,其并行計算的速度基本一致.參考文獻:
[1]李鵬, 邵明剛. 并行計算技術[J]. 中國科技信息, 2006(7): 254255.
LI Peng, SHAO Minggang. Parallel computing technologies[J]. China Sci & Technol Inform, 2006(7): 254255.
[2]胡峰, 胡保生. 并行計算技術與并行算法綜述[J]. 電腦與信息技術, 1999, 7(5): 4759.
HU Feng, HU Baosheng. Overview on parallel computing technologies and parallel algorithm[J]. Comput & Inform Technol, 1999, 7(5): 4759.
[3]何有世, 袁壽其, 王大承, 等. 計算流體力學CFD中的迭代法及其并行計算方法[J]. 中國安全科學學報, 2002, 12(3): 4345.
HE Youshi, Yuan Shouqi, WANG Dacheng, et al. Iteration and its parallel computation in computational fluid dynamics[J]. China Safety Sci J, 2002, 12(3): 4345.
[4]李珊珊, 錢大琳. 基于多核并行計算技術的混合交通微觀仿真[J]. 中南大學學報: 自然科學版, 2012, 43(12): 49314938.
LI Shanshan, QIAN Dalin. Mixed traffic microscopic simulation based on multicore parallel computing technology[J]. J Central South Univ: Nat Sci, 2012, 43(12): 49314938.
[5]NAGLE K, RICKERT M. Parallel implementation of TRANSIMS microsimulation[J]. Parallel Computing, 2001, 27(12): 16111639.
[6]侯中喜, 王承堯, 梁劍寒. 面向對象技術在CFD分區并行計算中的應用研究[J]. 空氣動力學學報, 2002, 20(S1): 4551.
HOU Zhongxi, WANG Chengyao, LIAN Jianhan. The study of objectoriented technology applied in zone divided parallel calculation in CFD[J]. Acta Aerodynamica Sinica, 2002, 20(S1): 4551.
[7]狄鵬. Grbner基生成算法的并行[D]. 西安: 西安電子科技大學, 2008年.
(編輯武曉英)endprint
a)曲線1b)曲線2圖 5測試模型1計算速度曲線
Fig.5Computation speed curves of test model 1
在未激活超線程的情況下,在HP Z820工作站上開展模型3的速度測試,測試結果顯示計算速度與并行節點數基本呈線性關系,在并行節點數為14時計算速度達到3.8 步/min,具體見圖6.為進一步驗證,在HP Z820工作站上繼續開展模型4的速度測試,測試結果顯示計算速度與并行節點數也基本呈線性關系,在并行節點數為14時計算速度約4.9 步/min,具體見圖7.圖 6測試模型3的速度曲線
Fig.6Computation speed curve of test model 3
圖 7測試模型4速度曲線
Fig.7Computation speed curve of test model 4
為進一步研究計算工作站在激活超線程前后的速度差異,采用圖2測試模型2及DELL PRECISION T5500工作站完成相關的對比測試.在未激活超線程的情況下,并行計算采用5個計算節點,在激活超線程的情況下,并行計算采用11個節點.計算結果見表2,可知方案2的每步耗時高于方案1約10.7%,方案1實際參加計算的物理核數為5.5,這與計算機CPU實際參加計算的物理核心數的比例關系基本一致,相差基本為10%.
表 2超線程激活前后的測試結果
Tab.2Test results before and after hyperthread is activated方案總線程
數/個計算用線
程數/個細網格計算
100步時間/s細網格每
步耗時/s備注112113 167.131.7超線程2653 513.435.1常規
4結論
通過在多核CPU的計算工作站平臺上使用NUMECA進行2種情況下并行計算的對比分析,可以得出如下結論.
1)無論計算模型網格有多少,其計算速度與實際參加并行計算的CPU物理核心數基本上成正比關系.
2)在激活超線程的情況下,多任務計算工作站使用的并行計算節點數在超過實際物理核心數后會明顯地降低計算速度的提升.
3)在CPU未滿負荷運行且參與計算的物理核心數相同的情況下,計算工作站的CPU在超線程激活前后,其并行計算的速度基本一致.參考文獻:
[1]李鵬, 邵明剛. 并行計算技術[J]. 中國科技信息, 2006(7): 254255.
LI Peng, SHAO Minggang. Parallel computing technologies[J]. China Sci & Technol Inform, 2006(7): 254255.
[2]胡峰, 胡保生. 并行計算技術與并行算法綜述[J]. 電腦與信息技術, 1999, 7(5): 4759.
HU Feng, HU Baosheng. Overview on parallel computing technologies and parallel algorithm[J]. Comput & Inform Technol, 1999, 7(5): 4759.
[3]何有世, 袁壽其, 王大承, 等. 計算流體力學CFD中的迭代法及其并行計算方法[J]. 中國安全科學學報, 2002, 12(3): 4345.
HE Youshi, Yuan Shouqi, WANG Dacheng, et al. Iteration and its parallel computation in computational fluid dynamics[J]. China Safety Sci J, 2002, 12(3): 4345.
[4]李珊珊, 錢大琳. 基于多核并行計算技術的混合交通微觀仿真[J]. 中南大學學報: 自然科學版, 2012, 43(12): 49314938.
LI Shanshan, QIAN Dalin. Mixed traffic microscopic simulation based on multicore parallel computing technology[J]. J Central South Univ: Nat Sci, 2012, 43(12): 49314938.
[5]NAGLE K, RICKERT M. Parallel implementation of TRANSIMS microsimulation[J]. Parallel Computing, 2001, 27(12): 16111639.
[6]侯中喜, 王承堯, 梁劍寒. 面向對象技術在CFD分區并行計算中的應用研究[J]. 空氣動力學學報, 2002, 20(S1): 4551.
HOU Zhongxi, WANG Chengyao, LIAN Jianhan. The study of objectoriented technology applied in zone divided parallel calculation in CFD[J]. Acta Aerodynamica Sinica, 2002, 20(S1): 4551.
[7]狄鵬. Grbner基生成算法的并行[D]. 西安: 西安電子科技大學, 2008年.
(編輯武曉英)endprint