C11Tester: A Race Detector for C/C++ Atomics Technical Report

02/16/2021
by   Weiyu Luo, et al.
0

Writing correct concurrent code that uses atomics under the C/C++ memory model is extremely difficult. We present C11Tester, a race detector for the C/C++ memory model that can explore executions in a larger fragment of the C/C++ memory model than previous race detector tools. Relative to previous work, C11Tester's larger fragment includes behaviors that are exhibited by ARM processors. C11Tester uses a new constraint-based algorithm to implement modification order that is optimized to allow C11Tester to make decisions in terms of application-visible behaviors. We evaluate C11Tester on several benchmark applications, and compare C11Tester's performance to both tsan11rec, the state of the art tool that controls scheduling for C/C++; and tsan11, the state of the art tool that does not control scheduling.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/27/2019

LLOV: A Fast Static Data-Race Checker for OpenMP Programs

In the era of Exascale computing, writing efficient parallel programs is...
research
06/08/2022

Comparative Analysis of Dynamic Data Race Detection Techniques

The consequences of data races can be potentially very problematic [1], ...
research
04/02/2022

A Study of Real-World Data Races in Golang

The concurrent programming literature is rich with tools and techniques ...
research
10/27/2020

Out-of-core Training for Extremely Large-Scale Neural Networks With Adaptive Window-Based Scheduling

While large neural networks demonstrate higher performance in various ta...
research
05/16/2022

Analyzing FreeRTOS Scheduling Behaviors with the Spin Model Checker

FreeRTOS is a real-time operating system with configurable scheduling po...
research
07/17/2018

Improving the "Correct Eventual Consistency" Tool

Preserving invariants while designing distributed applications under wea...
research
01/13/2016

Digital Image Forensics vs. Image Composition: An Indirect Arms Race

The field of image composition is constantly trying to improve the ways ...

Please sign up or login with your details

Forgot password? Click here to reset