An Effective Replacement Strategy of Cache Memory for an SMT Processor

An SMT processor is designed to execute multiple threads simultaneously in order to gain higher performance with sharing resources such as ALUs and cache memory among several threads. However, sharing cache memory may cause thread conflict misses which degrades its performance. In this paper, an effective replacement strategy in which conflicts miss ratio among threads is controlled by limiting the range of replaceable cache blocks is proposed and designed in order to overcome the problem on cache memory of an SMT processor. The proposed replacement strategy shows 5.3 % as high performance in average and up to 41.9% in maximum as a conventional pseudo LRU strategy. Moreover, hardware costs for implementing the proposed strategy are reduced by 0.74 % compared with pseudo LRU strategy.

[1]  G. Edward Suh,et al.  Dynamic Partitioning of Shared Cache Memory , 2004, The Journal of Supercomputing.

[2]  Alexander V. Veidenbaum,et al.  Innovative Architecture for Future Generation High-Performance Processors and Systems , 2003, Innovative Architecture for Future Generation High-Performance Processors and Systems, 2003.

[3]  G. Edward Suh,et al.  Dynamic Cache Partitioning for Simultaneous Multithreading Systems , 2004 .

[4]  Theo Ungerer,et al.  Memory Hierarchy Studies of Multimedia-enhanced Simultaneous Multithreaded Processors for MPEG-2 Video Decompression , 2000 .

[5]  Hironori Nakajo,et al.  Towards Reconfigurable Cache Memory for a Multithreaded Processor , 2006, PDPTA.

[6]  Kiyofumi Tanaka Fast context switching by hierarchical task allocation and reconfigurable cache , 2003, Innovative Architecture for Future Generation High-Performance Processors and Systems, 2003.

[7]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[8]  Hironori Nakajo,et al.  Development of a Thread Scheduler for SMT Processor Architecture , 2005, PDPTA.

[9]  Dean M. Tullsen,et al.  Simultaneous multithreading: Maximizing on-chip parallelism , 1995, Proceedings 22nd Annual International Symposium on Computer Architecture.

[10]  David A. Patterson,et al.  Computer Architecture - A Quantitative Approach, 5th Edition , 1996 .

[11]  Anoop Gupta,et al.  The SPLASH-2 programs: characterization and methodological considerations , 1995, ISCA.

[12]  Dean M. Tullsen,et al.  Symbiotic jobscheduling for a simultaneous mutlithreading processor , 2000, SIGP.

[14]  Hironori Nakajo,et al.  Implementation and Evaluation of a Thread Library for Multithreaded Architecture , 2003, PDPTA.