[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2228360.2228482acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article

Courteous cache sharing: being nice to others in capacity management

Published: 03 June 2012 Publication History

Abstract

This paper proposes a cache management scheme for multiprogrammed, multithreaded applications, with the objective of obtaining maximum performance for both individual applications and the multithreaded workload mix. In this scheme, each individual application's performance is improved by increasing the priority of its slowest thread, while the overall system performance is improved by ensuring that each individual application's performance benefit does not come at the cost of a significant degradation to other application's threads that are sharing the same cache. Averaged over six workloads, our shared cache management scheme improves the performance of the combination of applications by 18%. These improvements across applications in each mix are also fair, as indicated by average fair speedup improvements of 10% across the threads of each application (averaged over all the workloads).

References

[1]
M. Bhadauria and S. A. McKee. An approach to resource-aware co-scheduling for CMPs. In ICS'10.
[2]
J. Chang and G. S. Sohi. Cooperative cache partitioning for chip multiprocessors. In ICS'07.
[3]
M. Chaudhuri. Pseudo-LIFO: the foundation of a new family of replacement policies for last-level caches. In MICRO'09.
[4]
E. Ebrahimi, et al. Fairness via source throttling: a configurable and high-performance fairness substrate for multi-core memory systems. In ASPLOS'10.
[5]
F. Guo, et al. From chaos to QoS: case studies in CMP resource management. SIGARCH Comput. Archit. News, 35(1):21--30, 2007.
[6]
L. R. Hsu, et al. Communist, utilitarian, and capitalist cache policies on CMPs: caches as a shared resource. In PACT'06.
[7]
R. Iyer. CQoS: a framework for enabling QoS in shared caches of CMP platforms. In ICS'04.
[8]
R. Iyer, et al. QoS policies and architecture for cache/memory in CMP platforms. SIGMETRIGS Perform. Eval. Rev., 35(1):25--36, 2007.
[9]
A. Jaleel, et al. Adaptive insertion policies for managing shared caches. In PACT'08.
[10]
J. A. Kahle, et al. Introduction to the CELL multiprocessor. IBM J. Res. Dev., 49(4/5):589--604, 2005.
[11]
M. Kandemir, et al. A helper thread based dynamic cache partitioning scheme for multithreaded applications. In DAC'11.
[12]
P. Kongetira, et al. Niagara: A 32-way multithreaded sparc processor. IEEE Micro, 25(2):21--29, 2005.
[13]
P. S. Magnusson, et al. SIMICS: A full system simulation platform. Computer, 35(2):50--58, 2002.
[14]
R. Manikantan, et al. NUcache: An efficient multicore cache organization based on next-use distance. In HPCA, 2011.
[15]
C. McNairy and R. Bhatia. Montecito: A dual-core, dual-thread Itanium processor. IEEE Micro, 25(2): 10--20, 2005.
[16]
S. P. Muralidhara, M. Kandemir, and P. Raghavan. Intra-application shared cache partitioning for multithreaded applications. In PPoPP'10.
[17]
M. K. Qureshi, et al. Adaptive insertion policies for high performance caching. In ISCA '07.
[18]
M. K. Qureshi and Y. N. Patt. Utility-based cache partitioning: A low-overhead, high-performance, runtime mechanism to partition shared caches. In MICRO'06.
[19]
N. Rafique, et al. Architectural support for operating system-driven CMP cache management. In PACT'06.
[20]
D. Sanchez, et al. Flexible architectural support for fine-grain scheduling. In ASPLOS'10.
[21]
S. Srikantaiah, et al. SHARP control: controlled shared cache management in chip multiprocessors. In MICRO'09.
[22]
G. E. Suh, et al. Dynamic partitioning of shared cache memory. J. Supercomput., 28(1):7--26, 2004.
[23]
Y. Xie and G. H. Loh. Pipp: promotion/insertion pseudo-partitioning of multi-core shared caches. In ISCA '09.
[24]
S. Zhuravlev, et al. Addressing shared resource contention in multicore processors via scheduling. In ASPLOS'10.

Cited By

View all
  • (2019)Combining Prefetch Control and Cache Partitioning to Improve Multicore Performance2019 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS.2019.00103(953-962)Online publication date: May-2019
  • (2017)A coordinated multi-agent reinforcement learning approach to multi-level cache co-partitioningProceedings of the Conference on Design, Automation & Test in Europe10.5555/3130379.3130572(800-805)Online publication date: 27-Mar-2017
  • (2017)A coordinated multi-agent reinforcement learning approach to multi-level cache co-partitioningDesign, Automation & Test in Europe Conference & Exhibition (DATE), 201710.23919/DATE.2017.7927098(800-805)Online publication date: Mar-2017
  • Show More Cited By

Index Terms

  1. Courteous cache sharing: being nice to others in capacity management

      Recommendations

      Comments

      Please enable JavaScript to view thecomments powered by Disqus.

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      DAC '12: Proceedings of the 49th Annual Design Automation Conference
      June 2012
      1357 pages
      ISBN:9781450311991
      DOI:10.1145/2228360
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      In-Cooperation

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 03 June 2012

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. multithreaded applications
      2. shared cache management

      Qualifiers

      • Research-article

      Funding Sources

      Conference

      DAC '12
      Sponsor:
      DAC '12: The 49th Annual Design Automation Conference 2012
      June 3 - 7, 2012
      California, San Francisco

      Acceptance Rates

      Overall Acceptance Rate 1,770 of 5,499 submissions, 32%

      Upcoming Conference

      DAC '25
      62nd ACM/IEEE Design Automation Conference
      June 22 - 26, 2025
      San Francisco , CA , USA

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)2
      • Downloads (Last 6 weeks)1
      Reflects downloads up to 11 Jan 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2019)Combining Prefetch Control and Cache Partitioning to Improve Multicore Performance2019 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS.2019.00103(953-962)Online publication date: May-2019
      • (2017)A coordinated multi-agent reinforcement learning approach to multi-level cache co-partitioningProceedings of the Conference on Design, Automation & Test in Europe10.5555/3130379.3130572(800-805)Online publication date: 27-Mar-2017
      • (2017)A coordinated multi-agent reinforcement learning approach to multi-level cache co-partitioningDesign, Automation & Test in Europe Conference & Exhibition (DATE), 201710.23919/DATE.2017.7927098(800-805)Online publication date: Mar-2017
      • (2017)Cooperative Multi-Agent Reinforcement Learning-Based Co-optimization of Cores, Caches, and On-chip NetworkACM Transactions on Architecture and Code Optimization10.1145/313217014:4(1-25)Online publication date: 14-Nov-2017
      • (2017)A Hardware Approach to Fairly Balance the Inter-Thread Interference in Shared CachesIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2017.271377828:11(3021-3032)Online publication date: 1-Nov-2017
      • (2017)Application Clustering Policies to Address System Fairness with Intel’s Cache Allocation Technology2017 26th International Conference on Parallel Architectures and Compilation Techniques (PACT)10.1109/PACT.2017.19(194-205)Online publication date: Sep-2017
      • (2016)Hardware support for protective and collaborative cache sharingACM SIGPLAN Notices10.1145/3241624.292670551:11(24-35)Online publication date: 14-Jun-2016
      • (2016)A Software Cache Partitioning System for Hash-Based CachesACM Transactions on Architecture and Code Optimization10.1145/301811313:4(1-24)Online publication date: 16-Dec-2016
      • (2016)SPMPoolACM Transactions on Embedded Computing Systems10.1145/296844716:1(1-27)Online publication date: 23-Oct-2016
      • (2016)Hardware support for protective and collaborative cache sharingProceedings of the 2016 ACM SIGPLAN International Symposium on Memory Management10.1145/2926697.2926705(24-35)Online publication date: 14-Jun-2016
      • Show More Cited By

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media