Title :
Memory ordering: a value-based approach
Author :
Cain, Harold W. ; Lipasti, Mikko H.
Author_Institution :
Dept. of Comput. Sci., Wisconsin Univ., Madison, WI, USA
Abstract :
Conventional out-of-order processors employ a multi-ported, fully-associative load queue to guarantee correct memory reference order both within a single thread of execution and across threads in a multiprocessor system. As improvements in process technology and pipelining lead to higher clock frequencies, scaling this complex structure to accommodate a larger number of in-flight loads becomes difficult if not impossible. Furthermore, each access to this complex structure consumes excessive amounts of energy. In this paper, we solve the associative load queue scalability problem by completely eliminating the associative load queue. Instead, data dependences and memory consistency constraints are enforced by simply reexecuting load instructions in program order prior to retirement. Using heuristics to filter the set of loads that must be re-executed, we show that our replay-based mechanism enables a simple, scalable, and energy-efficient FIFO load queue design with no associative lookup functionality, while sacrificing only a negligible amount of performance and cache bandwidth.
Keywords :
associative processing; cache storage; content-addressable storage; memory architecture; multiprocessing systems; pipeline processing; queueing theory; FIFO load queue design; associative load queue scalability problem; associative lookup functionality; cache bandwidth; clock frequencies; data dependences; execution thread; load filtering; load instruction reexecution; memory consistency constraints; memory ordering; memory reference; multiported fully-associative load queue; multiprocessor system; out-of-order processors; pipeline processing; program order; replay-based mechanism; value-based approach; Clocks; Filters; Frequency; Memory management; Multiprocessing systems; Out of order; Pipeline processing; Retirement; Scalability; Yarn;
Conference_Titel :
Computer Architecture, 2004. Proceedings. 31st Annual International Symposium on
Print_ISBN :
0-7695-2143-6
DOI :
10.1109/ISCA.2004.1310766