Abstract
A thread executing on a simultaneous multithreading (SMT) processor that experiences a long-latency load will eventually stall while holding execution resources. Existing long-latency load aware SMT fetch policies limit the amount of resources allocated by a stalled thread by identifying long-latency loads and preventing the thread from fetching more instructions and in some implementations, instructions beyond the long-latency load are flushed to release allocated resources. This article proposes an SMT fetch policy that takes into account the available memory-level parallelism (MLP) in a thread. The key idea proposed in this article is that in case of an isolated long-latency load (i.e., there is no MLP), the thread should be prevented from allocating additional resources. However, in case multiple independent long-latency loads overlap (i.e., there is MLP), the thread should allocate as many resources as needed in order to fully expose the available MLP. MLP-aware fetch policies achieve better performance for MLP-intensive threads on SMT processors, leading to higher overall system throughput and shorter average turnaround time than previously proposed fetch policies. © 2009 ACM.
Author supplied keywords
Cite
CITATION STYLE
Eyerman, S., & Eeckhout, L. (2009). Memory-level parallelism aware fetch policies for simultaneous multithreading processors. Transactions on Architecture and Code Optimization, 6(1). https://doi.org/10.1145/1509864.1509867
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.