skip to main content
10.1145/2245276.2232065acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Reducing last level cache pollution through OS-level software-controlled region-based partitioning

Published: 26 March 2012 Publication History

Abstract

Performance degradation caused by cache pollution in the last level cache is extremely severe. In this paper, we propose a software controlled mechanism for last level cache partitioning at the region level in order to reduce intra-application last level cache misses due to cache pollution. A profiling feedback mechanism is used to analyze the inter-region cache interference. Guided by the profiling information, we enhance operating system support for mapping poor locality regions to a small slice in the last level cache in order to eliminate the harmful effect of non-reusable data. Our approach does not require any hardware support or new instructions, and is also application transparent.
In comparison with the default linux, our approach, called Soft-RP, reduces LLC MPKI, the last level cache misses per 1000 instructions, up to 30.88%, and 19.31% on average; execution time measurement shows that Soft-RP can improve the performance up to 15.51%, and 8.14% on average.

References

[1]
Moinuddin K. Qureshi, Aamer Jaleel, Yale N. Patt, Simon C. Steely, and Joel Emer. 2007. Adaptive insertion policies for high performance caching. In Proceedings of the 34th annual international symposium on Computer architecture (ISCA '07). ACM, New York, NY, USA, 381--391.
[2]
Aamer Jaleel, William Hasenplaugh, Moinuddin Qureshi, Julien Sebot, Simon Steely, Jr., and Joel Emer. 2008. Adaptive insertion policies for managing shared caches. In Proceedings of the 17th international conference on Parallel architectures and compilation techniques (PACT '08). ACM, New York, NY, USA, 208--219
[3]
Yuejian Xie and Gabriel H. Loh. 2009. PIPP: promotion/insertion pseudo-partitioning of multi-core shared caches. In Proceedings of the 36th annual international symposium on Computer architecture (ISCA '09). ACM, New York, NY, USA, 174--183.
[4]
Andreas Sandberg, David Eklöv, and Erik Hagersten. 2010. Reducing Cache Pollution Through Detection and Elimination of Non-Temporal Memory Accesses. In Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis (SC '10). IEEE Computer Society, Washington, DC, USA, 1--11
[5]
Qingda Lu, Jiang Lin, Xiaoning Ding, Zhao Zhang, Xiaodong Zhang, and P. Sadayappan. 2009. Soft-OLP: Improving Hardware Cache Performance through Software-Controlled Object-Level Partitioning. In Proceedings of the 2009 18th International Conference on Parallel Architectures and Compilation Techniques (PACT '09). IEEE Computer Society, Washington, DC, USA, 246--257.
[6]
R. E. Kessler and Mark D. Hill. 1992. Page placement algorithms for large real-indexed caches. ACM Trans. Comput. Syst. 10, 4 (November 1992), 338--359.
[7]
Andreas Sandberg, David Eklöv, and Erik Hagersten. 2010. Reducing Cache Pollution Through Detection and Elimination of Non-Temporal Memory Accesses. In Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis (SC '10). IEEE Computer Society, Washington, DC, USA, 1--11
[8]
Rong Xu and Zhiyuan Li. 2004. Using cache mapping to improve memory performance handheld devices. In Proceedings of the 2004 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS '04). IEEE Computer Society, Washington, DC, USA, 106--114.
[9]
John L. Henning. 2000. SPEC CPU2000: Measuring CPU Performance in the New Millennium. Computer 33, 7 (July 2000), 28--35.
[10]
Chi-Keung Luk, Robert Cohn, Robert Muth, Harish Patil, Artur Klauser, Geoff Lowney, Steven Wallace, Vijay Janapa Reddi, and Kim Hazelwood. 2005. Pin: building customized program analysis tools with dynamic instrumentation. In Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation (PLDI '05). ACM, New York, NY, USA, 190--200.
[11]
Intel® Atom#8482; Processor D510 {cited; Available from: http://ark.intel.com/products/43098.
[12]
Sangyeun Cho and Lei Jin. 2006. Managing Distributed, Shared L2 Caches through OS-Level Page Allocation. In Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 39). IEEE Computer Society, Washington, DC, USA, 455--468.
[13]
Jason Zebchuk, Elham Safi, and Andreas Moshovos. 2007. A Framework for Coarse-Grain Optimizations in the On-Chip Memory Hierarchy. In Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 40). IEEE Computer Society, Washington, DC, USA, 314--327.
[14]
Jiang Lin, Qingda Lu, Xiaoning Ding, Zhao Zhang, Xiaodong Zhang, and P. Sadayappan. 2009. Enabling software management for multicore caches with a lightweight hardware support. In Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis (SC '09). ACM, New York, NY, USA, Article 14, 12 pages.
[15]
Dhruba Chandra, Fei Guo, Seongbeom Kim, and Yan Solihin. 2005. Predicting Inter-Thread Cache Contention on a Chip Multi-Processor Architecture. In Proceedings of the 11th International Symposium on High-Performance Computer Architecture (HPCA '05). IEEE Computer Society, Washington, DC, USA, 340--351.
[16]
K. Beyls and E. H. D'Hollander. Reuse distance as a metric for cache behavior. In Proceedings of the IASTED Conference on Parallel and Distributed Computing and Systems, Washington, DC, USA, 2001. IEEE Computer Society. J. Levon and P. Elie.
[17]
Oprofile: A system profiler for linux. 2004 {cited; Available from: http://oprofile.sf.net.
[18]
Xu Cheng, Xiao-Yin Wang, Jun-Lin Lu, Jiang-Fang Yi, Dong Tong, Xue-Tao Guan, Feng Liu, Xian-Hua Liu, Chun Yang and Yi Feng. 2010. Research Progress of UniCore CPUs and PKUnity SoCs. Journal of Computer Science and Technology, Volume 25, Number 2, 200--213.

Cited By

View all
  • (2013)Virtual Machine CoschedulingProceedings of the 2013 IEEE/ACM 6th International Conference on Utility and Cloud Computing10.1109/UCC.2013.47(227-234)Online publication date: 9-Dec-2013

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '12: Proceedings of the 27th Annual ACM Symposium on Applied Computing
March 2012
2179 pages
ISBN:9781450308571
DOI:10.1145/2245276
  • Conference Chairs:
  • Sascha Ossowski,
  • Paola Lecca
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

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 26 March 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. cache partition
  2. memory region
  3. page coloring

Qualifiers

  • Research-article

Funding Sources

Conference

SAC 2012
Sponsor:
SAC 2012: ACM Symposium on Applied Computing
March 26 - 30, 2012
Trento, Italy

Acceptance Rates

SAC '12 Paper Acceptance Rate 270 of 1,056 submissions, 26%;
Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

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

Other Metrics

Citations

Cited By

View all
  • (2013)Virtual Machine CoschedulingProceedings of the 2013 IEEE/ACM 6th International Conference on Utility and Cloud Computing10.1109/UCC.2013.47(227-234)Online publication date: 9-Dec-2013

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