Memory Ordering in CPUs
ibobev
53 points
6 comments
August 26, 2026
Related Discussions
Found 5 related stories in 47.9ms across 4,560 title embeddings via pgvector HNSW
- Processing in Memory: DRAM Is About to Do Math bhouston · 12 pts · August 26, 2026 · 50% similar
- What happens when a GPU reads memory ibobev · 105 pts · August 21, 2026 · 49% similar
- What happens when a GPU reads memory? somnial · 15 pts · August 13, 2026 · 48% similar
- You Probably Forget How Cheap Memory Used to Be jonbaer · 21 pts · August 26, 2026 · 46% similar
- Unified Memory, Explained: Why Mini PCs Can Run 70B Models a Big GPU Can't ermantrout · 71 pts · July 10, 2026 · 45% similar
Discussion Highlights (3 comments)
StillBored
Yes, but the contended case is often the critical part of an application’s performance. Weakly ordered CPUs therefore need fast barrier mechanisms, which in turn means re-creating much of the store-ordering, writeback buffering, and commit logic anyway.
gopalv
The good part is that at least there's some explicit C++ std::memory_order and std::sync::atomic::Ordering lets me pick where it really matters. For example, I built a skew handling model which needed low overhead cross-thread counters, where Ampere and Graviton was different from the M1 mac in benchmark - even down to the same assembly on different systems (cmov specifically).
BretonForearm
Would be useful for the article to start with a word on what memory ordering is. Edit: it means, (re)ordering of memory access operations esp. when multiple execution units (cores) operate in parallel. Weakly ordered (ARM, RISC-V): if Core 1 writes Memory 1 then Memory 2, but for some reason writing into Memory 2 is quicker, then Core 2 may see Memory2 written before Memory 1 is written. While strong ordering (x86) retains the original order.