计算机科学 ›› 2010, Vol. 37 ›› Issue (5): 130-133.

• 软件工程 • 上一篇    下一篇

基于谓词代码的编译优化技术研究

田祖伟,孙光   

  1. (湖南第一师范学院信息科学与工程系 长沙410205);(湖南财政经济学院信息管理系 长沙410205)
  • 出版日期:2018-12-01 发布日期:2018-12-01
  • 基金资助:
    本文受湖南省教育厅优秀青年基金项目(08B014),湖南省科技厅科技计划项目(2008GK3134)资助。

Research of Compiler Optimization Technology Based on Predicated Code

TIAN Zu-wei,SUN Guang   

  • Online:2018-12-01 Published:2018-12-01

摘要: 程序中大量分支指令的存在,严重制约了体系结构和编译器开发并行性的能力。有效发掘指令级并行性的一个主要挑战是要克服分支指令带来的限制。利用谓词执行可有效地删除分支,将分支指令转换为谓词代码,从而扩大了指令调度的范围并且删除了分支误测带来的性能损失。阐述了基于谓词代码的指令调度、软件流水、寄存器分配、指令归并等编译优化技术。设计并实现了一个基于谓词代码的指令调度算法。实验表明,对谓词代码进行编译优化,能有效提高指令并行度,缩短代码执行时间,提高程序性能。

关键词: 编译优化,指令级并行,谓词代码,指令调度

Abstract: A lot of branch instructions in program severely restrict the exploiting of parallelism of the architecture and the compiler. One of the major challenges to exploit effectively instruction level parallelism is overcoming the limitations imposed by branch instructions. Predicated execution can effectively delete branch instructions, and convert branch instructions to predicated code, which enlarges instruction scheduling scope and removes branch misprediction penalties.hhis paper described compiler optimization technology based on predicated code, such as instruction scheduling, software pipeline, register allocation, instruction merging. An instruction scheduling algorithm based on predicated code was designed and implemented. The experimental results show that compiler optimization based on predicated code can improve instruction parallelism degree, shorten code execution time effectively, and improve greatly the program' s performance.

Key words: Compiler optimization, Instruction level parallelism, Predicated code, Instruction scheduling

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!