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.
Or read this on Hacker News