DocumentCode
2746060
Title
VHC: quickly building an optimizer for complex embedded architectures
Author
Dupré, Michael ; Drach, Nathalie ; Temam, Olivier
Author_Institution
LRI, Paris South Univ., France
fYear
2004
fDate
20-24 March 2004
Firstpage
53
Lastpage
64
Abstract
To meet the high demand for powerful embedded processors, VLIW architectures are increasingly complex (e.g., multiple clusters), and moreover, they now run increasingly sophisticated control-intensive applications. As a result, developing architecture-specific compiler optimizations is becoming both increasingly critical and complex, while time-to-market constraints remain very tight. We present a novel program optimization approach, called the virtual hardware compiler (VHC), that can perform as well as static compiler optimizations, but which requires far less compiler development effort, even for complex VLIW architectures and complex target applications. The principle is to augment the target processor simulator with superscalar-like features, observe how the target program is dynamically optimized during execution, and deduce an optimized binary for the static VLIW architecture. Developing an architecture-specific optimizer then amounts to modifying the processor simulator which is very fast compared to adapting static compiler optimizations to an architecture. We also show that a VHC-optimized binary trained on a number of data sets performs as well as a statically-optimized binary on other test data sets. The only drawback of the approach is a largely increased compilation time, which is often acceptable for embedded applications and devices. Using the Texas Instruments C62 VLIW processor and the associated compiler, we experimentally show that this approach performs as well as static compiler optimizations for a much lower research and development effort. Using a single-core C60 and a dual-core clustered C62 processors, we also show that the same approach can be used for efficiently retargeting binary programs within a family of processors.
Keywords
embedded systems; instruction sets; optimising compilers; parallel architectures; Texas Instruments C62 VLIW processor; VLIW architectures; architecture-specific compiler optimizations; binary programs; dual-core clustered C62 processors; embedded processor architectures; processor simulator; program optimization; single-core C60 processor; static compiler optimizations; superscalar-like features; virtual hardware compiler; Buildings; Constraint optimization; Hardware; Instruments; Optimizing compilers; Performance evaluation; Program processors; Testing; Time to market; VLIW;
fLanguage
English
Publisher
ieee
Conference_Titel
Code Generation and Optimization, 2004. CGO 2004. International Symposium on
Print_ISBN
0-7695-2102-9
Type
conf
DOI
10.1109/CGO.2004.1281663
Filename
1281663
Link To Document