MLP-aware dynamic cache partitioning

  • Authors:
  • Miquel Moreto;Francisco J. Cazorla;Alex Ramirez;Mateo Valero

  • Affiliations:
  • Universitat Politècnica de Catalunya, DAC, Barcelona, Spain and HiPEAC European Network of Excellence;Barcelona Supercomputing Center - Centro Nacional de Supercomputación, Spain;Universitat Politècnica de Catalunya, DAC, Barcelona, Spain and HiPEAC European Network of Excellence and Barcelona Supercomputing Center - Centro Nacional de Supercomputación, Spain;Universitat Politècnica de Catalunya, DAC, Barcelona, Spain and HiPEAC European Network of Excellence and Barcelona Supercomputing Center - Centro Nacional de Supercomputación, Spain

  • Venue:
  • HiPEAC'08 Proceedings of the 3rd international conference on High performance embedded architectures and compilers
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Dynamic partitioning of shared caches has been proposed to improve performance of traditional eviction policies in modern multithreaded architectures. All existing Dynamic Cache Partitioning (DCP) algorithms work on the number of misses caused by each thread and treat all misses equally. However, it has been shown that cache misses cause different impact in performance depending on the distribution of the Memory Level Parallelism (MLP) of the application L2 misses: clustered misses share their miss penalty as they can be served in parallel, while isolated misses have a greater impact as the memory latency is not shared with other misses. We take this fact into account and propose a new DCP algorithm that considers misses differently depending on their influence in throughput. Our proposal obtains improvements over traditional traditional eviction policies up to 63.9% (10.6% on average) and it also outperforms previous DCP proposals by up to 15.4% (4.1% on average) in a four-core architecture. Finally, we give a practical implementation with a hardware cost under 1% of the total L2 cache size.