论文部分内容阅读
云计算技术的飞速发展推动了信息化架构的大整合,但将高性能计算迁移到云服务上,仍面临着重重挑战。尤其是目前广泛用于海量数据处理的Hadoop体系,应用到科学计算的某些领域存在频繁通信和迭代的难题。另一方面,传统的基于HPC集群的并行计算又无法满足飞速增长的数据处理需要,因此低成本、高可扩展性和高可靠性的MapReduce应运而生。传统的分子动力学模拟基于MPI、OpenMP或Condor网格平台,在可靠性、可扩展性、容错性和动态负载均衡方面均有所欠缺。然而在Hadoop云平台上运行分子动力学模拟具有克服传统平台的缺陷、节省各种软硬件投资和缩短模拟时间等重要意义。
本文基于对Hadoop体系结构的研究,结合计算化学相关理论,在Hadoop平台上实现短程力分子动力学模拟,并对模拟进行优化,丰富了Hadoop在科学计算中的应用。主要研究内容包括:⑴介绍云计算概念、现状和特点,以及并行计算机体系结构、并行编程模型和并行程序优化方法。阐述分子动力学模拟从传统并行平台移植到云平台的优势和意义。⑵分析Hadoop的MapReduce和HDFS等主要组件执行流程,并运用到科学计算和海量数据处理。根据分子动力学模拟的特点,分析在Hadoop平台上实现分子动力学模拟的四个难点,提出基于原子分解并行算法的四种可行方案。⑶对第一个方案的“一个Job计算一个时间步”进行实现、测试和分析。利用“读写HDFS同步法”实现第二种方案并设计了动态负载均衡算法,详细测试其加速比、各部分开销和负载均衡度。通过实验验证分子动力学模拟移植至开源云平台的可行性,并在硬件资源利用率、断点续算、负载均衡和容错性方面具有一定优势。⑷根据并行程序优化准则,结合MapReduce实际架构,从系统参数和应用程序设计两个角度阐述了本地调优技巧和改进方法,以减少通信、同步等待和迭代等非有效计算部分所占时间比重。同时对于解决需要迭代的科学计算和数据挖掘类问题的MapReduce并行算法提供参考模型。