• DocumentCode
    3460805
  • Title

    Coordinated Bank and Cache Coloring for Temporal Protection of Memory Accesses

  • Author

    Suzuki, Nobuhiro ; Hyoseung Kim ; de Niz, Dionisio ; Andersson, Bjorn ; Wrage, Lutz ; Klein, M. ; Rajkumar, R.

  • Author_Institution
    NEC Corp., Japan
  • fYear
    2013
  • fDate
    3-5 Dec. 2013
  • Firstpage
    685
  • Lastpage
    692
  • Abstract
    In commercial-off-the-shelf (COTS) multi-core systems, the execution times of tasks become hard to predict because of contention on shared resources in the memory hierarchy. In particular, a task running in one processor core can delay the execution of another task running in another processor core. This is due to the fact that tasks can access data in the same cache set shared among processor cores or in the same memory bank in the DRAM memory (or both). Such cache and bank interference effects have motivated the need to create isolation mechanisms for resources accessed by more than one task. One popular isolation mechanism is cache coloring that divides the cache into multiple partitions. With cache coloring, each task can be assigned exclusive cache partitions, thereby preventing cache interference from other tasks. Similarly, bank coloring allows assigning exclusive bank partitions to tasks. While cache coloring and some bank coloring mechanisms have been studied separately, interactions between the two schemes have not been studied. Specifically, while memory accesses to two different bank colors do not interfere with each other at the bank level, they may interact at the cache level. Similarly, two different cache colors avoid cache interference but may not prevent bank interference. Therefore it is necessary to coordinate cache and bank coloring approaches. In this paper, we present a coordinated cache and bank coloring scheme that is designed to prevent cache and bank interference simultaneously. We also developed color allocation algorithms for configuring a virtual memory system to support our scheme which has been implemented in the Linux kernel. In our experiments, we observed that the execution time can increase by 60% due to inter-task interference when we use only cache coloring. Our coordinated approach can reduce this figure down to 12% (an 80% reduction).
  • Keywords
    DRAM chips; Linux; cache storage; operating system kernels; shared memory systems; virtual storage; COTS multicore systems; DRAM memory; Linux kernel; bank interference effects; cache interference effects; cache level; cache partition; color allocation algorithms; commercial-off-the-shelf multicore system; coordinated cache-bank coloring scheme; intertask interference; memory accesses; shared cache set; virtual memory system; Bismuth; Color; Image color analysis; Indexes; Interference; Multicore processing; Resource management; cache; memory banks; multicore; page coloring; real-time systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computational Science and Engineering (CSE), 2013 IEEE 16th International Conference on
  • Conference_Location
    Sydney, NSW
  • Type

    conf

  • DOI
    10.1109/CSE.2013.106
  • Filename
    6755286