面向FT64流处理器中高密度计算的VLIW编译优化技术
发布时间:2020-04-07 10:17
【摘要】: 流体系结构是近年来新兴的一种高性能体系结构。FT64作为国内第一款自主研究设计的64位流处理器,其核心级采用了SIMD+VLIW的执行模式,开发程序中的并行性,其运算簇内采用分布式寄存器文件结构,支持大规模功能单元阵列对寄存器容量及速度的需要。VLIW技术有利于芯片提升频率、降低功耗,同时也对编译器提出了很高的要求,而当应用领域扩展后,应用对寄存器需求的急剧增大使得分布式寄存器文件中单寄存器文件的容量成为了应用编程和编译中的一个瓶颈。 本文研究了流处理器中的VLIW编译技术,目的是为FT64提供高效的VLIW编译器,为用户程序的高效执行提供编译支持。 在目前已有研究的基础上,本文基于ISCD源代码、应用背景和工程实践需要,针对FT64流处理器设计实现了其核心级编译器。在研究了相关背景后,编译器的实现主要集中于策略的选择、工程实现及对瓶颈部分的处理上。通信调度保证了VLIW调度在针对FT64核心级的共享互连结构时的高效;采用load schedule策略在不降低程序性能的情况下使得寄存器分配成功,避免了因为寄存器过载而造成的性能损失;针对程序中的特征采用乘加操作自动合并算法提高编译效率。 本文实现的编译器目前已经在FT64流处理器的系统运行中投入实际使用,并取得了很好的效果。本文还在FT64上对编译器的各项性能进行了实测和性能分析,实现结果表明,在采取了多种优化措施后,编译器能够很好的识别出程序中的并行性,取得了预期的效果。
【图文】:
因而主要采用分布式寄存器文件,以共享互连总线的方式连接。传统的通用处理器体系结构如图1.11’。]所示,研究表明它们并不适合于计算密集型应用,因为它们难以支撑足够多的功能单元来满足密集计算程序的计算需求。通过图1.1可以看出,每个功能单元的输入输出都通过一个独占的总线连接到一个集中的寄存器文件上,这个寄存器文件要为每个连接到其上的总线提供一个端口。研究表明在这种结构中,第2页
1~3个局部寄存器文件(L盯),局部寄存器文件的读端口直接与对应功能单元的输入端口连接,每个功能单元只能从自己的局部寄存器文件中读取操作数。所有寄存器文件的写端口同所有功能单元的输出端口之间通过图1.2所示的共享互连连接,使得数据可以在不同寄存器文件间通信传输。共享互连交叉开关保证了每个功能单元的输出端口通过一个交叉点可以无阻塞得与一个空闲寄存器文件写端口相连,所有的寄存器文件和功能单元间可以同时传输数据,因此拥有很高的带宽。而且在这种结构下所有寄存器文件(包括交叉开关)面积之和改进到。((N/c)’)的量级,,其中N是功能单元的数目,c是一个常数,延迟和功耗也有相同的关系。由于带宽优势,以及硬件开销较小,绝大多数新一代计算密集型处理器在扩展到大规模ALU时都采用了分布式寄存器文件结构。Imagine流处理器的流片结果表明
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2007
【分类号】:TP332
【图文】:
因而主要采用分布式寄存器文件,以共享互连总线的方式连接。传统的通用处理器体系结构如图1.11’。]所示,研究表明它们并不适合于计算密集型应用,因为它们难以支撑足够多的功能单元来满足密集计算程序的计算需求。通过图1.1可以看出,每个功能单元的输入输出都通过一个独占的总线连接到一个集中的寄存器文件上,这个寄存器文件要为每个连接到其上的总线提供一个端口。研究表明在这种结构中,第2页
1~3个局部寄存器文件(L盯),局部寄存器文件的读端口直接与对应功能单元的输入端口连接,每个功能单元只能从自己的局部寄存器文件中读取操作数。所有寄存器文件的写端口同所有功能单元的输出端口之间通过图1.2所示的共享互连连接,使得数据可以在不同寄存器文件间通信传输。共享互连交叉开关保证了每个功能单元的输出端口通过一个交叉点可以无阻塞得与一个空闲寄存器文件写端口相连,所有的寄存器文件和功能单元间可以同时传输数据,因此拥有很高的带宽。而且在这种结构下所有寄存器文件(包括交叉开关)面积之和改进到。((N/c)’)的量级,,其中N是功能单元的数目,c是一个常数,延迟和功耗也有相同的关系。由于带宽优势,以及硬件开销较小,绝大多数新一代计算密集型处理器在扩展到大规模ALU时都采用了分布式寄存器文件结构。Imagine流处理器的流片结果表明
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2007
【分类号】:TP332
【共引文献】
相关期刊论文 前10条
1 林海波,李文龙,汤志忠;IA-64中软件流水的寄存器需求研究[J];计算机研究与发展;2004年01期
2 胡定磊;陈书明;刘春林;;基于超块的统一分簇与模调度[J];计算机研究与发展;2007年08期
3 陈微;王志英;肖侬;沈立;陆洪毅;;降低协同设计虚拟机启动开销的译码后指令缓存技术[J];计算机研究与发展;2011年01期
4 杨书鑫;薛丽萍;张兆庆;;迭代式全局指令调度[J];计算机科学;2004年07期
5 胡巍,周学海,瞿晓明,陆岚;可重定向编译器中的体系结构描述与代码调度[J];计算机工程;2004年16期
6 沈立,戴葵,王志英;以基本块为单位的非顺序指令预取[J];计算机工程与科学;2003年04期
7 刘e
本文编号:2617783
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2617783.html