论文部分内容阅读
分子动力学模拟作为一种计算机模拟方法,已广泛应用于物理、化学、生命科学、材料学以及医药等领域。并且,随着人类对科学探索的深入,使用高性能计算机进行大规模分子动力学模拟已成为必然趋势。然而,高性能计算机在带来强大计算能力的同时也遇到了各方面的挑战,如负载均衡、通信、可靠性、功耗等问题,其中负载均衡问题带来的性能损失尤其突出。为了解决该问题,本文提出了面向并行分子动力学模拟的静动态负载均衡方法,并基于Open FOAM框架实现。本文的主要工作和创新点包括以下几个方面:?建立了基于Open FOAM的分子动力学负载均衡框架(第二章)本文深入分析了Open FOAM并行程序框架及其分子动力学的实现方法,发现负载不均衡会严重影响分子动力学的模拟效率。针对该问题,在原有Open FOAM框架的基础上建立了静动态负载均衡机制和相应的数据组织、计算流程、框架组成以及与其他模块的结合方法。本文提出的面向分子动力学模拟的负载均衡框架对其他粒子方法负载均衡机制的设计具有借鉴意义。?提出了面向并行分子动力学模拟的静态负载均衡方法——MDSLB(第三章)本文提出了一种面向大规模分子动力学模拟的静态负载均衡方法——MDSLB。通过对分子动力学中短程力计算特征的深入分析,我们将短程力进一步细分为三类力模型,每类力模型中涉及的计算任务又被拆分为多个细粒度的独立计算单元,称为“cell负载”。这些计算单元为MDSLB方法的实现提供了基本的数据结构。在MDSLB方法中,模拟区域被分为多个子区域,称为“局部空间”。每个局部空间中的cell负载被均匀地分配给各个处理器。该方法通过在程序开始时执行一次,从而保证整个模拟过程中负载的均衡。?提出了面向并行分子动力学模拟的动态负载均衡方法——MDDLB(第四章)本文针对小规模分子动力学模拟提出了动态负载均衡方法——MDDLB。该方法基于Open FOAM的cell结构,设计了负载迁移的基本单元——近邻粒子列表。另外,还引入了阈值检测机制负责监控和衡量每个处理器的负载情况。当负载不均衡的程度超过一定值时,则从负载较重的处理器将负载动态迁移到负载较轻的处理器上。基于该方法,可以有效解决小规模分子动力学模拟中的负载均衡问题。?验证了负载均衡框架及MDSLB方法和MDDLB方法的正确性和有效性(第五章)本文基于Open FOAM设计实现了第二章所提出的分子动力学负载均衡框架,并基于该框架分别实现了第三、四章提出的MDSLB方法和MDDLB方法。基于Tian He-1A子系统使用扩散模型对上述框架和方法进行了测试,实验结果表明,分子动力学负载均衡框架及在其上实现的两个方法是正确有效的。与传统方法相比,MDSLB方法可以获得34%-64%的加速,而MDDLB方法则可以获得更接近理想情况的加速比。