Foundations of the C++ concurrency memory model

HJ Boehm, SV Adve - ACM SIGPLAN Notices, 2008 - dl.acm.org
Currently multi-threaded C or C++ programs combine a single-threaded programming
language with a separate threads library. This is not entirely sound [7]. We describe an effort …

CompCertTSO: A verified compiler for relaxed-memory concurrency

J Ševčík, V Vafeiadis, F Zappa Nardelli… - Journal of the ACM …, 2013 - dl.acm.org
In this article, we consider the semantic design and verified compilation of a C-like
programming language for concurrent shared-memory computation on x86 multiprocessors …

Don't sit on the fence: A static analysis approach to automatic fence insertion

J Alglave, D Kroening, V Nimal, D Poetzl - ACM Transactions on …, 2017 - dl.acm.org
Modern architectures rely on memory fences to prevent undesired weakenings of memory
consistency. As the fences' semantics may be subtle, the automation of their placement is …

End-to-end sequential consistency

A Singh, S Narayanasamy, D Marino… - ACM SIGARCH …, 2012 - dl.acm.org
Sequential consistency (SC) is arguably the most intuitive behavior for a shared-memory
multithreaded program. It is widely accepted that language-level SC could significantly …

High-performance gpu-to-cpu transpilation and optimization via high-level parallel constructs

WS Moses, IR Ivanov, J Domke, T Endo… - Proceedings of the 28th …, 2023 - dl.acm.org
While parallelism remains the main source of performance, architectural implementations
and programming models change with each new hardware generation, often leading to …

DRFx: A simple and efficient memory model for concurrent programming languages

D Marino, A Singh, T Millstein, M Musuvathi… - Proceedings of the 31st …, 2010 - dl.acm.org
The most intuitive memory model for shared-memory multithreaded programming is
sequential consistency (SC), but it disallows the use of many compiler and hardware …

A case for an SC-preserving compiler

D Marino, A Singh, T Millstein, M Musuvathi… - ACM SIGPLAN …, 2011 - dl.acm.org
The most intuitive memory consistency model for shared-memory multi-threaded
programming is sequential consistency (SC). However, current concurrent programming …

A theory of memory models

VA Saraswat, R Jagadeesan, M Michael… - Proceedings of the 12th …, 2007 - dl.acm.org
A memory model for a concurrent imperative programming language specifies which writes
to shared variables may be seen by reads performed by other threads. We present a simple …

High-coverage, unbounded sound predictive race detection

J Roemer, K Genç, MD Bond - ACM SIGPLAN Notices, 2018 - dl.acm.org
Dynamic program analysis can predict data races knowable from an observed execution,
but existing predictive analyses either miss races or cannot analyze full program executions …

Stability in weak memory models

J Alglave, L Maranget - … Conference, CAV 2011, Snowbird, UT, USA, July …, 2011 - Springer
Concurrent programs running on weak memory models exhibit relaxed behaviours, making
them hard to understand and to debug. To use standard verification techniques on such …