Generalized data transformations for enhancing cache behavior

De La Luz V., Kandemir M., Kadayif I., Sezer U.

Design, Automation and Test in Europe Conference and Exhibition (DATE 03), Munich, Germany, 3 - 07 March 2003, pp.906-911 identifier identifier

  • Publication Type: Conference Paper / Full Text
  • Volume:
  • Doi Number: 10.1109/date.2003.1253721
  • City: Munich
  • Country: Germany
  • Page Numbers: pp.906-911
  • Çanakkale Onsekiz Mart University Affiliated: No


The performance gap between processors and off-chip memories has widened in the last years and is expected to widen even more. Today, it is widely accepted that caches improve significantly the performance of programs, since most of the programs exhibit temporal and/or spatial locality in their memory reference patterns. However conflict misses can be a major obstacle preventing an application from utilizing the data cache effectively. While array padding can reduce conflict misses it can also increase the data space requirements significantly. In this paper we present a compiler-based data transformation strategy, called the "generalized data transformations," for reducing inter-array conflict misses in embedded applications. We present the theory behind the generalized data transformations and discuss how they can be integrated with compiler-based loop transformations. Our experimental results demonstrate that the generalized data transformations are very effective in improving data cache behavior of embedded applications.