29.01.2015 Views

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

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.

Chapter 31<br />

GENERALIZED DATA TRANSFORMATIONS<br />

V. Delaluz 1 , I. Kadayif 1 , M. Kan<strong>de</strong>mir 1 and U. Sezer 2<br />

1 CSE Department, The Pennsylvania State University, University Park, PA 16802, USA;<br />

2 ECE Department, University of Wisconsin, Madison, WI 53706, USA;<br />

E-mail: {<strong>de</strong>laluzp,kadayif,kan<strong>de</strong>mir}@cse.psu.edu, sezer@ece.wisc.edu<br />

Abstract. We present a compiler-based data trans<strong>for</strong>mation strategy, called the “generalized<br />

data trans<strong>for</strong>mations,” <strong>for</strong> reducing inter-array conflict misses in embed<strong>de</strong>d applications. We<br />

present the theory behind the generalized data trans<strong>for</strong>mations and discuss how they can be integrated<br />

with compiler-based loop trans<strong>for</strong>mations. Our experimental results <strong>de</strong>monstrate that the<br />

generalized data trans<strong>for</strong>mations are very effective in improving data cache behavior of<br />

embed<strong>de</strong>d applications.<br />

Key words: embed<strong>de</strong>d applications, data trans<strong>for</strong>mations, cache locality<br />

1. INTRODUCTION<br />

In many array-intensive embed<strong>de</strong>d applications, conflict misses can constitute<br />

a significant portion of total data cache misses. To illustrate this, we<br />

give in Figure 31-1, <strong>for</strong> an 8 KB direct-mapped data cache, the breakdown<br />

of cache misses into conflict misses and other (capacity plus cold) misses <strong>for</strong><br />

seven embed<strong>de</strong>d applications from image and vi<strong>de</strong>o processing. 1 We see that,<br />

on the average, conflict misses consist of 42.2% of total cache misses. In fact,<br />

in two applications (Vcap and Face), conflict misses constitute more than 50%<br />

421<br />

A Jerraya et al. (eds.), <strong>Embed<strong>de</strong>d</strong> <strong>Software</strong> <strong>for</strong> SOC, 421–434, 2003.<br />

© 2003 Kluwer Aca<strong>de</strong>mic Publishers. Printed in the Netherlands.

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

Saved successfully!

Ooh no, something went wrong!