Abstract
Global source code transformations, such as Global Loop Transformations (GLT), are usually performed on a Geometrical Model (GM) which is very effective in dealing with complex transformations. However, this model imposes strict limitations on the input code, and it is not capable to deal with data dependent conditions. The technique presented in this paper can deal with data dependent conditions at any loop level. At the outermost loop level hot code paths are grouped together into limited number of clusters called scenarios to maximise the GLT benefit for a given code size growth. On the middle and innermost loop level we manipulate the abstract syntax tree to move the data dependent conditions out of the GLT optimisation scope. Results show up to 45.8% improvement compared to state-of-the-art.
Original language | English |
---|---|
Pages (from-to) | 27-39 |
Number of pages | 13 |
Journal | International Journal of Embedded Systems |
Volume | 4 |
Issue number | 1 |
DOIs | |
Publication status | Published - 21 Jul 2009 |
Keywords
- Condition moving
- Data dependent conditions
- Function encapsulation
- Global loop transformations
- GLT
- High-level transformations
- Hot code paths grouping
- Selective code duplication
- Ssource code preprocessing