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

Index Terms

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

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • 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

        Copyright © 2012 ACM

        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]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 3 June 2012

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate1,770of5,499submissions,32%

        Upcoming Conference

        DAC '24
        61st ACM/IEEE Design Automation Conference
        June 23 - 27, 2024
        San Francisco , CA , USA

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader