ABSTRACT
In multi-core systems, hardware prefetchers aggravate the preemption of some access-intensive programs for shared last level cache (LLC) resources, resulting in lower system performance. As a solution, we propose a prefetch-aware multi-core shared cache partition (PACP) strategy to tackle the conundrum. According to the performance changes of programs after prefetch is enabled, each program is classified as either prefetch-sensitive or non-prefetch-sensitive, and then cache resources are dynamically allocated according to the cache utilization and memory bandwidth changes of programs on the core. ChampSim is used to simulate the strategy. Experimental results show that the performance of 4-core and 16-core systems can be improved by 17.54% and 12.76% on average, respectively. PACP effectively balances the size of cache space between different cores and reduce interference, thus improving system performance.
- Kalani N S, Panda B. Instruction Criticality Based Energy-Efficient Hardware Data Prefetching[J]. IEEE Computer Architecture Letters, 2021, 20(2): 146-149.Google ScholarCross Ref
- Lee J, Kim H, Vuduc R. When prefetching works, when it doesn't, and why[J]. ACM Transactions on Architecture and Code Optimization (TACO), 2012, 9(1): 1-29.Google ScholarDigital Library
- Alshammari A, Almalki R, Alshammari R. Developing a Predictive Model of Predicting Appointment No-Show by Using Machine Learning Algorithms[J]. Journal of Advances in Information Technology Vol, 2021, 12(3).Google ScholarCross Ref
- Brock J, Ye C, Ding C, Optimal cache partition-sharing[C]//2015 44th International Conference on Parallel Processing. IEEE, 2015: 749-758.Google Scholar
- Qureshi M K . Utility-Based Cache Partitioning: A Low-Overhead, High-Performance, Runtime Mechanism to Partition Shared Caches[J]. Proceedings of Intl.symp.on Microarchitecture, 2006.Google ScholarDigital Library
- Xie Y, Loh G H. PIPP: promotion/insertion pseudo-partitioning of multi-core shared caches[J]. Computer architecture news, 2009.Google ScholarDigital Library
- Li Z , Ju L , Dai H , Set variation-aware shared LLC management for CPU-GPU heterogeneous architecture[C]// 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE). IEEE, 2018.Google Scholar
- Selfa V , Sahuquillo J , Eeckhout L , Application Clustering Policies to Address System Fairness with Intel's Cache Allocation Technology[C]// International Conference on Parallel Architectures & Compilation Techniques. IEEE, 2017.Google Scholar
- El-Sayed N , Mukkara A , Tsai P A , KPart: A Hybrid Cache Partitioning-Sharing Technique for Commodity Multicores[C]// 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA). IEEE, 2018.Google Scholar
- SUN G, SHEN J, VEIDENBAUM V. Combining Prefetch Control and Cache Partitioning to Improve Multicore Performance[C]// Proceedings of 2019 IEEE International Parallel and Distributed Processing Symposium. Rio de Janeiro, Brazil: IEEE Press, 2019: 953−962.Google Scholar
- Xiao J, Pimentel A D, Liu X. CPpf: a prefetch aware LLC partitioning approach[C]//Proceedings of the 48th International Conference on Parallel Processing. 2019: 1-10.Google Scholar
- Chen X, Chang L W, Rodrigues C I, Adaptive cache management for energy-efficient GPU computing[C]//2014 47th Annual IEEE/ACM International Symposium on Microarchitecture. IEEE, 2014: 343-355Google Scholar
- Liu D, Yang C. Caching at base stations with heterogeneous user demands and spatial locality[J]. IEEE Transactions on Communications, 2018, 67(2): 1554-1569.Google ScholarCross Ref
- PACP: A Prefetch-aware Multi-core Shared Cache Partitioning Strategy
Recommendations
IPC-Based Cache Partitioning: An IPC-Oriented Dynamic Shared Cache Partitioning Mechanism
ICHIT '08: Proceedings of the 2008 International Conference on Convergence and Hybrid Information TechnologyIn a chip-multiprocessor with a shared cache structure, the last level cache is shared by multiple applications executing simultaneously. The competing accesses from different applications degrade the system performance, resulting in non-predicting ...
AB-Aware: Application Behavior Aware Management of Shared Last Level Caches
GLSVLSI '18: Proceedings of the 2018 on Great Lakes Symposium on VLSIIn modern multicore systems, Last-Level Cache (LLC) is usually shared among multiple cores. Though it benefits applications by sharing and utilizing cache resources efficiently; the benefits come at the cost of increased conflict misses due to ...
Comments