• DocumentCode
    3603062
  • Title

    Exploring Multilevel Cache Hierarchies in Application Specific MPSoCs

  • Author

    Nawinne, Isuru ; Javaid, Haris ; Ragel, Roshan ; Radhakrishnan, Swarnalatha ; Parameswaran, Sri

  • Author_Institution
    Sch. of Comput. Sci. & Eng., Univ. of New South Wales, Sydney, NSW, Australia
  • Volume
    34
  • Issue
    12
  • fYear
    2015
  • Firstpage
    1991
  • Lastpage
    2003
  • Abstract
    Multiprocessor systems make use of multilevel cache hierarchies to improve overall memory access speed. Embedded systems typically use configurable processors, where the caches in the system can be customized for a given application or a set of applications. Finding the optimal or a near-optimal set size, block size, and associativity of each of the caches in a multilevel cache hierarchy is a challenging task due to the presence of billions or even trillions of design points. This paper presents an iterative exploration method to find suitable configurations for all the caches in the hierarchy of an application specific multiprocessor system-on-chip, to improve memory access speed. We propose an algorithm and combine it with the use of specialized hardware for parallel cache simulation to enable multiple back-and-forth iterations through the cache levels. In every iteration, our algorithm explores selected portions of the entire design space to quickly converge upon the final design point. We demonstrate our methodology on two- and three-level cache hierarchies with private and shared caches in a quad-core system, respectively, consisting of 5.4 billion and 10.4 trillion design points. Our method was able to find design points with up to 18.9% lower average memory access time while reducing total cache size by up to 74.15%, compared to a state-of-the-art noniterative method. The number of design points explored was 4× higher in our method, which is still a mere 3.6 × 10-5% of the entire design space, and took 6.08 h.
  • Keywords
    cache storage; iterative methods; system-on-chip; application specific MPSoC; configurable processors; design points; design space; embedded systems; iterative exploration method; multilevel cache hierarchies; multiple back-and-forth iterations; multiprocessor system-on-chip; noniterative method; parallel cache simulation; private caches; quad-core system; shared caches; three-level cache hierarchies; two-level cache hierarchies; Algorithm design and analysis; Hardware; Integrated circuit modeling; Mathematical model; Optimization; Program processors; Space exploration; Cache hierarchy; MPSoC; design space exploration; hardware assisted simulation; multiprocessor system-on-chip (MPSoC);
  • fLanguage
    English
  • Journal_Title
    Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0278-0070
  • Type

    jour

  • DOI
    10.1109/TCAD.2015.2445736
  • Filename
    7123612