Abstract
Caches are designed to provide the best tradeoff between access speed and capacity for a set of target applications. Unfortunately, different applications, and even different phases within the same application, may require a different capacity-speed tradeoff. This problem is exacerbated in a Simultaneous Multi-Threaded (SMT) processor where the optimal cache design may vary drastically with the number of running threads and their characteristics.
We propose to make this capacity-speed cache tradeoff dynamic within an SMT core. We extend a previously proposed globally asynchronous, locally synchronous (GALS) processor core with multi-threaded support, and implement dynamically resizable instruction and data caches. As the number of threads and their characteristics change, these adaptive caches automatically adjust from small sizes with fast access times to higher capacity configurations. While the former is more performance-optimal when the core runs a single thread, or a dual-thread workload with modest cache requirements, higher capacity caches work best with most multiple thread workloads. The use of a GALS microarchitecture permits the rest of the processor, namely the execution core, to run at full speed irrespective of the cache speeds. This approach yields an overall performance improvement of 24.7% over the best fixed-size caches for dual-thread workloads, and 19.2% for single-threaded applications.
This research was supported in part by Spanish Government Grant TIN2005-05619, National Science Foundation Grant CCF-0304574, an IBM Faculty Partnership Award, a grant from the Intel Research Council, and by equipment grants from Intel and IBM.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer Berlin Heidelberg
About this paper
Cite this paper
López, S., Dropsho, S., Albonesi, D.H., Garnica, O., Lanchares, J. (2007). Dynamic Capacity-Speed Tradeoffs in SMT Processor Caches. In: De Bosschere, K., Kaeli, D., Stenström, P., Whalley, D., Ungerer, T. (eds) High Performance Embedded Architectures and Compilers. HiPEAC 2007. Lecture Notes in Computer Science, vol 4367. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69338-3_10
Download citation
DOI: https://doi.org/10.1007/978-3-540-69338-3_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69337-6
Online ISBN: 978-3-540-69338-3
eBook Packages: Computer ScienceComputer Science (R0)