Abstract
Abstract
In multiprocessor systems, dynamic cache distribution has been used to increase system performance by effectively partitioning the cache resources. However, different performance metrics used at runtime used to dynamically decide the partition sizes can give different impacts on performance, as well as varying impacts on the hardware cost of the system. In this paper, we propose an Adaptive CPI-based Cache Partitioning (ACCP) scheme to provide better utilisation of the shared cache resources among the competing applications in the system. ACCP uses performance gain estimations of the cache, without incurring significant hardware overhead. It aims to allow all applications in the system to run at approximately the same speed by accelerating the slowest application without significantly decelerating the others. We evaluated the ACCP on a quad-core system on which it achieved on average 23% reduction in miss rate, compared to an unpartitioned shared cache. ACCP also yields a similar IPC throughput improvement to a well-known UCP scheme, and better performance compared to the CPI by Muralidhara et al. Overall, the throughput of the system is improved at minimal complexity without yielding significant additional hardware cost. Hence, ACCP shows better overall performance in managing the hardware overhead compared to the UCP scheme.
Reference11 articles.
1. A cache partitioning mechanism to protect shared data for CMPs;Sato,2016
2. Reuse locality aware cache partitioning for last-level cache;Shen;Computers & Electrical Engineering,2019
3. Spatial locality-aware cache partitioning for effective cache sharing;Gupta,2015
4. A survey of techniques for cache partitioning in multicore processors;Mittal;ACM Computing Surveys (CSUR),2017