论文部分内容阅读
随着海洋各方面数据的完善及空间分辨率的提高,水质预报系统的计算量也越来越大。短期预报系统的串行程序运行效率都很低,如果延伸至更长时间的预测,执行时间上将会更长,这不仅造成时间的浪费,更严重的甚至会影响到水质的预报工作。而在多核心集群运行纯MPI(Message Passing Interface,消息传递接口)并行系统对内存开销大、扩展性差,且不能充分利用集群系统的硬件资源。在胶州湾水质预报系统中运用混合并行计算技术,可大大提高系统运算速度,具有较高的运行效率,对混合并行技术进一步应用到更多的海洋数值模拟中有重要作用。MPI并行技术是分布式存储体系结构环境中理想的并行方式,开放式多处理OpenMP(Open Multi-Processing)是适用于共享存储体系结构的并行技术,且在科学计算方面占据统治地位。针对多核心集群,本文将MPI技术与OpenMP技术相结合,提出了一种MPI+OpenMP混合并行编程模型,并将其应用于胶州湾水质预报系统中的水质模块当中,本文的主要工作如下:(1)对胶州湾水质预报系统的串行程序和基于MPI非阻塞通信的水质模块并行程序进行了详细的分析,在此基础上,分析了纯MPI并行模型的不足之处,提出了对胶州湾水质预报系统中水质模块并行的改进方案——MPI+OpenMP混合并行模型。(2)在对胶州湾水质预报系统进行介绍和分析的基础上,使用MPI+OpenMP混合并行技术实现了水质模块的并行。相对于纯MPI的并行系统,混合并行模型更加适合多核心集群系统。(3)将并行了水质模块的混合并行预报系统运行结果与串行系统进行对比,验证了混合并行模型的可靠性。测试了混合并行模型的运算效率,并与纯MPI的非阻塞通信并行系统进行了对比,体现了混合并行模型的更优性。实验结果表明,MPI+OpenMP混合并行模型能够显著提高水质模块运算的执行效率,且相对于纯MPI非阻塞通信并行方式具有更高的加速比和可扩展性。