English
Related papers

Related papers: Taming x86-TSO Persistency (Extended Version)

200 papers

We introduce a denotational semantic framework for shared-memory concurrent programs in a C11-style memory model. This denotational approach is an alternative to techniques based on "execution graphs" and axiomatizations, and it allows for…

Programming Languages · Computer Science 2018-04-13 Ryan Kavanagh , Stephen Brookes

The SPARC TSO weak memory model is defined axiomatically, with a non-compositional formulation that makes modular reasoning about programs difficult. Our denotational approach uses pomsets to provide a compositional semantics capturing…

Programming Languages · Computer Science 2023-06-22 Ryan Kavanagh , Stephen Brookes

Rust is an emergent systems programming language highlighting memory safety by its Ownership and Borrowing System (OBS). The existing formal semantics for Rust only covers limited subsets of the major language features of Rust. Moreover,…

Programming Languages · Computer Science 2020-07-28 Shuanglong Kan , Zhe Chen , David Sanan , Shang-Wei Lin , Yang Liu

The rise of persistent memory is disrupting computing to its core. Our work aims to help programmers navigate this brave new world by providing a program logic for reasoning about x86 code that uses low-level operations such as memory…

Programming Languages · Computer Science 2022-01-19 Eleni Vafeiadi Bila , Brijesh Dongol , Ori Lahav , Azalea Raad , John Wickerson

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

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 propose a novel, operational framework to formally describe the semantics of concurrent programs running within the context of a relaxed memory model. Our framework features a "temporary store" where the memory operations issued by the…

Programming Languages · Computer Science 2012-08-30 Gérard Boudol , Gustavo Petri , Bernard Serpette

Robustness is a correctness notion for concurrent programs running under relaxed consistency models. The task is to check that the relaxed behavior coincides (up to traces) with sequential consistency (SC). Although computationally simple…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-03-16 Egor Derevenetc , Roland Meyer , Sebastian Schweizer

Accelerators provide large performance and energy-efficiency benefits, but can significantly change the hardware-software interface. The t\"{a}k\={o} programmable memory hierarchy accelerates data movement by enabling programmers to run…

Hardware Architecture · Computer Science 2026-05-07 Pranav Srinivasan , Manos Kapritsos , Yatin A. Manerkar

We present a technique for efficient stateless model checking of programs that execute under the relaxed memory models TSO and PSO. The basis for our technique is a novel representation of executions under TSO and PSO, called chronological…

Logic in Computer Science · Computer Science 2015-01-12 Parosh Abdulla , Stavros Aronis , Mohammed Faouzi Atig , Bengt Jonsson , Carl Leonardsson , Konstantinos Sagonas

We consider games played on the transtion graph of concurrent programs running under the Total Store Order (TSO) weak memory model. Games are frequently used to model the interaction between a system and its environment, in this case…

Computer Science and Game Theory · Computer Science 2024-06-05 Stephan Spengler

Non-volatile memory (NVM) promises persistent main memory that remains correct despite loss of power. This has sparked a line of research into algorithms that can recover from a system crash. Since caches are expected to remain volatile,…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-06-22 Naama Ben-David , Guy E. Blelloch , Michal Friedman , Yuanhao Wei

We consider games played on the transition graph of concurrent programs running under the Total Store Order (TSO) weak memory model. Games are frequently used to model the interaction between a system and its environment, in this case…

Logic in Computer Science · Computer Science 2024-11-05 Stephan Spengler

Neural networks increasingly run on hardware outside the user's control (cloud GPUs, inference marketplaces). Yet ML-as-a-Service reveals little about what actually ran or whether returned outputs faithfully reflect the intended inputs.…

Cryptography and Security · Computer Science 2026-03-03 Jianzhu Yao , Hongxu Su , Taobo Liao , Zerui Cheng , Huan Zhang , Xuechao Wang , Pramod Viswanath

Formal verification of concurrent operating systems (OSs) is challenging, in particular the verification of the dynamic memory management due to its complex data structures and allocation algorithm. An incorrect specification and…

Software Engineering · Computer Science 2023-09-20 Yongwang Zhao , David Sanan

The verification of concurrent programs remains an open challenge due to the non-determinism in inter-process communication. One algorithmic problem in this challenge is the consistency verification of concurrent executions. Consistency…

Programming Languages · Computer Science 2021-09-07 Truc Lam Bui , Krishnendu Chatterjee , Tushar Gautam , Andreas Pavlogiannis , Viktor Toman

The Total Store Order (TSO) is arguably the most widely used relaxed memory model in multiprocessor architectures, widely implemented, for example in Intel's x86 and x64 platforms. It allows processes to delay the visibility of writes…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-08-18 Raïssa Nataf , Yoram Moses

For over a decade, explicit memory architectures like the Neural Turing Machine have remained theoretically appealing yet practically intractable for language modeling due to catastrophic gradient instability during Backpropagation Through…

Machine Learning · Computer Science 2026-05-14 Sungwoo Goo , Hwi-yeol Yun , Sangkeun Jung

We introduce a neural stack architecture, including a differentiable parametrized stack operator that approximates stack push and pop operations for suitable choices of parameters that explicitly represents a stack. We prove the stability…

Machine Learning · Computer Science 2022-09-20 John Stogin , Ankur Mali , C Lee Giles

Distributed storage systems and databases are widely used by various types of applications. Transactional access to these storage systems is an important abstraction allowing application programmers to consider blocks of actions (i.e.,…

Programming Languages · Computer Science 2023-06-22 Sidi Mohamed Beillahi , Ahmed Bouajjani , Constantin Enea