A Multidimensional Software Cache for Scratchpad-Based Systems

  • Authors:
  • Arnaldo Azevedo;Ben Juurlink

  • Affiliations:
  • Delft University of Technology, The Netherlands;Technische Universität Berlin, Germany

  • Venue:
  • International Journal of Embedded and Real-Time Communication Systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

In many kernels of multimedia applications, the working set is predictable, making it possible to schedule the data transfers before the computation. Many other kernels, however, process data that is known just before it is needed or have working sets that do not fit in the scratchpad memory. Furthermore, multimedia kernels often access two or higher dimensional data structures and conventional software caches have difficulties to exploit the data locality exhibited by these kernels. For such kernels, the authors present a Multidimensional Software Cache MDSC, which stores 1-4 dimensional blocks to mimic in cache the organization of the data structure. Furthermore, it indexes the cache using the matrix indices rather than linear memory addresses. MDSC also makes use of the lower overhead of Direct Memory Access DMA list transfers and allows exploiting known data access patterns to reduce the number of accesses to the cache. The MDSC is evaluated using GLCM, providing an 8% performance improvement compared to the IBM software cache. For MC, several optimizations are presented that reduce the number of accesses to the MDSC.