基于NUMECA FINE/Turbo的并行计算测试
2015-01-13董晶
董晶
摘要: 为具体了解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