• DocumentCode
    695231
  • Title

    Flask coherence: A morphable hybrid coherence protocol to balance energy, performance and scalability

  • Author

    Menezo, Lucia G. ; Puente, Valentin ; Gregorio, Jose-Angel

  • Author_Institution
    Univ. of Cantabria, Santander, Spain
  • fYear
    2015
  • fDate
    7-11 Feb. 2015
  • Firstpage
    198
  • Lastpage
    209
  • Abstract
    This work proposes a mechanism to hybridize the benefits of snoop-based and directory-based coherence protocols in a single construct. A non-inclusive sparse-directory is used to minimize energy requirements and guarantee scalability. Directory entries will be used only by the most actively shared blocks. To preserve system correctness token counting is used. Additionally, each directory entry is augmented with a counting bloom filter that suppresses most unnecessary on-chip and off-chip requests. Combining all these elements, the proposal, with a low storage overhead, is able to suppress most traffic inherent to snoop-based protocols. With a directory capable of tracking just 40% of the blocks kept in private caches, this coherence protocol is able to match the performance and energy of a sparse-directory capable of tracking 160% of the blocks. Using the same configuration, it can outperform the performance and on-chip memory hierarchy energy of a broadcast-based coherence protocol such as Token by 10% and 20% respectively. To achieve these results, the proposal uses an improved counting bloom filter, which provides twice the space efficiency of a conventional one with similar implementation cost. This filter also enables the coherence controller storage used to track shared blocks and filter private block misses to change dynamically according to the data-sharing properties of the application. With only 5 % of tracked private cache entries, the average performance degradation of this construct is less than 8% compared to a 160% over-provisioned sparse-directory.
  • Keywords
    cache storage; data structures; microprocessor chips; multiprocessing systems; broadcast-based coherence protocol; coherence controller storage; counting bloom filter; data-sharing properties; directory-based coherence protocols; energy requirements; flask coherence; morphable hybrid coherence protocol; noninclusive sparse-directory; off-chip requests; on-chip memory hierarchy energy; on-chip requests; over-provisioned sparse-directory; private block misses; private cache entries; private caches; shared blocks; snoop-based coherence protocols; storage overhead; Coherence; Filtering; Proposals; Protocols; Radiation detectors; Scalability; System-on-chip; CMPs; coherence protocol; multi-core;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Computer Architecture (HPCA), 2015 IEEE 21st International Symposium on
  • Conference_Location
    Burlingame, CA
  • Type

    conf

  • DOI
    10.1109/HPCA.2015.7056033
  • Filename
    7056033