基于GPU集群的MapReduce并行计算框架的研究与实现

基于GPU集群的MapReduce并行计算框架的研究与实现

论文摘要

随着现代计算机技术的不断发展,获取的数据的规模也越来越大,对大规模数据的快速处理成为亟需解决的问题。MapReduce作为一种分布式计算模型,能够简化程序员编写并行应用程序的工作,因而自2004年提出来后,迅速在世界范围内得到广泛的使用。然而,现有的MapReduce系统大多运行在CPU集群上,单个节点的计算性能有限,且前期投入和后期运维的成本较高。近年来,随着GPU的性能和可编程性不断提高,通过GPU加速成为提升大规模数据处理效率的新突破口。如何在CPU/GPU的异构环境上实现MapReduce架构迅速成为大数据处理领域的研究热点。本文针对上述问题展开了深入的研究,主要工作如下:1.提出了一种基于CPU/GPU异构系统的MapReduce模型,在保留原有MapReduce工作流的情况下,将MapReduce中的大部分计算任务转移到GPU上进行加速处理,提高了单节点的处理效率。2.在分析研究了整个系统数据调度的基础上,提出并实现了面向GPU的MapReduce数据调度策略,有效的实现了文件系统与CPU之间,CPU与GPU之间,以及GPU与GPU之间的快速数据交换。3. 由于异构环境的存在,集群的计算节点性能不尽相同,本文在深入研究现有MapReduce系统负载平衡算法的基础上,提出并实现了一种适应基于GPU的MapReduce系统的任务调度负载平衡策略。4.提出并实现了一个基于CPU/GPU异构系统的MapReduce并行计算框架(NESTOR),并通过叠前时间偏移(PKTM)等典型应用验证了本文并行计算框架的有效性。实验证明NESTOR能够完成MapReduce的基本工作流,并且简化了用户开发GPU计算程序的过程,对大计算量的应用有明显的提速。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 国内外研究现状
  • 1.2 相关技术
  • 1.2.1 GPU通用计算与CUDA
  • 1.2.2 Thrust泛型编程
  • 1.2.3 MapReduce
  • 1.2.4 InfiniBand
  • 1.3 本文研究内容
  • 1.3.1 CPU/GPU异构集群系统中数据调度的研究
  • 1.3.2 异构系统的作业负载平衡策略研究
  • 1.3.3 基于GPU的MapReduce并行计算框架的设计与实现
  • 1.4 论文结构
  • 第二章 一种CPU/GPU异构集群系统中的数据调度策略
  • 2.1 POSIX和GLUSTERFS文件系统
  • 2.2 数据调度
  • 2.2.1 I/O数据调度
  • 2.2.2 模块间数据调度
  • 2.3 本章小结
  • 第三章 基于GPU的MAPREDUCE系统作业负载平衡研究
  • 3.1 异构MAPREDUCE集群的负载平衡理论基础
  • 3.2 NESTOR框架的负载平衡策略
  • 3.3 本章小结
  • 第四章 并行计算框架的设计与实现
  • 4.1 通信层实现
  • 4.1.1 NESTORCom
  • 4.2 数据调度系统的实现
  • 4.2.2 文件操作
  • 4.2.3 I/O数据调度
  • 4.2.4 模块数据流调度
  • 4.3 负载平衡的实现
  • 4.4 基于NESTOR的开发
  • 4.4.1 叠前时间偏移
  • 4.4.2 接口编写
  • 4.4.3 实验结果
  • 4.5 本章小结
  • 第五章 总结与展望
  • 5.1 全文工作总结
  • 5.2 下一步工作
  • 致谢
  • 参考文献
  • 附件一
  • 相关论文文献

    标签:;  ;  ;  ;  

    基于GPU集群的MapReduce并行计算框架的研究与实现
    下载Doc文档

    猜你喜欢