面向大数据的加速器代码自动生成技术研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:xiongmao_yang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网的兴起与发展,全球数据量快速增长,逐步进入大数据时代。在大数据时代,互联网、金融等各个行业,利用计算机对海量数据进行分析统计和数据挖掘非常重要,由于数据量的快速增长,对其进行分析需要更高的计算性能,现有的单节点计算机性能已经不能满足要求,目前的超级计算机都采用集群和异构计算芯片相结合的方式来提供强大的计算性能。  为了更方便的利用集群的计算性能,现有程序通常基于分布式框架编写。目前常用的分布式框Hadoop和Spark都更注重集群整体性能提升,不支持计算节点上的GPU资源。随着近年来GPU、MIC等异构芯片的使用,单节点性能越来越高,如何保证编程简洁性的同时充分发挥集群的计算性能,一直是分布式框架需要解决的问题。  本文针对这一问题,提出了结合Hadoop和Spark程序自身特点与源源变换的解决方案,通过在Hadoop和Spark框架中添加源源变换功能,使得用户在不用对原有程序做任何修改或仅需少量修改的情况下,可以使程序利用集群中的GPU等资源加速其计算。  本文的主要工作和贡献如下:  1.提出结合分布式框架计算任务的特点,利用源源变换自动生成相应的OpenCL代码,使得该部分计算在GPU等异构芯片上执行。  2.在Hadoop框架上应用并实现该方法。对Hadoop框架计算任务的特点进行分析,发现Map计算任务中对的隐式并行处理的特点,提出并实现利用源源变换将相应的Map任务自动移植到GPU等芯片上执行的方案;  3.在Spark框架中应用并实现该方法。分析Spark框架中RDD计算的特点,发现Spark中RDD的计算具有与Hadoop中Map任务相同的特点,都存在隐式并行的情况。依据此特点提出并实现同样利用源源变换将Spark程序中部分计算自动移植到GPU等芯片上执行的方案。除了解决隐式并行模式的GPU代码自动生成外,通过针对Scala函数式语言的特征提取特定函数的提取机制和运行时翻译的方法,将Spark中Map处理移植到GPU上;  4.设计实验,验证了本文提出的针对Hadoop和Spark框架的代码自动生成方案的可行性,并测试了相应的效果。
其他文献
随着移动通信和互联网的不断发展,电信运营商一方面需要满足人们日益增长的业务需求,另一方面需要抵抗互联网对于传统增值业务的冲击,这就要求电信运营商推出更加丰富多彩的
网络虚拟化技术作为解决当前网络僵化问题的新兴技术,获得了众多研究机构的广泛关注。本文在此背景下,重点关注网络虚拟化环境下的资源分配问题。资源分配是网络虚拟化环境下
近年来,VoIP应用得到了越来越广泛的应用,越来越多的企业和个人选择网络电话来进行实时通信。随着互联网中联网主机的数目日渐增加,很多主机都会处于NAT之后,网络地址转换技
Web服务的松耦合架构及其开发便捷性使得它的应用范围越来越广‘,越来越多的企业和个人热衷于开发新的Web服务并将其放在网络上,如何对这些Web服务进行识别成为Web服务研究中
基于多层半可分(HSS)结构矩阵的快速算法可有效降低具有数值低秩属性的稠密线性方程组求解的复杂度。随机取样已经被证明是一种高效率的近似分解低秩矩阵的技术。采用随机取
现代化社会的迅速发展,带来了越来越广泛信息传播渠道。与此同时,产生的信息量也发生了爆炸式地增长。因此,无论是普通个体,还是企业,都很难在短时间内从海量的信息中快速找
计算机技术在当今的电信呼叫中心里得到了越来越广泛的应用,从传统的CTI, ACD技术到下一代网络的NGN技术,通过与计算机技术的紧密结合,电信呼叫中心在当今社会里正发挥着越来
人体环境中的微生物群落对人体健康起着至关重要的作用。当前,国内外很多研究都试图发现微生物群落如何影响人体健康,微生物群落之间如何交流,以及群落间交流对人体健康的影响。
随着数值天气预报研究的不断发展,数值模式的复杂度和分辨率在不断提高,其非线性程度也在不断提高,同时新的完全非线性数值模式,比如气溶胶模式、植被模式等,在不断发展,原线性资料
作为智慧城市在中国的应用,无线城市项目的提出旨在解决市民生活信息化问题。无线城市的核心是如何将城市中大量的数据进行收集、整合和处理,并将处理之后的数据转化为信息提