面向SPU处理器的编译支持与优化研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:fntshb
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
计算科学为所有学科向定量化和精确化发展提供了重要基础,结构化网格计算是其中应用极其广泛的计算模式之一。网格计算通常计算访存比较低,对带宽要求很高,在主流HPC平台上普遍执行效率较低。数据流结构因其天然并行性,超长指令流水,能耗较低等特点,在学术界和工业界都受到了很大的重视。  中科院计算所针对科学计算应用研发了新型异构处理器SPU,其加速部件ACC基于数据流结构设计,提供Streaming、SIMD、Dataflow三层执行模式以及复杂的层次存储结构。为了充分发挥SPU的硬件优势,减轻开发人员负担,本人参与了SPU编译器的设计实现,面向高级语言应用,支持异构协同代码自动生成和性能调优。  本文的主要贡献如下:  1、针对ACC的SIMD执行模式的编译支持。本文研究了SIMD的循环划分方法,以及如何通过数组区域分析实现SIMD并行的数据划分和重组,并将数据重组参数传递给运行时程序代码生成模块,以实现完美的SIMD并行计算。  2、软件循环的编译支持与2.5D循环分块优化。本文针对科学计算应用中常见的非紧嵌的DOALL循环,实现了基础的编译支持。同时根据stencil计算的特点,研究了在ACC结构上实现数据重用的2.5D-blocking优化方法。经实验测试该优化策略针对3D7P应用相比较原来的最优性能获得了19%左右的性能提升。  3、针对SPU的异构特性实现了主核部分运行时代码的自动生成,进一步减轻开发人员负担。  4、改进指令流图的PE优化映射,引入新的映射策略和调优参数,以合理的利用硬件资源的特性。对4个典型程序的模拟器仿真实验表明,改进后的映射算法结合调优最多可以实现1.34x-2.81x倍的性能提升。最后,通过总结调优参数的统计特征,进一步缩小了调优空间。
其他文献
碰撞检测技术是指检测虚拟场景中两个或多个物体对象之间是否碰撞,何时碰撞,何处碰撞等问题。碰撞检测技术在计算机游戏,物理仿真,虚拟技术,计算动画等领域得到广泛的应用。因其算
面向对象的组件开发方法采用全新的方法论,对很多经验不足的程序员来说,难以理解。加上结构化思想的干扰,使很多采用面向对象方法的应用开发并不能体现出优势。在这种情况下,采用
分布式总账自2009年由中本聪首次提出后,经过短短几年时间就取得了巨大发展,并自2013年起引起了学术界和工业界的广泛关注。与传统银行总账不同,分布式总账采用去中心化方式管理
随着互联网上的信息不断膨胀以及信息形式的日渐多元化,通用搜索引擎所需要采集、索引和查询的内容越来越多,然而面对庞大的搜索返回结果,用户寻找自己所需要的信息是一件很
随着互联网的飞速发展,不仅改变了人们的生活方式,也产生了巨大的信息资源。如何从海里的信息资源中高效准确地获取到知识成为了大数据时代亟需解决的问题。在众多的知识获取方
车辆监控系统的研究是集全球卫星定位系统(GPS)、地理信息系统(GIS)和无线通讯技术为一体产生的一个崭新的领域。它从系统的角度,考虑了人、路、车以及环境四个方面的因素。
为了提高测试效率,缩短软件开发周期,自动化软件测试受到越来越多的关注。单元测试作为测试工作的第一步,对软件中的最小单元模块进行测试。任何模块都不是独立的,可能需要调
大数据计算是在一定的时间约束下完成大规模数据处理的计算。在应用形态上,大数据计算以数据为中心,数据的多样性、对于数据处理的时间约束的多样性、应用领域的多样性决定了大
数据容量的爆炸式增长,使得多控制器、多节点的存储系统成为发展趋势,而这类存储系统往往面临着状态(即元数据)一致性问题。高维BWRAID是多控制器、多节点的集群存储系统,它是一种
随着科技发展,特别是智能小区的出现,传统人工抄表方式抄收效率低,准确度差等弊端已不能满足居民要求,本文在分析现有自动抄表方案优缺点基础上,结合抄表网络固有特点,利用无