English
Related papers

Related papers: Weak Memory Models with Matching Axiomatic and Ope…

200 papers

The memory model for RISC-V, a newly developed open source ISA, has not been finalized yet and thus, offers an opportunity to evaluate existing memory models. We believe RISC-V should not adopt the memory models of POWER or ARM, because…

Programming Languages · Computer Science 2018-09-20 Sizhuo Zhang , Muralidaran Vijayaraghavan , Arvind

Memory consistency models define the order in which accesses to shared memory in a concurrent system may be observed to occur. Such models are a necessity since program order is not a reliable indicator of execution order, due to…

Programming Languages · Computer Science 2026-03-16 Roger C. Su , Robert J. Colvin

Modern processors deploy a variety of weak memory models, which for efficiency reasons may execute instructions in an order different to that specified by the program text. The consequences of instruction reordering can be complex and…

Logic in Computer Science · Computer Science 2018-12-05 Robert J. Colvin , Graeme Smith

Weak memory models are a consequence of the desire on part of architects to preserve all the uniprocessor optimizations while building a shared memory multiprocessor. The efforts to formalize weak memory models of ARM and POWER over the…

Hardware Architecture · Computer Science 2018-09-20 Sizhuo Zhang , Muralidaran Vijayaraghavan , Andrew Wright , Mehdi Alipour , Arvind

Proving the correctness of programs written for multiple processors is a challenging problem, due in no small part to the weaker memory guarantees afforded by most modern architectures. In particular, the existence of store buffers means…

Logic in Computer Science · Computer Science 2014-06-09 Benjamin Selfridge

We propose an axiomatic generic framework for modelling weak memory. We show how to instantiate this framework for SC, TSO, C++ restricted to release-acquire atomics, and Power. For Power, we compare our model to a preceding operational…

Logic in Computer Science · Computer Science 2014-01-10 Jade Alglave , Luc Maranget , Michael Tautschnig

SPARC processors have many applications in mission-critical industries such as aviation and space engineering. Hence, it is important to provide formal frameworks that facilitate the verification of hardware and software that run on or…

Logic in Computer Science · Computer Science 2019-06-27 Zhe Hou , David Sanan , Alwen Tiu , Yang Liu , Jin Song Dong

Weak memory models describe the semantics of concurrent programs on modern multi-core architectures. Reasoning techniques for concurrent programs, like Owicki-Gries-style proof calculi, have to be based on such a semantics, and hence need…

Logic in Computer Science · Computer Science 2023-01-20 Lara Bargmann , Heike Wehrheim

Weak-memory models are standard formal specifications of concurrency across hardware, programming languages, and distributed systems. A fundamental computational problem is consistency testing: is the observed execution of a concurrent…

Programming Languages · Computer Science 2023-11-16 Soham Chakraborty , Shankaranarayanan Krishna , Umang Mathur , Andreas Pavlogiannis

Weak memory models provide a complex, system-centric semantics for concurrent programs, while transactional memory (TM) provides a simpler, programmer-centric semantics. Both have been studied in detail, but their combined semantics is not…

Programming Languages · Computer Science 2018-04-18 Nathan Chong , Tyler Sorensen , John Wickerson

We address the problem of verifying safety properties of concurrent programs running over the Total Store Order (TSO) memory model. Known decision procedures for this model are based on complex encodings of store buffers as lossy channels.…

Formal Languages and Automata Theory · Computer Science 2023-06-22 Parosh Aziz Abdulla , Mohamed Faouzi Atig , Ahmed Bouajjani , Tuan Phong Ngo

Speculative techniques in microarchitectures relax various dependencies in programs, which contributes to the complexity of (weak) memory models. We show using WMM, a new weak memory model, that the model becomes simpler if it includes…

Programming Languages · Computer Science 2016-06-20 Sizhuo Zhang , Arvind , Muralidaran Vijayaraghavan

Multiprocess systems, including grid systems, multiprocessors and multicore computers, incorporate a variety of specialized hardware and software mechanisms, which speed computation, but result in complex memory behavior. As a consequence,…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-06-04 Steven Cheng , Lisa Higham , Jalal Kawash

In this paper we verify a modern lazy cache coherence protocol, TSO-CC, against the memory consistency model it was designed for, TSO. We achieve this by first showing a weak simulation relation between TSO-CC (with a fixed number of…

Logic in Computer Science · Computer Science 2017-05-24 Christopher J. Banks , Marco Elver , Ruth Hoffmann , Susmit Sarkar , Paul Jackson , Vijay Nagarajan

We develop a new intermediate weak memory model, IMM, as a way of modularizing the proofs of correctness of compilation from concurrent programming languages with weak memory consistency semantics to mainstream multi-core architectures,…

Programming Languages · Computer Science 2018-11-12 Anton Podkopaev , Ori Lahav , Viktor Vafeiadis

Shared Memory is a mechanism that allows several processes to communicate with each other by accessing -- writing or reading -- a set of variables that they have in common. A Consistency Model defines how each process observes the state of…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-01-26 Jordi Bataller Mascarell

Most work on the verification of concurrent objects for shared memory assumes sequential consistency, but most multicore processors support only weak memory models that do not provide sequential consistency. Furthermore, most verification…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-04-25 Simon Doherty , John Derrick

Since the introduction of the CDC 6600 in 1965 and its `scoreboarding' technique processors have not (necessarily) executed instructions in program order. Programmers of high-level code may sequence independent instructions in arbitrary…

Logic in Computer Science · Computer Science 2021-05-07 Robert J. Colvin

Linearizability is a widely accepted notion of correctness for concurrent objects. Recent research has investigated redefining linearizability for particular hardware weak memory models, in particular for TSO. In this paper, we provide an…

Logic in Computer Science · Computer Science 2019-07-03 Graeme Smith , Kirsten Winter , Robert J. Colvin

Atomicity or strong consistency is one of the fundamental, most intuitive, and hardest to provide primitives in distributed shared memory emulations. To ensure survivability, scalability, and availability of a storage service in the…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-05-31 Nicolas Nicolaou , Viveck Cadambe , N. Prakash , Andria Trigeorgi , Kishori M. Konwar , Nancy Lynch , Muriel Medard
‹ Prev 1 2 3 10 Next ›