民用航空发动机转子并行数值计算方法研究
2022-04-01王小庆胡文韬
王小庆,胡文韬
(中国航发商用航空发动机有限责任公司,上海 200241)
转子是民用航空发动机的主要零组件,在发动机服役中承受高温、高压等严苛的工作环境,为保证其服役的可靠性,在设计阶段通常采用数值分析对其强度进行评估[1-2]。由于民用航空发动机对高/超高增压比的需要,转子的结构愈加复杂,相应的计算规模也越加庞大,为提高设计效率,并行计算成为首选项。
并行计算可以通过增加核数缩短物理耗时,已在各专业的设计研发中得到应用[3]。为充分发挥并行计算的优势,很多学者对影响并行计算效率的区域分解方法[4-6]、并行计算模式[7-9]展开了研究,但目前尚未见到针对计算规模达到百万自由度、存在大量接触非线性和几何非线性计算的民用航空发动机转子并行计算的研究。
本文针对民用航空发动机转子的并行数值计算方法开展研究,从区域分解模式、并行计算模式角度进行分析,确定了针对百万自由度计算规模的民用发动机转子的最优并行计算配置,为实现民用发动机转子的快速设计提供参考。
1 研究思路
基于全因子试验设计(DOE)理念,考虑计算核数、分区模式、并行计算模式这3个影响并行计算效果的主要因素,开展航空发动机转子并行计算的研究并确定最优并行计算配置。
民用航空发动机转子计算规模通常在百万自由度,因此核数选取2、4、8、16、32、64共6个水平;分区模式考虑主流的基于图论的分区(Graph-based Domain Decomposition,GBDD)和基于贪婪法的区域分解(Greedy Method for Domain Decomposition,GMDD);并行计算模式考虑通用的共享内存式并行(Shared Memory Parallelism,SMP)和分布内存式并行(Distributed Memory Parallelism,DMP),共形成24种并行计算的配置组合(见表1)。
表1 并行计算配置组合
评价并行计算效果的常用指标包括物理计算时间、加速比和并行效率,最佳的并行计算配置除有最短的物理耗时外,还需有良好的加速比和并行效率。加速比和并行效率的定义如下:
(1)
式中,βa为实际加速比;tr为基准核数计算时的物理耗时;td为采用其他核数计算时的物理耗时;ηa为实际并行效率;βi为理想加速比,当基准核数为单核时,βi即为实际计算的核数。
2 分区模式影响研究
区域分解是影响并行计算效率的主要因素之一,良好的分区应保证各个区域的计算负载尽量均衡,区域间的边界通信最少。此处针对常用的基于图论的分区(GBDD)和基于贪婪法的区域分解(GMDD)展开研究。
基于图论的分区易于并行化,其基本原理如下:首先将数值模型网格转化为无向对偶图,接着利用图分区算法对该对偶图进行区域分解,最后将对偶图的分区映射为数值模型网格的分区。算法的核心为图分区的实现,本文采用K-路图划分算法[10]。
基于贪婪法的分区利用求解最优化问题的思路,首先获得局部最优解,然后递归分析逐步得到或逼近全局最优解。假设数值网格中每个节点所连接的单元数为该节点的权重,网格模型单元总数为En,分区数为Nd,则基于贪婪法的分区算法首先选择当前最小权重的节点所连接的所有单元为初始分区,然后将已有单元的相邻单元扩展进分区,递归执行,直到分区内单元数达到En/Nd,然后进行下一个分区。因贪婪法的局部最优特点,有时难以获得全局最优解。
根据表1的并行计算配置组合在超级计算机上分别开展数值计算,计算的物理时间见表2和表3。
表2 不同分区模式物理时间对比(基于SMP)
表3 不同分区模式物理时间对比(基于DMP)
从表2和表3可以看出,基于SMP并行模式,核数为2、4、8、32、64核时,2种分区模式最大耗时差别在6%以内,而在16核时,GMDD模式比GBDD方法模式耗时高出20%以上;基于MPP并行模式,在8、16、32核时,GMDD模式物理耗时比GBDD模式高出7%~10%。因此,对于百万自由度计算规模的民用航空发动机转子并行数值分析,应优先选用基于图论的分区模式(GBDD)。
3 并行计算模式影响研究
主流的并行计算模式有共享内存式并行(SMP)和分布内存式并行(DMP)2种,SMP属于线程级并行,由进程将计算任务分配到各线程,计算完成后将结果收回到该进程,线程之间无法进行通信,通常适用于小规模并行,可扩展性较差;DMP属于进程级并行,进程间可通信,可用于大规模/超大规模并行计算,可扩展性好。
根据表1~表3,采用相同分区模式、不同并行计算模式时的物理耗时分别如图1和图2所示。从图1和图2可以看出,不同核数下基于DMP的物理耗时均少于基于SMP的物理耗时,并且随着核数的增加DMP优势更加明显。故而,DMP并行计算模式更适用于民用航空发动机转子的并行数值分析。
4 最优并行计算配置分析
最优的并行计算配置应考虑物理计算时间、加速比和并行效率3方面的最佳匹配。对SMP&GBDD、SMP&GMDD、DMP&GBDD和DMP&GMDD这4种情况下的加速比和并行效率进行分析。
图3所示为对应的加速比。从图3可以看出,SMP&GBDD和SMP&GMDD这2种配置在核数>8核后,实际加速比已经远远小于理想加速比,并行效果变差;DMP&GBDD和DMP&GMDD这2种配置加速比更优,但在核数>16核后,并行加速效果也明显下降,且在64核时,加速比出现了降低。
图4所示为并行效率的对比。理想并行效率为100%,即随着核数的增加,物理计算时间应成比例减少,但实际因不同分区间的通信消耗等,无法完全达到100%,但并行效率越高则表明并行效果越好。由图4可知,虽然DMP&GBDD和DMP&GMDD的并行效率明显优于SMP&GBDD和SMP&GMDD,但在核数达到16核时SMP&GBDD和SMP&GMDD这2种配置并行效率已经<20%,而DMP&GBDD和DMP&GMDD的并行效率也已<40%。
综上所述,基于DMP的并行计算模式无论物理计算时间、加速比,还是并行效率,均优于基于SMP的并行计算模式,且DMP&GBDD配置组合在相同核数时加速比和并行效率略优于DMP&GMDD配置组合,同时考虑到虽然16核时并行计算效率已<40%,但物理计算时间更短,因此,针对百万自由度计算规模的民用航空发动机转子,并行数值计算的最优并行计算配置为DMP&GBDD&16核。
5 结语
针对民用航空发动机转子并行数值计算方法开展研究,结果表明:采用基于图论的分区方式优于基于贪婪法的分区方式;相对于共享内存式并行计算模式,采用分布内存式并行计算模式可获得更短的计算耗时;针对百万自由度级民用航空发动机转子的并行计算,采用基于分布内存式并行模式、基于图论的分区模式、计算核数为16核时,可以获得最佳并行计算效果。