Dynamic Partition of Shared Cache for Multi-Thread Application in Multi-Core System

Article Preview

Abstract:

In a chip-multiprocessor with a shared cache structure , the competing accesses from different applications degrade the system performance.The accesses degrade the performance and result in non-predicting executing time. Cache partitioning techniques can exclusively partition the shared cache among multiple competing applications. In this paper, the authors design the framework of Process priority-based Multithread Cache Partitioning(PP-MCP),a dynamic shared cache partitioning mechanism to improve the performance of multi-threaded multi-programmed workloads. The framework includes a miss rate monitor , called Application-oriented Miss Rate Monitor (AMRM) , which dynamically collect s miss rate information of multiple multi-threaded applications on different cache partitions , and process priority-based weighted cache partitioning algorithm ,which extends traditional miss rate oriented cache partition algorithms.The algorithm allocates Cache in sequence of the value of the process priority and it ensures that the highest priority process will get enough Cache space; and the applications with more threads tend to get more shared cache in order to improve t he overall system performance. Experiments show that PP-MCP has better IPC throughput and weighted speedup. Specifically , for multi-threaded multi-programmed scientific computing workloads , PP-MCP-1 improves throughput by up to 20% and on average 10 % over PP-MCP-0.

You might also be interested in these eBooks

Info:

Periodical:

Key Engineering Materials (Volumes 439-440)

Pages:

1587-1594

Citation:

Online since:

June 2010

Authors:

Export:

Price:

Permissions CCC:

Permissions PLS:

Сopyright:

© 2010 Trans Tech Publications Ltd. All Rights Reserved

Share:

Citation:

[1] Stone H S, Turek J, Wolf J L. Optimal Partitioning of Cache Memory[J]. IEEE Trans. Comput. 1992, 41(9): 1054-1068.

DOI: 10.1109/12.165388

Google Scholar

[2] Suh G E, Devadas S, Rudolph L. A New Memory Monitoring Scheme for Memory-Aware Scheduling and Partitioning[C]. IEEE Computer Society, (2002).

DOI: 10.1109/hpca.2002.995703

Google Scholar

[3] Suh G E, Rudolph L, Devadas S. Dynamic Partitioning of Shared Cache Memory[J]. J. Supercomput. 2004, 28(1): 7-26.

DOI: 10.1023/b:supe.0000014800.27383.8f

Google Scholar

[4] Dybdahl H, Stenstr P, Natvig L. A Cache-Partitioning Aware Replacement Policy for Chip Multiprocessors[J]. High Performance Computing - HiPC 2006. 2006: 22-34.

DOI: 10.1007/11945918_9

Google Scholar

[5] Guan gS, Xun junY, Guan ghuiL, etal. IPC-based cache partitioning: an IPC-orientedd ynamicsharedcache partitioning mechanism[C]/International Conferenceon Convergenceand Hybrid Information Technology-ICHIT 2008. Korea, Busan, (2008).

DOI: 10.1109/ichit.2008.164

Google Scholar

[6] Qureshi M K, Patt Y N. Utility-based Cache partitioning : A Low-overhead , high-performance , runtime mechanism to partition shared caches/ / Proceedings of t he 39t h Annual IEEE/ACM International Symposium on Microarchitecture. Antibes Juan2les2Pins , France , 2006 : 4232432.

DOI: 10.1109/micro.2006.49

Google Scholar

[7] GuangS, Xun junY. A Weighted Dynamic Shared Cache Partitioning Mechanism for Multi-Threaded Multi-Programmed Workloads[J]. Chinese Journal OF Computers . 2008. 31(11): 1938-(1946).

DOI: 10.3724/sp.j.1016.2008.01938

Google Scholar

[8] Qureshi M K, Lynch D N, Mutlu O, et al. A Case for MLP-Aware Cache Replacement[J]. SIGARCH Comput. Archit. News. 2006, 34(2): 167-178.

DOI: 10.1145/1150019.1136501

Google Scholar

[9] Magnusson P S , Christensson M , Eskilson J et al . Simics : A full system simulation platform. Computer , 2002 , 35 ( 2) : 50258.

DOI: 10.1109/2.982916

Google Scholar

[10] Jaleel A, Jaleel A, Mattina M, et al. Last level cache(LLC) performance of data mining workloads on a CMP - a case study of parallel bioinformatics workloads[C]. High-Performance Computer Architecture, 2006. 88-98.

DOI: 10.1109/hpca.2006.1598115

Google Scholar