Analysis of Allocation Deviation in Multi-core Shared Cache Pseudo-partition

Allocation deviation is a commonly encountered problem in cache partition mechanism, especially pseudo partition mechanism, such as PIPP. We augment some bits to the line’s status field to store the source core Id of incoming cache requests and sample the whole cache, then quantitatively analyze allocation deviation of multi-core pseudo-partition in shared last-level-cache. And we emphasize some factors that influence allocation deviation, such as the cache quota, the contention of concurrent workingset etc. Furthermore we discuss flexible handling of allocation deviation to benefit to the whole performance according to the cache utility characteristics of the benchmarks. Through our experiments and analysis, we conclude that in pseudo-partition, allocation deviation happens frequently due to the contention and improper cache quota, and it needs to be more flexibly handled.

[1]  Jack Doweck,et al.  Inside Intel® Core microarchitecture , 2006, 2006 IEEE Hot Chips 18 Symposium (HCS).

[2]  G. Edward Suh,et al.  Dynamic Partitioning of Shared Cache Memory , 2004, The Journal of Supercomputing.

[3]  Gabriel H. Loh,et al.  PIPP: promotion/insertion pseudo-partitioning of multi-core shared caches , 2009, ISCA '09.

[4]  John Turek,et al.  Optimal Partitioning of Cache Memory , 1992, IEEE Trans. Computers.

[5]  Yale N. Patt,et al.  Utility-Based Cache Partitioning: A Low-Overhead, High-Performance, Runtime Mechanism to Partition Shared Caches , 2006, 2006 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06).

[6]  Balaram Sinharoy,et al.  POWER7: IBM's next generation server processor , 2010, 2009 IEEE Hot Chips 21 Symposium (HCS).

[7]  Francisco J. Cazorla,et al.  Adapting cache partitioning algorithms to pseudo-LRU replacement policies , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[8]  Fredrik Larsson,et al.  Simics: A Full System Simulation Platform , 2002, Computer.

[9]  Lizy Kurian John,et al.  Bank-aware Dynamic Cache Partitioning for Multicore Architectures , 2009, 2009 International Conference on Parallel Processing.

[10]  S. Kim,et al.  Fair cache sharing and partitioning in a chip multiprocessor architecture , 2004, Proceedings. 13th International Conference on Parallel Architecture and Compilation Techniques, 2004. PACT 2004..