论文部分内容阅读
当今的超级计算机系统都具有显著的层次性:节点间的网络互连拓扑结构如胖树有不同交换机跨度的延迟,节点内一般是多个NUMA结构的多核处理器。计算机的体系结构的发展已明显加剧了超级计算机结点内的并行度,节点内的处理器数、核数的迅速增加导致了通信、内存访问延迟的明显的层次性。
通过考虑硬件拓扑结构来优化通信性能是一种常见并且有有效的手段,利用结点间的层次性即网络拓扑结构来优化MPI集合通信一直是并行计算的研究热点,并且主流MPI的实现已经考虑了结点间的层次性。然而到目前为止结点内的层次性优化工作并不多见,MPI主流算法都假设结点内的核间通信延迟是一致的,并没有考虑结点内的层次性。
MPI集合通信操作应该自动获取结点内的拓扑结构并作出相应的优化。为此,这篇论文首先提出了一个基于NUMA结构的性能分析模型并利用该模型优化MPI集合通信的性能。同时,这篇论文评估了AMD和Intel两种多核平台下不同通信模式的MPI集合通信的性能,性能评估工作显示了不同算法和拓扑结构的选择可以获取明显的性能提升:短消息的MPI_Bcast在Intel平台上可提升76.5%,AMD平台上可提升14%;短消息Allgather可提升48.5%(Intel平台),18.3%(AMD平台);短消息Alltoall可提升12%(Intel),3%(AMD)。
通过分析节点内层次性对MPI集合通信性能的影响,本文提出了一种考虑NUMA结构硬件性能优化集合通信性能的算法,该算法调用MPI进程管理接口PMI的功能函数获取yu运行时进程-核映射信息并利用较优的通信模式优化MPI集合通信性能。实验结构表明Intel平台下短消息的MPI_Bcast(O)、短消息Allgather、短消息Alltoall的性能分别提升了40.86%、32.61%、7.85%;长消息Allgather性能提升了36.15%。