• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

J4 ›› 2012, Vol. 34 ›› Issue (1): 58-63.

• 论文 • 上一篇    下一篇

基于GCC的高性能DSP Matrix向量指令集扩展

辛乃军,陈旭灿,孙海燕,阳柳,罗杰,淡孝强,王霁   

  1. (国防科学技术大学计算机学院,湖南 长沙 410073)
  • 收稿日期:2011-05-07 修回日期:2011-09-16 出版日期:2012-01-25 发布日期:2012-01-25

Extending the Vector Instruction Set for HighPerformance DSP Matrixes Based on GCC

XIN Naijun,CHEN Xucan,SUN Haiyan,YANG Liu,LUO Jie,DAN Xiaoqiang,WANG  Ji   

  1. (School of Computer Science,National University of Defense Technology,Changsha 410073,China)
  • Received:2011-05-07 Revised:2011-09-16 Online:2012-01-25 Published:2012-01-25

摘要:

自动向量化技术是编译器提高程序并行性的优化方法。随着支持SIMD结构处理器的计算平台的广泛应用,自动向量化技术也成为编译器技术研究的热点。GCC编译器是一种开源、跨平台的编译器。本文基于GCC内部自动向量化算法,结合Matrix芯片的体系结构和指令集特点,完成了Matrix向量指令集在GCC后端扩展,实现了基本的自动向量化支持。测试结果表明,扩展后的编译器能够支持Matrix向量指令集,进行基本的自动向量化,同时支持以内建函数方式开发基于Matrix的并行程序。

关键词: Autovectorization is an optimal method for the compiler to improve the parallelism of programs.With the extensive use of a computing platform supporting the SIMD architecture processor, autovectorization becomes a hot research of compiler technology. The GCC compiler is a kind of open source, crossplatform compiler. Based on the internal autovectorization algorithm and the architecture and instruction set characteristics of the Matrix chip, this paper extends the Matrix vector instruction set at GCC&rsquo, s backend and realizes the basic autovectorization support. The measured results indicate that the extended compiler can support the Matrix vector instruction set, the basic autovectorization and the development of the Matrixbased parallel programs by way of builtin functions.

Abstract:

Autovectorization is an optimal method for the compiler to improve the parallelism of programs.With the extensive use of a computing platform supporting the SIMD architecture processor, autovectorization becomes a hot research of compiler technology. The GCC compiler is a kind of open source, crossplatform compiler. Based on the internal autovectorization algorithm and the architecture and instruction set characteristics of the Matrix chip, this paper extends the Matrix vector instruction set at GCC’s backend and realizes the basic autovectorization support. The measured results indicate that the extended compiler can support the Matrix vector instruction set, the basic autovectorization and the development of the Matrixbased parallel programs by way of builtin functions.

Key words: GCC;Matrix;autovectorization