A Novel Lightweight Instruction Scheduling Algorithm for Just-In-Time Compiler

被引:0
作者
Shi, Xiaohua [1 ]
Guo, Peng [2 ]
机构
[1] Beihang Univ, Sch Comp Sci, Beijing, Peoples R China
[2] Intel Corp, Microprocessor Technol Labs, Santa Clara, CA 95054 USA
来源
2009 WRI WORLD CONGRESS ON SOFTWARE ENGINEERING, VOL 3, PROCEEDINGS | 2009年
基金
国家高技术研究发展计划(863计划);
关键词
Instrution Scheduling; Just-In-Time Compiler;
D O I
10.1109/WCSE.2009.39
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In this paper, we present a lightweight algorithm of instruction scheduling to reduce the pipeline stalls on XScale. The algorithm is designed for and implemented in a J2ME Just-In-Time (JET) compiler. It is not based on Directed Acyclic Graphs (DAGs) or expression trees, but a novel data structure namely extended dependency matrix (EDM). The algorithm has almost linear time complexity to one order of magnitude less of the code length in practice, and linear to the code length in the worst cases. It consumes only about 1 KB constant memory space. On the benchmarks we studied, it can eliminate up to 41% data dependency stalls at runtime. The algorithm is on average 2 times faster than a list scheduling implementation, in terms of compilation time. On all benchmarks we studied, the performance is more than 90% as efficient as that obtained using more time and memory consuming algorithms on average.
引用
收藏
页码:73 / +
页数:2
相关论文
共 14 条
[1]  
Bala V., 1995, Proceedings of the 28th Annual International Symposium on Microarchitecture (Cat. No.95TB100012), P46, DOI 10.1109/MICRO.1995.476812
[2]  
*EEMBC, EEMBC JAV BENCHM
[3]  
GIBBONS PB, 1986, SIGPLAN NOTICES, V21, P11, DOI 10.1145/13310.13312
[4]  
GOODMAN JR, 1988, P ACM INT C SUP JUL, P442
[5]  
Inagaki T, 2003, INT SYM CODE GENER, P159
[6]  
KURLANDER SM, 1995, ACM T PROGR LANG SYS, P740
[7]  
LEUNG A, 2001, ACM T PROGR LANG SYS, P73
[8]  
MUCHNICK SS, 1997, ADV COMPILER DESIGN, P531
[9]  
PALEM KV, 1993, ACM T PROGR LANG SYS, P632
[10]  
PROEBSTING TA, 1991, P ACM SIGPLAN 91 C P, P256