The 2-way thrashing-avoidance cache (TAC): an efficient instruction cache scheme for object-oriented languages

TitleThe 2-way thrashing-avoidance cache (TAC): an efficient instruction cache scheme for object-oriented languages
Publication TypeConference Paper
Year of Publication2000
AuthorsChu, Y., and M. R. Ito
Conference NameComputer Design, 2000. Proceedings. 2000 International Conference on
Pagination93 -98
Keywords2-way banks, 2-way thrashing-avoidance cache, bank selection logic, bank-originated pseudo-LRU replacement policies, C++ programs, cache storage, call instruction, conflict misses, instruction cache scheme, object-oriented languages, object-oriented programming, Shade, simulation program, Spixtools, TACSim, ultra SPARC/10 processor, XOR mapping functions
Abstract

This paper presents a new instruction cache scheme: the TAC (Thrashing-Avoidance Cache). A 2-way TAC scheme employs 2-way banks and XOR mapping functions. The main function of the TAC is to place a group of instructions separated by a call instruction into a bank according to the Bank Selection Logic (BSL) and Bank-originated Pseudo-LRU replacement policies (BoPLRU). After the BSL initially selects a bank on an instruction cache miss, the BoPLRU will determine the final bank for updating a cache line as a correction mechanism. These two mechanisms can guarantee that recent groups of instructions exist in each bank safely. We have developed a simulation program, TACSim, by using Shade and Spixtools, provided by SUN Microsystems, on an ultra SPARC/10 processor. Our experimental results show that 2-way TAC schemes reduce conflict misses more effectively than 2-way skewed-associative caches in both C (17% improvement) and C++ (30% improvement) programs on L1 caches

URLhttp://dx.doi.org/10.1109/ICCD.2000.878273
DOI10.1109/ICCD.2000.878273

a place of mind, The University of British Columbia

Electrical and Computer Engineering
2332 Main Mall
Vancouver, BC Canada V6T 1Z4
Tel +1.604.822.2872
Fax +1.604.822.5949
Email:

Emergency Procedures | Accessibility | Contact UBC | © Copyright 2021 The University of British Columbia