2010
DOI: 10.1145/1735970.1736026
|View full text |Cite
|
Sign up to set email alerts
|

A real system evaluation of hardware atomicity for software speculation

Abstract: In this paper we evaluate the atomic region compiler abstraction by incorporating it into a commercial system. We find that atomic regions are simple and intuitive to integrate into an x86 binary-translation system. Furthermore, doing so trivially enables additional optimization opportunities beyond that achievable by a high-performance dynamic optimizer, which already implements superblocks. We show that atomic regions can suffer from severe performance penalties if misspeculations are left uncontro… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
9
0

Year Published

2013
2013
2019
2019

Publication Types

Select...
6

Relationship

0
6

Authors

Journals

citations
Cited by 8 publications
(9 citation statements)
references
References 15 publications
0
9
0
Order By: Relevance
“…The existing DBT on Efficeon cannot achieve that because after the DVM translates bytecode into X86 code, all the nullpointer and array-bound checks become the normal conditional branches, and the high level information that they are extremely biased branches is lost and therefore the DBT won't be able to leverage it for converting the checks into asserts. Naveen et al [11] experimented a dynamic feedback based technique to identify biased branches and convert them into asserts, but their reported benefit is much smaller than ours because our approach leverages high level bytecode information.…”
Section: Bytecode Check With Speculationmentioning
confidence: 83%
See 1 more Smart Citation
“…The existing DBT on Efficeon cannot achieve that because after the DVM translates bytecode into X86 code, all the nullpointer and array-bound checks become the normal conditional branches, and the high level information that they are extremely biased branches is lost and therefore the DBT won't be able to leverage it for converting the checks into asserts. Naveen et al [11] experimented a dynamic feedback based technique to identify biased branches and convert them into asserts, but their reported benefit is much smaller than ours because our approach leverages high level bytecode information.…”
Section: Bytecode Check With Speculationmentioning
confidence: 83%
“…First, we leverage the internal LINKPIPE feature [21] in Efficeon to reduce indirect branch mis-predictions during the interpretation of cold bytecode. Second, we leverage the internal SPECULATION feature [4] [11] in Efficeon for efficient bytecode null-pointer and arraybound checks. Third, we leverage the internal FLOOK [21] feature in Efficeon for the efficient translation of bytecode function calls and returns.…”
Section: Introductionmentioning
confidence: 99%
“…The target architecture is a VLIW processor similar to Transmeta Efficeon [12], but besides the 14 static alias registers, it also has a variable-sized rotating alias register file. The rotating alias register file has not been implemented in any commercial processor yet, and thus a product-quality functional simulator is used in the experiments here.…”
Section: Methodsmentioning
confidence: 99%
“…In this paper, we focus only on modulo scheduling, and use the two terms, modulo scheduling and software pipelining, interchangeably. We assume a loop body is a hyperblock [11], where branches, if any, have been converted either to predicated code [3], or to asserts [12].…”
Section: Software Pipeliningmentioning
confidence: 99%
“…Speculative code optimizations in atomic regions have been applied to control speculation over a hot trace of code [15,29,30,32]. When these traces of code are generated to enable on-the-fly optimization of uops translated from machine instructions [7,8,15,29], the atomic regions are also used to support precise exceptions at the machine level.…”
Section: Optimizations Using Atomic Regionsmentioning
confidence: 99%