ACM Home Page
Please provide us with feedback. Feedback
Advanced conservative and optimistic register coalescing
Full text PdfPdf (345 KB)
Source
International Conference on Compilers, Architecture and Synthesis for Embedded Systems archive
Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems table of contents
Atlanta, GA, USA
SESSION: Compilers table of contents
Pages 147-156  
Year of Publication: 2008
ISBN:978-1-60558-469-0
Authors
Florent Bouchez  ENS-Lyon, Lyon, France
Alain Darte  CNRS, Lyon, France
Fabrice Rastello  Inria, Lyon, France
Sponsors
SIGDA: ACM Special Interest Group on Design Automation
ACM: Association for Computing Machinery
SIGBED: ACM Special Interest Group on Embedded Systems
SIGMICRO: ACM Special Interest Group on Microarchitectural Research and Processing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 8,   Downloads (12 Months): 60,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1450095.1450119
What is a DOI?

ABSTRACT

In the context of embedded systems, it is crucial to minimize memory transfers to reduce latency and power consumption. Stack access due to variable spilling during register allocation can be significantly reduced using aggressive live-range splitting. However, without a good (conservative) coalescing technique, the benefit of a good spilling may be lost due to the many register-to-register moves introduced. The challenge is thus to find a good trade-off between a too aggressive strategy that could make the interference graph uncolorable without more spilling, and a too conservative strategy that preserves colorability but leaves unnecessary moves. Two main approaches are "iterated register coalescing" by George and Appel and "optimistic coalescing" by Park and Moon. The first coalesces moves one by one conservatively. The second coalesces moves regardless of the colorability, then undo coalescings to reduce spilling. Focusing on greedy-k-colorable graphs---which are usually obtained after all spill decisions and, possibly, some split decisions---we show how these two approaches can be improved, optimistic coalescing with a more involved de-coalescing phase, incremental coalescing with a less pessimistic conservative technique. Unlike previous experiments, our results show that optimistic strategies do not outperform conservative ones. Our incremental conservative coalescing performs even better than our improved de-coalescing scheme and leads to about 15% improvement compared to the state-of-the-art optimistic coalescing.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
A. Appel and L. George. Coalescing challenge. http://www.cs.princeton.edu/~ appel/coalesce, 2000.
3
 
4
F. Bouchez, A. Darte, C. Guillon, and F. Rastello. Register allocation and spill complexity under SSA. Technical Report RR2005-33, LIP, ENS-Lyon, France, Aug. 2005.
 
5
F. Bouchez, A. Darte, and F. Rastello. Improvements to conservative and optimistic register coalescing. Technical Report RR2007-41, LIP, ENS-Lyon, France, Oct. 2007.
 
6
 
7
8
 
9
P. Brisk, F. Dabiri, J. Macbeth, and M. Sarrafzadeh. Polynomial time graph coloring register allocation. In 14th International Workshop on Logic and Synthesis, June 2005.
 
10
G. Chaitin, M. Auslander, A. Chandra, J. Cocke, M. Hopkins, and P. Markstein. Register allocation via coloring. Computer Languages, 6:47--57, January 1981.
11
12
 
13
 
14
D. Grund and S. Hack. A fast cutting-plane algorithm for optimal coalescing. In S. Krishnamurthi and M. Odersky, editors, Compiler Construction 2007, volume 4420 of Lecture Notes In Computer Science, pages 111--125. Springer, March 2007. Braga, Portugal.
 
15
S. Hack, D. Grund, and G. Goos. Register allocation for programs in SSA-form. In Compiler Construction 2006, volume 3923 of LNCS. Springer Verlag, 2006.
 
16
A. Leung and L. George. A new MLRISC register allocator. Technical report, New York University, 1999.
17
 
18
F. M. Q. Pereira and J. Palsberg. Register allocation via coloring of chordal graphs. In Proceedings of APLAS'05, Asian Symposium on Programming Languages and Systems, pages 315--329, Tsukuba, Japan, Nov. 2005.
 
19
 
20
21

Collaborative Colleagues:
Florent Bouchez: colleagues
Alain Darte: colleagues
Fabrice Rastello: colleagues