2003
DOI: 10.1007/978-3-540-39724-3_9
|View full text |Cite
|
Sign up to set email alerts
|

Analyzing the Intel Itanium Memory Ordering Rules Using Logic Programming and SAT

Abstract: Abstract. We present a non-operational approach to specifying and analyzing shared memory consistency models. The method uses higher order logic to capture a complete set of ordering constraints on execution traces, in an axiomatic style. A direct encoding of the semantics with a constraint logic programming language provides an interactive and incremental framework for exercising and verifying finite test programs. The framework has also been adapted to generate equivalent boolean satisfiability (SAT) problem… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
24
0

Year Published

2004
2004
2021
2021

Publication Types

Select...
6
1

Relationship

2
5

Authors

Journals

citations
Cited by 24 publications
(24 citation statements)
references
References 12 publications
0
24
0
Order By: Relevance
“…Many studies describe tools for testing litmus tests on a formally specified memory model [10,20,21,23,24]. Given a parallel program and an expected outcome, these tools report whether the specified outcome is feasible on a specified memory model.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Many studies describe tools for testing litmus tests on a formally specified memory model [10,20,21,23,24]. Given a parallel program and an expected outcome, these tools report whether the specified outcome is feasible on a specified memory model.…”
Section: Related Workmentioning
confidence: 99%
“…An execution of a concurrent program is sequentially consistent if all reads and writes appear to have occurred in a sequential order that is in agreement with the individual program orders of each thread. In order to improve system performance and allow common hardware optimization techniques such as store buffers, many systems implement weaker memory models such as SPARC's TSO, PSO and RMO [22], Intel's x86 [15], Intel's Itanium [24], ARM and PowerPC [2].…”
Section: Introductionmentioning
confidence: 99%
“…Excerpts from the Itanium Ordering Rules (For the full spec, see [18]) t0 t1 t2 t3 For example, consider the tuples with id=0, id=1, and id=2. These are tuples coming from the store instruction of P0 (proc=0), have program counter pc=0, employ variable var=0, and have data=1.…”
Section: Overview Of Our Approachmentioning
confidence: 99%
“…This is to facilitate modeling the the semantics of load bypassing-the ability of a processor to read its own store early. For details, please see [2,18]. The modeling details associated with load instructions are much simpler.…”
Section: Overview Of Our Approachmentioning
confidence: 99%
See 1 more Smart Citation