Counting Dependence Predictors

Abstract

Modern processors rely on memory dependence prediction to execute load instructions as early as possible, speculating that they are not dependent on an earlier, unissued store. To date, the most sophisticated dependence predictors, such as Store Sets, have been tightly coupled to the fetch and execution streams, requiring global knowledge of the in-flight stream of stores to synchronize loads with specific stores. This thesis proposes a new dependence predictor design, called a Counting Dependence Predictor (CDP). The key feature of CDPs is that the prediction mechanism predicts some set of events for which a particular dynamic load should wait, which may include some number of matching stores. By waiting for local events only, this dependence predictor can work effectively in a distributed microarchitecture where centralized fetch and execution streams are infeasible or undesirable. I describe and evaluate a distributed Counting Dependence Predictor and protocol that achieves 92 of the performance of perfect memory disambiguation. It outperforms a load-wait table, similar to the Alpha 21264, by11 . Idealized, centralized implementations of Store Sets and the Exclusive Collision Predictor, both of which would be difficult to implement in a distributed microarchitecture, achieve 97 and 94 of oracular performance, respectively.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
May 02, 2008
Accession Number
AD1024604

Entities

People

  • Franziska Roesner

Organizations

  • University of Texas at Austin

Tags

DTIC Thesaurus Topics

  • Accuracy
  • Collisions
  • Computer Science
  • Computing System Architectures
  • Content Addressable Memory
  • Dynamic Loads
  • Instructions
  • Language
  • Microarchitecture
  • Models
  • Numbers
  • Optimization
  • Parallel Computing
  • Parallel Processing
  • Prime Numbers
  • Simulators
  • Static Loads

Fields of Study

  • Computer science

Readers

  • Aerodynamics/Aeronautics.
  • Statistical inference.
  • Systems Analysis and Design