国防科技大学自主研制的高性能加速器采用中央处理器(CPU)+通用数字信号处理器(GPDSP)的片上异构融合架构,使用超长指令集(VLIW)+单指令多数据流(SIMD)的向量化结构的GPDSP是峰值性能主要支撑的加速核。主流编译器在密集的数据计算指令...国防科技大学自主研制的高性能加速器采用中央处理器(CPU)+通用数字信号处理器(GPDSP)的片上异构融合架构,使用超长指令集(VLIW)+单指令多数据流(SIMD)的向量化结构的GPDSP是峰值性能主要支撑的加速核。主流编译器在密集的数据计算指令排布、为指令静态分配硬件执行单元、GPDSP特有的向量指令等方面不能很好地支持高性能加速器。基于低级虚拟器(LLVM)编译框架,在前寄存器分配调度阶段,结合峰值寄存器压力感知方法(PERP)、蚁群优化(ACO)算法与GPDSP结构特点,优化代价模型,设计支持寄存器压力感知的指令调度模块;在后寄存器分配阶段提出支持静态功能单元分配的指令调度策略,通过冲突检测机制保证功能单元分配的正确性,为指令并行执行提供软件基础;在后端封装一系列丰富且规整的向量指令接口,实现对GPDSP向量指令的支持。实验结果表明,所提出的LLVM编译架构优化方法从功能和性能上实现了对GPDSP的良好支撑,GCC testsuite测试整体性能平均加速比为4.539,SPEC CPU 2017浮点测试整体性能平均加速比为4.49,SPEC CPU 2017整型测试整体性能平均加速比为3.24,使用向量接口的向量程序实现了平均97.1%的性能提升率。展开更多
JAPS-Ⅱ(Java automatic parallelizing system version 2)是一个Java源代码重构编译器,用来发现和实现串行Java程序中对象内和对象间的并行性.其目标体系结构为基于工作站网络环境的分布式存储器计算机系统.介绍了JAPS-Ⅱ的体系结构...JAPS-Ⅱ(Java automatic parallelizing system version 2)是一个Java源代码重构编译器,用来发现和实现串行Java程序中对象内和对象间的并行性.其目标体系结构为基于工作站网络环境的分布式存储器计算机系统.介绍了JAPS-Ⅱ的体系结构和实现JAPS-Ⅱ的关键技术,包括用于对象并行性分析的数据流分析技术、提高对象并行性和减少运行开销的优化技术以及类重构和代码生成技术.测试结果表明,JAPS-Ⅱ能够有效地发现循环中和对象内、对象间的并行性,获得加速比.这种技术也可应用于其他面向对象语言的并行化.展开更多
文摘国防科技大学自主研制的高性能加速器采用中央处理器(CPU)+通用数字信号处理器(GPDSP)的片上异构融合架构,使用超长指令集(VLIW)+单指令多数据流(SIMD)的向量化结构的GPDSP是峰值性能主要支撑的加速核。主流编译器在密集的数据计算指令排布、为指令静态分配硬件执行单元、GPDSP特有的向量指令等方面不能很好地支持高性能加速器。基于低级虚拟器(LLVM)编译框架,在前寄存器分配调度阶段,结合峰值寄存器压力感知方法(PERP)、蚁群优化(ACO)算法与GPDSP结构特点,优化代价模型,设计支持寄存器压力感知的指令调度模块;在后寄存器分配阶段提出支持静态功能单元分配的指令调度策略,通过冲突检测机制保证功能单元分配的正确性,为指令并行执行提供软件基础;在后端封装一系列丰富且规整的向量指令接口,实现对GPDSP向量指令的支持。实验结果表明,所提出的LLVM编译架构优化方法从功能和性能上实现了对GPDSP的良好支撑,GCC testsuite测试整体性能平均加速比为4.539,SPEC CPU 2017浮点测试整体性能平均加速比为4.49,SPEC CPU 2017整型测试整体性能平均加速比为3.24,使用向量接口的向量程序实现了平均97.1%的性能提升率。
文摘JAPS-Ⅱ(Java automatic parallelizing system version 2)是一个Java源代码重构编译器,用来发现和实现串行Java程序中对象内和对象间的并行性.其目标体系结构为基于工作站网络环境的分布式存储器计算机系统.介绍了JAPS-Ⅱ的体系结构和实现JAPS-Ⅱ的关键技术,包括用于对象并行性分析的数据流分析技术、提高对象并行性和减少运行开销的优化技术以及类重构和代码生成技术.测试结果表明,JAPS-Ⅱ能够有效地发现循环中和对象内、对象间的并行性,获得加速比.这种技术也可应用于其他面向对象语言的并行化.