IEEE Transactions on Parallel and Distributed Systems · 2001 · 53 citations · 23 references
Software MaintenanceEngineeringComputer ArchitectureSoftware EngineeringMemory Model (Programming)Software AnalysisHardware SecurityMemory Dependence SpeculationShared MemoryHigh-performance ArchitectureParallel ComputingMemory ManagementWeb CacheComputer EngineeringCachingComputer ScienceAddress Resolution BufferProgram AnalysisSoftware TestingParallel ProgrammingSpeculative Versioning CacheSoftware VersioningDistributed Caches
Dependences among loads and stores whose addresses are unknown hinder the extraction of instruction level parallelism during the execution of a sequential program. Such ambiguous memory dependences can be overcome by memory dependence speculation which enables a load or store to be speculatively executed before the addresses of all preceding loads and stores are known. Furthermore, multiple speculative stores to a memory location create multiple speculative versions of the location. Program order among the speculative versions must be tracked to maintain sequential semantics. A previously proposed approach, the Address Resolution Buffer (ARB) uses a centralized buffer to support speculative versions. Our proposal, called the Speculative Versioning Cache (SVC), uses distributed caches to eliminate the latency and bandwidth problems of the ARB. The SVC conceptually unifies cache coherence and speculative versioning by using an organization similar to snooping bus-based coherent caches. Our evaluation for the Multiscalar architecture shows that hit latency is an important factor affecting performance and private cache solutions trade-off hit rate for hit latency.
23
Gurindar S. Sohi, Scott E. Breach, T. N. Vijaykumar · 1995 · 969 citations
Complexity-effective superscalar processors
Subbarao Palacharla, Norman P. Jouppi, James E. Smith · 1997 · 828 citations
The case for a single-chip multiprocessor
Kunle Olukotun, Basem A. Nayfeh, Lance Hammond et al. · 1996 · 700 citations · Full text
Electrical Engineering, Single-chip Multiprocessor Architectures, Engineering +14
Data speculation support for a chip multiprocessor
Lance Hammond, Mark Willey, Kunle Olukotun · 1998 · 414 citations
Using cache memory to reduce processor-memory traffic
James Goodman · 1998 · 396 citations