Facilitating compiler optimizations through the dynamic mapping of alternate register structures

Chris Zimmer, Stephen Roderick Hines, Prasad Kulkarni, Gary Tyson, David Whalley

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Aggressive compiler optimizations such as software pipelining and loop invariant code motion can significantly improve application performance, but these transformations often require the use of several additional registers to hold data values across one or more loop iterations. Compilers that target embedded systems may often have difficulty exploiting these optimizations since many embedded systems typically do not have as many general purpose registers available. Alternate register structures like register queues can be used to facilitate the application of these optimizations due to common reference patterns. In this paper, we propose a microarchitectural technique that permits these alternate register structures to be efficiently mapped into a given processor architecture and automatically exploited by an optimizing compiler. We show that this minimally invasive technique can be used to facilitate the application of software pipelining and loop invariant code motion for a variety of embedded benchmarks. This leads to performance improvements for the embedded processor, as well as new opportunities for further aggressive optimization of embedded systems software due to a significant decrease in the register pressure of tight loops.

Original languageEnglish
Title of host publicationCASES'07
Subtitle of host publicationProceedings of the 2007 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems
Pages165-169
Number of pages5
DOIs
StatePublished - 2007
Externally publishedYes
EventCASES'07: 2007 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems - Salzburg, Austria
Duration: Sep 30 2007Oct 3 2007

Publication series

NameCASES'07: Proceedings of the 2007 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems

Conference

ConferenceCASES'07: 2007 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems
Country/TerritoryAustria
CitySalzburg
Period09/30/0710/3/07

Keywords

  • Compiler optimizations
  • Register queues
  • Software pipelining

Fingerprint

Dive into the research topics of 'Facilitating compiler optimizations through the dynamic mapping of alternate register structures'. Together they form a unique fingerprint.

Cite this