论文部分内容阅读
并行计算是提高计算机系统计算速度和处理能力的一种有效手段。MPI是目前开发并行应用程序的主要编程模型——消息传递编程模型的事实标准。Hadoop是一个在集群上处理大级别数据量的分布式并行编程框架,实现了Google的MapReduce编程模型,是目前最为广泛应用的开源云计算软件平台。随着PC机性能的大幅度提高和网络技术的迅速发展,并行计算平台在普通PC机构建的机群上能够很好的应用,使得并行计算得以普遍应用。
本文从应用和研究的角度,对MPI并行编程模型和Hadoop分布式编程框架的相关理论进行了详细的分析,设计了基于MPI的分子动力学模拟,对Hadoop作业调度算法进行了改进。论文主要的工作如下:
1.介绍了并行计算的相关理论,论述了MPI主要的接口函数、通信机制、程序设计平台搭建等,研究MPI实现并行计算的机制和方法,对云计算、Hadoop的分布式计算模型MapReduce和分布式文件系统HDFS、Hadoop容错机制进行分析和研究,总结了MPI与Hadoop的相同和不同点。
2.设计了基于MPI并行编程模型的分子动力学并行模拟,在此基础上通过改变模拟参数进行实验。通过不同时间步数串行程序和并行程序耗时比较,分析模拟规模和模拟时间增加的关系,通过多节点多进程并行程序实验结果分析节点个数和进程个数对计算时间的影响和系统的并行加速比。另外,本文通过通信时间分析计算节点个数和计算耗时的下降速率之间的关系,分析MPI聚合通信函数的执行效率。
3.将Linux进程调度策略的时间片轮转和动态优先级相结合的调度思想应用在Hadoop作业调度中,考虑公平原则和分布式计算的本地性原则,结合失效节点任务重新分配的问题,在PBWRR算法的基础上给予改进,并且给出算法的模拟实验。通过算法性能评测,改进算法能较好的实现多个作业按照优先级、大小和等待时间公平的调度,系统利用率较高,并且能很好的处理失效节点任务的重新分配。