C++ and Beyond 2012: Herb Sutter - atomic Weapons 1 of 2
alexsmail4 HN recommenders · 2020–2024
71K views · talk · evergreen · Uploaded 2017-11-06
Herb Sutter's deep C++ and Beyond 2012 talk on atomics and the C++ memory model, covering why programmers chasing top performance need to understand hardware ordering. This is part one of two.
HN treats it as the classic go-to for learning atomics and memory ordering, recommended over books.
49:55How Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Видео с мероприятий {speach!
6:538-bit computer update
Ben Eater
1:12:27CppCon 2015: Andrei Alexandrescu “std::allocator...”
CppCon
1:21:22Light Years Ahead | The 1969 Apollo Guidance Computer
TNMoC
51:18Lexical Scanning in Go - Rob Pike
GoogleFOSSSydney
27:25“Hello, world” from scratch on a 6502 — Part 1
Ben Eater
1:02:42Preventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)
DevGAMM
47:52Finding the Missing Memristor - R. Stanley Williams
The Qualcomm Institute
5 comments from Hacker News
If you’re prepared and willing to learn much more about atomic operations than you ever thought you would, there’s no substitute to Herb Sutter’s classic talk ”atomic<> Weapons” from C++ And Beyond 2012 [1]. [1] [VIDEO]
For a somewhat less "for dummies" treatment of the C++ memory model, see Herb Sutter's classic talk "atomic<> Weapons" [1]. [1] [VIDEO]
For a more in depth introduction to the topic with a lot of practical code examples, I highly recommend Herb Sutter’s excellent talk: Part 1 [VIDEO] Part 2 [LINK]
Well written article, nice and to the point. Do recommend. Decades ago I declared myself too stupid to use shared memory with threading; I have learned to avoid this whenever possible, or abstract away the memory access under a safe layer as soon as possible. One of the greatest decisions of my career. Memory model semantics is one of the parts of systems programming that is generally poorly understood; I have had long discussions with senior programmers who have spent their careers carelessly threading their code without realizing what is happening under the hood. Not only did some of them not properly understand the acquire/release model, but they were not even aware of its existence. For a more in-depth explanation, I recommend Sutter's excellent talk "Atomic <> weapons": [VIDEO] . It is a two hour lecture, but it will be worth your time.
"Is Parallel Programming Hard, And, If So, What Can You Do About It?" is one of the best books about atomics and concurrency, and my #2 recommendation. [LINK] My #1 actually isn't a book at all, but the two "atomic Weapons" talks by Herb Sutter, which are extremely good. [VIDEO] [LINK]