In the past five years, a body of research has emerged that explores adaptive behavior in optimizing compilers. This project explores the potential impact that adaptive control of single optimizations may have on the performance of embedded applications. The project focuses on two specific optimizations: inline substitution and register allocation. Inline substitution has the potential to improve running time and shorten critical paths, but can also increase static code size, a negative in a memory-constrained environment. Register allocation is a critical step in all modern compilers, one that can increase both code size and running time. Preliminary experiments with inline substitution suggest that significant improvements are possible with limited impact on resource needs, but only with application-specific adaptive control. This project is extending that work to address constraints that arise in embedded systems and to measure the potential improvements on embedded applications. With register allocation, the project is developing a parameterization of the problem that is amenable to adaptive control. Experiments will measure the impact that adaptive control of these parameters can have on performance characteristics of embedded applications. This one-year study should establish the potential that adaptive techniques have to improve code quality for embedded applications.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Type
Standard Grant (Standard)
Application #
0615180
Program Officer
D. Helen Gill
Project Start
Project End
Budget Start
2006-08-01
Budget End
2008-07-31
Support Year
Fiscal Year
2006
Total Cost
$130,000
Indirect Cost
Name
Rice University
Department
Type
DUNS #
City
Houston
State
TX
Country
United States
Zip Code
77005