DocumentCode :
1553149
Title :
Speculative Versioning Cache
Author :
Vijaykumar, T.N. ; Gopal, Sridhar ; Smith, James E. ; Sohi, Gurindar
Author_Institution :
Sch. of Electr. & Comput. Eng., Purdue Univ., West Lafayette, IN, USA
Volume :
12
Issue :
12
fYear :
2001
fDate :
12/1/2001 12:00:00 AM
Firstpage :
1305
Lastpage :
1317
Abstract :
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
Keywords :
cache storage; configuration management; parallelising compilers; storage allocation; Address Resolution Buffer; SVC; bandwidth; bus-based coherent caches; cache coherence; distributed caches; hit latency; instruction level parallelism; latency; memory dependence speculation; memory dependences; memory disambiguation; multiple speculative stores; multiple speculative versions; multiscalar architecture; sequential program; sequential semantics; snooping cache coherence protocols; speculative versioning; speculative versioning cache; Bandwidth; Buffer storage; Data mining; Delay; Microprocessors; Parallel processing; Proposals; Protocols; Registers; Static VAr compensators;
fLanguage :
English
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on
Publisher :
ieee
ISSN :
1045-9219
Type :
jour
DOI :
10.1109/71.970565
Filename :
970565
Link To Document :
بازگشت