DocumentCode
2534970
Title
Improving region selection in dynamic optimization systems
Author
Hiniker, David ; Hazelwood, Kim ; Smith, Michael D.
Author_Institution
Microsoft Corp.
fYear
2005
fDate
16-16 Nov. 2005
Lastpage
154
Abstract
The performance of a dynamic optimization system depends heavily on the code it selects to optimize. Many current systems follow the design of HP Dynamo and select a single interprocedural path, or trace, as the unit of code optimization and code caching. Though this approach to region selection has worked well in practice, we show that it is possible to adapt this basic approach to produce regions with greater locality, less needless code duplication, and fewer profiling counters. In particular, we propose two new region-selection algorithms and evaluate them against Dynamo´s selection mechanism, next-executing tail (NET). Our first algorithm, last-executed iteration (LEI), identifies cyclic paths of execution better than NET, improving locality of execution while reducing the size of the code cache. Our second algorithm allows overlapping traces of similar execution frequency to be combined into a single large region. This second technique can be applied to both NET and LEI, and we find that it significantly improves metrics of locality and memory overhead for each
Keywords
cache storage; optimising compilers; program diagnostics; HP Dynamo; code caching; code optimization; dynamic optimization systems; last-executed iteration; next-executing tail; selection mechanism; Counting circuits; Design methodology; Design optimization; Frequency; Magnetohydrodynamic power generation; Optimizing compilers; Program processors; Runtime; Tail; Virtual machining;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 2005. MICRO-38. Proceedings. 38th Annual IEEE/ACM International Symposium on
Conference_Location
Barcelona
Print_ISBN
0-7695-2440-0
Type
conf
DOI
10.1109/MICRO.2005.22
Filename
1540955
Link To Document