Repairing sequential consistency in C/C++ 11

O Lahav, V Vafeiadis, J Kang, CK Hur… - ACM SIGPLAN Notices, 2017 - dl.acm.org
The C/C++ 11 memory model defines the semantics of concurrent memory accesses in
C/C++, and in particular supports racy" atomic" accesses at a range of different consistency …

A promising semantics for relaxed-memory concurrency

J Kang, CK Hur, O Lahav, V Vafeiadis… - ACM SIGPLAN Notices, 2017 - dl.acm.org
Despite many years of research, it has proven very difficult to develop a memory model for
concurrent programming languages that adequately balances the conflicting desiderata of …

Effective stateless model checking for C/C++ concurrency

M Kokologiannakis, O Lahav, K Sagonas… - Proceedings of the ACM …, 2017 - dl.acm.org
We present a stateless model checking algorithm for verifying concurrent programs running
under RC11, a repaired version of the C/C++ 11 memory model without dependency cycles …

Provably correct peephole optimizations with alive

NP Lopes, D Menendez, S Nagarakatte… - Proceedings of the 36th …, 2015 - dl.acm.org
Compilers should not miscompile. Our work addresses problems in developing peephole
optimizations that perform local rewriting to improve the efficiency of LLVM code. These …

Bugs in Quantum computing platforms: an empirical study

M Paltenghi, M Pradel - Proceedings of the ACM on Programming …, 2022 - dl.acm.org
The interest in quantum computing is growing, and with it, the importance of software
platforms to develop quantum programs. Ensuring the correctness of such platforms is …

Automatically comparing memory consistency models

J Wickerson, M Batty, T Sorensen… - Proceedings of the 44th …, 2017 - dl.acm.org
A memory consistency model (MCM) is the part of a programming language or computer
architecture specification that defines which values can legally be read from shared memory …

Taming release-acquire consistency

O Lahav, N Giannarakis, V Vafeiadis - ACM SIGPLAN Notices, 2016 - dl.acm.org
We introduce a strengthening of the release-acquire fragment of the C11 memory model that
(i) forbids dubious behaviors that are not observed in any implementation;(ii) supports fence …

Tapir: Embedding fork-join parallelism into LLVM's intermediate representation

TB Schardl, WS Moses, CE Leiserson - Proceedings of the 22nd ACM …, 2017 - dl.acm.org
This paper explores how fork-join parallelism, as supported by concurrency platforms such
as Cilk and OpenMP, can be embedded into a compiler's intermediate representation (IR) …

[PDF][PDF] Inter-disciplinary research challenges in computer systems for the 2020s

A Cohen, X Shen, J Torrellas, J Tuck, Y Zhou, S Adve… - 2018 - research.csc.ncsu.edu
The broad landscape of new technologies currently being explored makes the current times
very exciting for computer systems research. The community is actively researching an …

GenMC: A Model Checker for Weak Memory Models

M Kokologiannakis, V Vafeiadis - International Conference on Computer …, 2021 - Springer
GenMC is an LLVM-based state-of-the-art stateless model checker for concurrent C/C++
programs. Its modular infrastructure allows it to support complex memory models, such as …