21.01.2013 Views

Lecture Notes in Computer Science 4917

Lecture Notes in Computer Science 4917

Lecture Notes in Computer Science 4917

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

COFFEE: COmpiler Framework for Energy-Aware<br />

Exploration<br />

Praveen Raghavan 1,2 , Andy Lambrechts 1,2 ,JavedAbsar 1,2,3 , Murali Jayapala 1 ,<br />

Francky Catthoor 1,2 , and Diederik Verkest 1,2,4<br />

1 IMEC vzw, Heverlee, Belgium<br />

{ragha,lambreca,absar,jayapala,catthoor,verkest}@imec.be<br />

2 ESAT, KULeuven, Leuven, Belgium<br />

3 ST Microelectronics, S<strong>in</strong>gapore<br />

4 Dept. of Electrical Eng<strong>in</strong>eer<strong>in</strong>g, VUB, Brussels, Belgium<br />

Abstract. Modern mobile devices need to be extremely energy efficient. Due to<br />

the grow<strong>in</strong>g complexity of these devices, energy aware design exploration has<br />

become <strong>in</strong>creas<strong>in</strong>gly important. Current exploration tools often do not support<br />

energy estimation, or require the design to be very detailed before the estimate<br />

is possible. It is important to get early feedback on both performance and energy<br />

consumption dur<strong>in</strong>g all phases of the design and at higher abstraction levels. This<br />

paper presents a unified optimization and exploration framework, from source<br />

level transformation to processor architecture design. The proposed retargetable<br />

compiler and simulator framework can map applications to a range of processors<br />

and memory configurations, simulate and report detailed performance and<br />

energy estimates. An accurate energy model<strong>in</strong>g approach is <strong>in</strong>troduced, which<br />

can estimate the energy consumption of processor and memories at a component<br />

level, which can help to guide the design process. Fast energy-aware architecture<br />

exploration is illustrated us<strong>in</strong>g an example processor. The flow is demonstrated<br />

us<strong>in</strong>g a representative wireless benchmark on two state of the art processors and<br />

on a processor with advanced low power extensions for memories. The framework<br />

also supports exploration of various novel low power extensions and their<br />

comb<strong>in</strong>ations. We show that a unified framework enables fast feedback on the<br />

effect of source level transformations of the application code on the f<strong>in</strong>al cycle<br />

count and energy consumption.<br />

1 Introduction and Motivation<br />

Modern consumers demand portable devices that provide functionality comparable to<br />

that of their non-mobile counterparts, but still hav<strong>in</strong>g a long battery life. In order to<br />

achieve these ambitious goals, designers need to optimize all parts of these systems. At<br />

the same time an efficient mapp<strong>in</strong>g of the application code onto the platform is key to<br />

achieve a high energy efficiency. A mapp<strong>in</strong>g can be considered to be efficient if it is<br />

us<strong>in</strong>g the available hardware to its full potential.<br />

Currently energy estimation is often only performed at the f<strong>in</strong>al stage of the design,<br />

when the hardware is completely fixed and gate level simulations are possible.<br />

This approach restricts extensive energy driven architecture exploration, tak<strong>in</strong>g <strong>in</strong>to account<br />

the impact of the compiler and possible transformations on the source code. When<br />

P. Stenström et al. (Eds.): HiPEAC 2008, LNCS <strong>4917</strong>, pp. 193–208, 2008.<br />

c○ Spr<strong>in</strong>ger-Verlag Berl<strong>in</strong> Heidelberg 2008

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!