Taming x86-TSO Persistency (Extended Version)

10/26/2020
by   Artem Khyzha, et al.
0

We study the formal semantics of non-volatile memory in the x86-TSO architecture. We show that while the explicit persist operations in the recent model of Raad et al. from POPL'20 only enforce order between writes to the non-volatile memory, it is equivalent, in terms of reachable states, to a model whose explicit persist operations mandate that prior writes are actually written to the non-volatile memory. The latter provides a novel model that is much closer to common developers' understanding of persistency semantics. We further introduce a simpler and stronger sequentially consistent persistency model, develop a sound mapping from this model to x86, and establish a data-race-freedom guarantee providing programmers with a safe programming discipline. Our operational models are accompanied with equivalent declarative formulations, which facilitate our formal arguments, and may prove useful for program verification under x86 persistency.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/31/2022

A Formal Model of Checked C

We present a formal model of Checked C, a dialect of C that aims to enfo...
research
09/15/2021

Dala: A Simple Capability-Based Dynamic Language Design For Data Race-Freedom

Dynamic languages like Erlang, Clojure, JavaScript, and E adopted data-r...
research
05/15/2023

Rely-Guarantee Reasoning for Causally Consistent Shared Memory (Extended Version)

Rely-guarantee (RG) is a highly influential compositional proof techniqu...
research
05/16/2018

On the Semantics of Snapshot Isolation

Snapshot isolation (SI) is a standard transactional consistency model us...
research
08/08/2019

Privatization-Safe Transactional Memories (Extended Version)

Transactional memory (TM) facilitates the development of concurrent appl...
research
08/13/2022

Automated Conversion of Axiomatic to Operational Models: Theory and Practice

A system may be modelled as an operational model (which has explicit not...
research
03/16/2018

Formal Analysis of Non-functional Properties for a Cooperative Automotive System

Modeling and analysis of nonfunctional requirements is crucial in automo...

Please sign up or login with your details

Forgot password? Click here to reset