论文部分内容阅读
随着大数据(Big Data)规模的不断增长以及数据分析算法复杂度的不断提升,数据处理系统对计算性能的需求也日益凸显。在这样的背景下,异构计算(Heterogeneous Computing)受到越来越多的关注,高性能也成为数据处理系统的首要设计需求之一。另一方面,以MapReduce模型为核心的分布式系统成为大数据处理与分析的利器,并在实际应用中发挥着巨大的作用。因此,研究面向异构计算的MapReduce数据处理技术,对于提升系统性能、提高数据处理任务的执行效率具有重要作用。尽管MapReduce模型对硬件平台具有较强的通用性,但复杂的异构计算环境给系统的设计和优化,以及计算资源的公平分配带来了新的挑战。尤其是随着SIMD(Single Instruction Multiple Data)向量技术在异构计算中的广泛应用,使得MapReduce任务的高效计算遇到了极大的困难。因此,本文面向异构计算以及SIMD向量技术,围绕MapReduce系统的设计与优化开展了研究,并针对异构资源的公平分配提出了相应的调度算法。论文的主要工作包括:(1)设计了面向异构计算的MapReduce数据处理框架micMR。首先基于MapReduce分布式模型的特征,建立了用于描述异构MapReduce数据流的HMUD模型;而后,结合模型和异构计算特点,并根据管理优化目标,设计了异构MapReduce计算框架micMR,以及总线I/O的时间隐藏优化技术和协处理器的可扩展性技术;最后,本文在异构计算环境中对系统框架和优化技术进行了验证和分析。实验结果表明,micMR具有较好的异构计算性能,并且在总线I/O和协处理器扩展性方面具有良好的优化效果。(2)面向SIMD向量计算的micMR优化技术研究。首先对基于SIMD向量计算的Intel MIC协处理器进行了量化分析,为后续的研究工作打下基础;而后对micMR框架进行了向量计算的优化研究,提出了map任务的向量计算、数据向量存取、以及Hash算法的向量优化等,提高了任务在MIC中的计算性能;最后,在CPU-MIC异构计算节点中验证了优化技术和系统整体性能。实验结果表明,micMR在向量优化方面取得了较好的效果,并且数据处理性能比Phoenix++提高了8.4到45.8倍。(3)研究了异构计算资源的公平调度算法,发现DRF和H-DRF算法在异构计算环境下存在不容忽视的资源利用率低、资源分配不公平、任务长时间饥饿等现象。基于上述发现,首先对加权DRF算法进行了研究,提出了一种基于系统实时状态统计的权值计算方法,用以提高任务的计算性能;而后,针对多用户分级调度提出了一种基于主公平度的公平调度算法,用以保证资源分配的公平性、提高资源利用率和任务的执行效率。本文在异构集群环境中分别实现了这两种调度算法,并使用与Facebook trace特征相同的测试用例完成实验验证。实验结果表明,相较于DRF算法,加权DRF算法能够提高19.2%的任务计算性能;主公平度公平调度算法能够保证资源分配的公平性、有效避免任务饥饿和计算资源闲置现象,相比H-DRF算法能够提高18.5%的任务计算性能。(4)在天河二号异构计算集群中实现了micMR数据处理系统。利用Hadoop实现了对大规模集群系统的管理,并在系统中整合了micMR优化技术和DFF调度算法,提出了协处理器令牌容错机制应对协处理器的失效情况,并实现了基于轻量级容器云技术的系统管理和部署。实验结果表明,micMR在计算性能上比Hadoop提高了2.0到5.1倍。