申威众核环境下的二维数据高效计算策略

需积分: 10 0 下载量 130 浏览量 更新于2024-08-06 1 收藏 1.92MB PDF 举报
大规模申威众核环境下二维数据的计算方法着重于解决在高性能计算机如神威·太湖之光这样的国产超级计算机中遇到的挑战。随着科技的进步,异构系统结构的多级并行编程成为科学研究和工程计算的趋势,神威·太湖之光作为国内领先的超级计算机平台,吸引了众多学者进行研究与优化。 在申威环境中,早期的研究成果丰富了众核编程的理论和技术,然而,在实际应用过程中,特别是在将全球系统模型 CESM 迁移到该平台时,遇到了问题。具体来说,海洋分量模式 POP 中的二维数据计算在较小规模(如1024个进程)下,通过常见的众核优化方法能获得良好的加速效果。然而,当进程规模扩大到16800时,众核化策略反而导致性能下降,出现了所谓的“负加速”现象。 针对这一困境,文章提出了一个创新的从核分区并行计算方法。这种方法将每个核组中的64个从核划分为多个互不重叠的分区,每个分区负责处理独立的计算任务。这样不仅能够充分利用从核的计算能力,还能通过任务分割来隐藏计算时间,提高效率。通过调整每个分区内的从核数量和分配策略,确保每个从核处理的数据量和计算负载均衡,从而最大化性能。 此外,为了进一步提升二维数据计算在大规模进程下的扩展性,文章还结合了循环合并和函数上提等并行编程技术,增强了程序的并行粒度。通过这些改进,例如在 CESM 高分辨率模型的模拟案例中,POP 分量模式在110万核心规模下的运行速度提升了0.8模式年/天,显著地展示了众核化的加速效果。 总结起来,本文的关键贡献在于提出了一种针对申威众核环境的从核分区并行计算策略,以及并行编程优化技巧,解决了在大规模进程中二维数据计算性能退化的难题,为高性能计算在复杂模型中的高效运行提供了新的解决方案。