loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
33rd International Symposium on Computer Architecture (ISCA'06)
Slackened Memory Dependence Enforcement: Combining Opportunistic Forwarding with Decoupled Verification
Boston, Massachusetts
June 17-June 21
ISBN: 0-7695-2608-X
Alok Garg, University of Rochester
M. Wasiur Rashid, University of Rochester
Michael Huang, University of Rochester
An efficient mechanism to track and enforce memory dependences is crucial to an out-of-order microprocessor. The conventional approach of using cross-checked load queue and store queue, while very effective in earlier processor incarnations, suffers from scalability problems in modern high-frequency designs that rely on buffering many in-flight instructions to exploit instruction-level parallelism. In this paper, we make a case for a very different approach to dynamic memory disambiguation. We move away from the conventional exact disambiguation strategy and adopt an opportunistic method: we allow loads and stores to access an L0 cache as they are issued out of program order, hoping that with such a laissez-faire approach, most loads actually obtain the right value. To guarantee correctness, they execute a second time in program order to access the nonspeculative L1 cache. A discrepancy between the two executions triggers a replay. Such a design completely eliminates the necessity of real-time violation detection and thus avoids the conventional approach?s complexity and the associated scalability issue. We show that even a simplistic design can provide similar performance level achieved with a conventional queue-based approach with optimisticallysized queues. When simple, optional optimizations are applied, the performance level is close to that achieved with ideally-sized queues.
Citation:
Alok Garg, M. Wasiur Rashid, Michael Huang, "Slackened Memory Dependence Enforcement: Combining Opportunistic Forwarding with Decoupled Verification," isca, pp.142-154, 33rd International Symposium on Computer Architecture (ISCA'06), 2006
Usage of this product signifies your acceptance of the Terms of Use.