函数式并行程序语言研究

来源 :国防科学技术大学 | 被引量 : 0次 | 上传用户:qq1083832688
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
当前,计算机硬件系统正朝着并行化与异构化的趋势发展。继多核微处理器普及之后,图形处理器GPU、数字信号处理器DSP、FPGA等多种硬件加速设备被越来越多地应用到计算机系统。这些硬件加速设备特点各异,与通用处理器相比往往在特定方面具备突出的性能优势,它们在与通用处理器组成的异构计算机系统中作为协处理器辅助通用处理器执行计算任务。由CPU与GPU组成的计算机系统是现阶段最为典型异构系统。跟随计算机硬件系统并行化与异构化的发展趋势,现阶段针对异构系统的并行软件技术也处于蓬勃发展的时期。最大程度地开发异构系统中并行硬件的计算能力是并行软件技术的首要目标,同时,并行软件技术也要兼顾易用性,即应该尽量降低并行程序设计的难度。本文设计了一种并行程序语言,面向数据并行问题,并制定了该语言在CPU/GPU异构计算机系统上的实现方案,兼顾了高效性与易用性两方面的要求,对于提高在异构计算机系统上的软件开发效率,具有积极意义。本文的主要贡献如下:首先,该语言采用函数式程序语言设计,抽象层次高,表达能力强,大大降低了并行编程的难度。第二,设计了一种中间语言Core,该语言提供了一种基于并行向量原语的编程模型,非常适合表达数据并行问题,使用一组精简的向量原语就可以构造许多实际的并行程序。第三,采用流驱动计算模型作为任务自动并行化的基本技术,提出了将数据并行问题转化为数据流的方法,该方法可以挖掘问题中的并行潜力,且与问题无关,通用性较强。同时,将计算任务表示成数据流的形式非常适合GPU本身提供的并行计算模型。最后,设计了一个运行时系统,该系统能够有效地管理系统内存资源,能够动态、高效地将并行计算任务调度到GPU上执行。
其他文献
学位
随着Internet的普及和发展,网络教学日益流行.网络教学具有诸多优点:如信息量大,内容丰富、生动;教与学不受时间、地域的限制等等;网络考试是网络教学中的一个重要环节.网络
互联网在不断地为人类提供强大的服务功能同时,网络安全问题日益严重,由此导致的虚拟资产纠纷事件也日益增多,尤其是以电子商务、网络游戏中虚拟资产的交易最为严重。网络环
从IPv4向以IPv6为代表的下一代Internet的过渡,涉及网络硬软件产品的全面升级换代,因此,对基于IPv6的新一代网络产品研制和开发就成为整个过渡期的重要任务。相应地,对以IPv6为基
SIFT算法是图像局部不变性特征匹配领域的经典算法,因其对旋转变化、尺度变化、光照变化的强鲁棒性,使其在模式识别、计算机视觉等领域有着广泛的应用,如目标识别、目标跟踪
PSTN电话已经在全球普及,渗透到社会生活的各个角落。由于PSTN网络的设计缺陷,其安全性问题日益突出,特别是在一些敏感部门,如政府、军队等安全问题更加尖锐。窃听、冒充、否
解决数据安全问题是对等互联P2P(Peer-To-Peer)网络进一步发展的重要关键问题之一,因而对于该问题的研究具有积极的实用意义。本文在对等互联网络技术的基础上,对数据安全与
计算机网络的迅速发展为全球范围内实现高效的资源共享和信息交换提供了方便,同时由于计算机网络的开放性和共享性,其安全性已成为人们日益关注的问题。在世界范围内,对计算
三维获取的新技术引发了曲面表示形式的新需求,直接使用点集表示曲面吸引了越来越多学者的注意,该文正是研究基于曲面的点集表示的一些算法.对于某种曲面表示形式,一个完整的
地理信息系统(GIS)正在逐渐深入到许多的领域中,而计算机网络的迅速普及又加快了传统GIS向网络GIS转变的步伐,GIS与网络技术的结合是当前GIS研究领域的重要方向,构造分布式地理