1996
DOI: 10.1145/248208.237173
|View full text |Cite
|
Sign up to set email alerts
|

Value locality and load value prediction

Abstract: Since the introduction of virtual memory demand-paging and cache memories, computer systems have been exploiting spatial and temporal locality to reduce the average latency of a memory reference. In this paper, we introduce the notion of value locality, a third facet of locality that is frequently present in real-world programs, and describe how to effectively capture and exploit it in order to perform load value prediction. Temporal and spatial locality are attributes of storage locations, and describe the fu… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

2
148
0

Year Published

2002
2002
2018
2018

Publication Types

Select...
6
2

Relationship

0
8

Authors

Journals

citations
Cited by 93 publications
(150 citation statements)
references
References 28 publications
2
148
0
Order By: Relevance
“…Load value speculation is a well-studied, but rarely used technique to reduce the impact of the memory bottleneck [19]. Mock et al were able to prove by means of a modified C compiler, which forced data speculation on an Intel Itanium 2 CPU architecture where possible, that performance increases due to load value speculation [22] of up to 10% were achievable.…”
Section: Overviewmentioning
confidence: 99%
“…Load value speculation is a well-studied, but rarely used technique to reduce the impact of the memory bottleneck [19]. Mock et al were able to prove by means of a modified C compiler, which forced data speculation on an Intel Itanium 2 CPU architecture where possible, that performance increases due to load value speculation [22] of up to 10% were achievable.…”
Section: Overviewmentioning
confidence: 99%
“…For instance, branch prediction [14] tries to reduce pipeline stalls by predicting the outcome of conditional branches, and value prediction [10] attempts to alleviate the serialization resulting from data dependences by predicting the results of arithmetic operations. Notice that prediction introduces additional complexity to the microprocessor because special hardware has to be devoted to predicting and then mandatorily validating the predictions.…”
Section: Fig 6 Olsrp Mechanismmentioning
confidence: 99%
“…p), or the status of the lock in the case of a locking construct (with do e), is "guessed", or "predicted" -as regards loads from the memory, this is known as value prediction, and was introduced in [11,19]. These guessed values may be written by other threads, which are ignored at this stage.…”
Section: For Any Expression E Of the Run-time Language Either E Ismentioning
confidence: 99%
“…We adopt and extend the approach presented in [7], that is, we define, using a pretty standard operational style, the speculative semantics of an expressive language, namely a call-by-value λ-calculus with mutable state and threads. Our formalization relies on extending the usual notion of an evaluation context [9], and using value prediction [11,19] as regards the values read from the memory. By introducing speculation contexts, we are able to formalize out of order executions, as in relaxed memory models, and also branch prediction [26], allowing to compute in the alternatives of a conditional branching construct.…”
Section: Introductionmentioning
confidence: 99%