|
CMU-CS-98-171
Computer Science Department
School of Computer Science, Carnegie Mellon University
CMU-CS-98-171
Extending Cache Coherence to Support Thread-Level
Data Speculation on a Single Chip and Beyond
J. Gregory Steffan, Christopher B. Colohan, Todd C. Mowry
December 1998
CMU-CS-98-171.ps
CMU-CS-98-171.pdf
Keywords: Multiple data stream architectures (parallel processors),
cache memories, performance of systems
Thread-Level Data Speculation (TLDS) is a technique which enables
the optimistic parallelization of applications despite ambiguous
data dependencies between the resulting threads. Although TLDS is
mostly managed by software, hardware provides two key pieces of
functionality: (i) detecting dependence violations, and (ii) buffering
speculative side-effects until they can be safely committed to memory.
To provide this functionality we present an extension to
invalidation-based cache coherence which is both scalable and has a
minimal impact on hardware complexity. We explore the design space in
depth and find that our baseline architecture is sufficient to exploit
speculative parallelism.
22 pages
|