代数处理器加速核编程模型研究和实现

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:cmccetehi
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
近年来,处理器的异构多核结构成为热门的研究方向,它被广泛应用到科学计算、图形图像处理、通信等各个领域中。与传统单核处理器以及对称多核处理器相比,异构多核系统中的加速核往往针对不同的应用领域做专门的结构设计和优化,因而具有更高的计算性能和/或更低的功耗。然而,加速核在带来高计算性能和低功耗的同时,也给编程方法提出了很大的挑战。一般而言,加速核往往为了某些特定领域的计算应用而设计,因而其架构与通用处理器有着本质的差异。向量结构、指令级并行、数据流结构等常常被用于加速核中,这些结构特点使得传统的编程方法无法有效利用硬件底层的优化特性,从而需要新的编程方法来提升硬件资源利用率;另一方面,加速核的出现导致程序员需要花费很大的努力去适应这些特异性的结构,开发能够充分利用硬件性能的高性能加速核程序具有很大的编程难度。  本论文从代数运算处理器MaPU(Mathematical Processing Unit)加速核的结构特点出发,研究不同层次的编程模型并尝试实现其编译器。论文的主要工作和创新点归纳如下:  1.提出并完善了一种硬件状态机重构的方法  用状态机描述和控制处理器行为是一种较为常用的方法。对于VLIW(Very Long Instrction Word)式的指令级并行处理器,它的内部包含多个可以由并发指令控制的、彼此互不相关的功能单元,每个功能单元包含有各自的状态机,而处理器整体形成一个复合的状态机。由于复合状态机的结构较为复杂,难以直接设计复合状态机描述电路。如果能够为每个功能单元设计独立的状态机,则设计难度能够降低,从而使得设计状态机控制电路的可行性得到提高。为了使得通过设计独立子状态机来辅助完成处理器整体状态机的设计成为可能,提出了一种指令级并行处理器中硬件状态机重构的方法,该方法包括怎样判定子状态机是否可重构、如何进行状态机等价变换、以及如何将独立的子状态机合并并生成复合状态机等几个主要的子方法。状态机重构方法是配置具有VLIW式指令级多发射结构的处理器的硬件状态机的有效方法,同时也为下文中介绍的代数处理器加速核底层语言编程模型提供了理论基础。  2.提出了一种基于横向宏的代数处理器底层语言编程模型  为了开发能够充分利用硬件底层结构特点的高性能代数算法库,为代数处理器设计了基于横向宏拼接的周期级精确编程模型。该编程模型基于状态机重构的原理,用横向宏描述独立功能单元的状态机,然后用横向宏拼接的方式生成处理器的VLIW风格的代码。本工作展示了为定制处理器设计底层编程模型的设计方案,提出的宏指令编程模型适用于粗粒度可重构的、具有显式指令级并发特点的加速核结构,对于具有类似结构特点的处理器编程模型设计具有一定的参考性。使用宏指令编程模型开发的代数计算程序能够达到较高的硬件资源利用率,从而达到了尽可能高的计算性能;另一方面,与纯手工汇编方式相比,使用该编程模型能够节约大量的编程工作量,证明其是用于开发高效的底层算法库的有效的解决方案。  3.提出并实现了应用于代数处理器加速核的领域专用高级语言编程模型  在底层编程模型的基础上,研究并提出了应用于代数处理器加速核的领域专用高级语言编程模型。该编程模型围绕着处理器的底层结构特点、针对指令级多发射和硬件流水线进行设计。整个编程模型设计包含3个组成部分:领域专用语言(Domain Specific Language,DSL)、编译器和运行时库。编程语言的设计结合了代数处理器加速核的结构特点,力求在较高的层次提供对底层硬件的抽象;编译器针对编程语言和硬件结构特点进行综合设计,实现了词法分析器、语法分析器、抽象语法树和指令的有向无环图等结构,并能够生成适用于处理器结构的底层硬件流水线代码;运行时库则在高级语言的层次为底层高性能计算库的调用提供了相关的数据类型和内建函数接口,同时添加了针对于特定计算系统的常用辅助函数等。本工作为代数处理器加速核设计了编程模型并提供了相应的实现,为代数处理器加速核的高级语言编程提供了新的尝试和解决方案。
其他文献
学位
电子政务是近年来我国进行研究和发展的热点问题。一个完整意义上的电子政务系统应由政府机关内部的办公自动化系统、政府部门间的网络信息共享与实时通信系统和政府对外信息
房地产管理局作为行使政府职能的一个重要部门,为了更好的能为经济建设服务,必须要顺应信息化的潮流,实行业务管理的计算机化。同时,随着房地产管理局管理水平的不断提高,也对管理
随着英文学习者的数量急剧增加,对能够辅助英文学习的工具的研究显得日趋重要。然而英汉两种语言的思维差异造成了中国学习者在英文学习中会碰到很多问题,而且这些问题的类型
GIS技术正在受到越来越广泛的重视,已深入到各行各业。交通地理信息系统(GIS-T)领域是GIS最重要和最具增长性的应用领域之一,已广泛应用在街道和公路的管理,如进行街道和公路路
最优化理论是数学的一个分支,也是一门应用相当广泛的学科。它研究的是某些数学问题的最优解,即对给出的实际问题,从众多候选方案中找到最优方案。目前,伴随着计算机技术的高速发
面向服务的软件架构已逐渐成为软件领域的一种重要设计模式,本文所研究的是其中的一个核心问题—组合Web服务。Web服务作为当前服务的主流实现形式,得到了广泛的关注。但由于可
USB(Universal Serial Bus)接口具有众多优良特性——即插即用,支持热插拔,传输速率高(USB2.0工作在高速模式时理论上传输速率达480Mb/s),配置灵活,扩展性能好(主机可同时支持127
光谱分析检测技术和光谱分析仪器在现代科学实验、生物研究、医学及医药研究、工农业生产、国防、天文观测等领域应用极其广泛。传统的光谱仪由于存在体积火、探测速度慢、集
自80年代中期以来,数据库中涉及数据分布性、多样性、数据共享和数据理解等问题被广泛研究;许多先进的数据模型被广泛利用,如扩展关系模型、面向对象模型、对象——关系模型、演