计算机科学
計算機科學
계산궤과학
COMPUTER SCIENCE
2010年
5期
130-133,138
,共5页
编译优化%指令级并行%谓词代码%指令调度
編譯優化%指令級併行%謂詞代碼%指令調度
편역우화%지령급병행%위사대마%지령조도
Compiler optimization%Instruction level parallelism%Predicated code%Instruction scheduling
程序中大量分支指令的存在,严重制约了体系结构和编译器开发并行性的能力.有效发掘指令级并行性的一个主要挑战是要克服分支指令带来的限制.利用谓词执行可有效地删除分支,将分支指令转换为谓词代码,从而扩大了指令调度的范围并且删除了分支误测带来的性能损失.阐述了基于谓词代码的指令调度、软件流水、寄存器分配、指令归并等编译优化技术.设计并实现了一个基于谓词代码的指令调度算法.实验表明,对谓词代码进行编译优化,能有效提高指令并行度,缩短代码执行时间,提高程序性能.
程序中大量分支指令的存在,嚴重製約瞭體繫結構和編譯器開髮併行性的能力.有效髮掘指令級併行性的一箇主要挑戰是要剋服分支指令帶來的限製.利用謂詞執行可有效地刪除分支,將分支指令轉換為謂詞代碼,從而擴大瞭指令調度的範圍併且刪除瞭分支誤測帶來的性能損失.闡述瞭基于謂詞代碼的指令調度、軟件流水、寄存器分配、指令歸併等編譯優化技術.設計併實現瞭一箇基于謂詞代碼的指令調度算法.實驗錶明,對謂詞代碼進行編譯優化,能有效提高指令併行度,縮短代碼執行時間,提高程序性能.
정서중대량분지지령적존재,엄중제약료체계결구화편역기개발병행성적능력.유효발굴지령급병행성적일개주요도전시요극복분지지령대래적한제.이용위사집행가유효지산제분지,장분지지령전환위위사대마,종이확대료지령조도적범위병차산제료분지오측대래적성능손실.천술료기우위사대마적지령조도、연건류수、기존기분배、지령귀병등편역우화기술.설계병실현료일개기우위사대마적지령조도산법.실험표명,대위사대마진행편역우화,능유효제고지령병행도,축단대마집행시간,제고정서성능.
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.This 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.