DocumentCode :
1550400
Title :
Silent stores and store value locality
Author :
Lepak, Kevin M. ; Bell, Gordon B. ; Lipasti, AndMikko H.
Author_Institution :
Dept. of Electr. & Comput. Eng., Wisconsin Univ., Madison, WI, USA
Volume :
50
Issue :
11
fYear :
2001
fDate :
11/1/2001 12:00:00 AM
Firstpage :
1174
Lastpage :
1190
Abstract :
Value locality, a recently discovered program attribute that describes the likelihood of the recurrence of previously seen program values, has been studied enthusiastically in the recent published literature. Much of the energy has focused on refining the initial efforts at predicting load instruction outcomes, with the balance of the effort examining the value locality of either all register-writing instructions or a focused subset of them. Surprisingly, there has been very little published characterization of or effort to exploit the value locality of data words stored to memory by computer programs. This paper presents such a characterization, including detailed source-level analysis of the causes of silent stores, proposes both memory-centric (based on message passing) and producer-centric (based on program structure) prediction mechanisms for stored data values, introduces the concept of silent stores and new definitions of multiprocessor false sharing based on these observations, and suggests new techniques for aligning cache coherence protocols and microarchitectural store handling techniques to exploit the value locality of stores. We find that realistic implementations of these techniques can significantly reduce multiprocessor data bus traffic and are more effective at reducing address bus traffic than the addition of Exclusive state to a MS I coherence protocol. We also show that squashing of silent stores can provide uniprocessor speedups greater than the addition of store-to-load forwarding
Keywords :
cache storage; memory architecture; cache coherence protocols; load instruction outcomes; microarchitectural store handling; multiprocessor false sharing; program attribute; register-writing instructions; silent stores; source-level analysis; store value locality; store-to-load forwarding; Acceleration; Computer aided instruction; Delay; Message passing; Microarchitecture; Parallel processing; Performance gain; Protocols; Throughput; Writing;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/12.966493
Filename :
966493
Link To Document :
بازگشت