Title :
Using a lookahead window in a compaction-based parallelizing compiler
Author :
T. Nakatani;K. Ebcioglu
Author_Institution :
IBM, Tokyo Res. Lab., Japan
fDate :
6/12/1905 12:00:00 AM
Abstract :
Lookahead is a common technique for high performance uniprocessor design. In general, however, hardware lookahead window is too small to exploit instruction-level parallelism at run time, while compaction-based parallelizing compilers must suffer from worst-case exponential code explosion at compile time. In this paper, the authors propose a software lookahead method, which allows inter-basic block code motions within the prespecified number of operations, called software lookahead window, on any path emanating from the currently processed instruction at compile time. By software lookahead, instruction-level parallelism can be exploited in a much greater code area than the hardware approach, but the lookahead region is still limited to a constant depth with a user-specifiable window, and thus code explosion is restricted. The proposed scheme has been implemented in the authors prototype parallelizing compiler, which can generate code for uniprocessors with multiple functional units and multiway conditional branches, such as VLIW machines, and potentially for super-scalars as well.
Keywords :
"Explosions","Hardware","Block codes","Software prototyping","VLIW","Laboratories","Magnetic heads","Prototypes","Software performance","Prefetching"
Conference_Titel :
Microprogramming and Microarchitecture. Micro 23. Proceedings of the 23rd Annual Workshop and Symposium., Workshop on
Print_ISBN :
0-8186-2124-9
DOI :
10.1109/MICRO.1990.151427