Get the latest tech news

Temporal Fuzzing I: Memory Models (2021)


Part of a Series: - Temporal Fuzzing I: Memory Models - Temporal Fuzzing II: Barriers, CAS and Locks Concurrency Reasoning about concurrent execution is hard. Let’s start with some pseudocode.

It relies on an implicit assumption of sequential consistency, where each thread executes its lines in order, and any modifications made are immediately and globally visible. What happens when you want to write a distributed database that doesn’t lose data, even when a disk fails during a network partition while rebalancing shards? To circle back to our motivating example, we can implement two threads and execute it both under ARM and Intel memory models, as well under sequential consistency, which never reorders operations.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of temporal fuzzing i

temporal fuzzing i

Photo of memory models

memory models