An optimal replacement algorithm for balancing multi-module caches - Vandierendonck, Hans; Bosschere, Koen De (Anais do International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD); 2000: Anais do XII Symposium on Computer Architecture and High Performance ComputingDO - 10.5753/sbac-pad.2000.41205, 2000)
Multi-module caches consist of multiple parallel caches. Their goal increase level 1 data cache hit ratios by allowing more freedom in placing blocks in the cache. Balancing multi-module caches provide the opportunity to reorganise blocks by moving them between the cache modules, in an attempt to balance the amount of data stored in each module. This capability allows for even higher hit ratios. We present an algorithm to simulate optimal replacement in balancing multi-module caches. This algorithm is optimal since it minimizes the number of cache misses. However, it is infeasible to implement it in hardware. We discuss the effects of the set index functions used in the modules and the ways they interact. The algorithm is used to investigate three cache configurations and provide some performance limits for balancing multi-module caches.