atomic<> Weapons by Herb Sutter.
This session in one word: Deep.
It’s a session that includes topics I’ve publicly said for years is Stuff You Shouldn’t Need To Know and I Just Won’t Teach, but it’s becoming achingly clear that people do need to know about it. Achingly, heartbreakingly clear, because some hardware incents you to pull out the big guns to achieve top performance, and C++ programmers just are so addicted to full performance that they’ll reach for the big red levers with the flashing warning lights. Since we can’t keep people from pulling the big red levers, we’d better document the A to Z of what the levers actually do, so that people don’t SCRAM unless they really, really, really meant to.
With all the recent posts about simplicity and user interaction, some readers may be getting bored.
Never fear, something a bit more challenging for you.
Multicore memory models along with comments that cite even more research.
Plus I liked the line: “…reach for the big red levers with the flashing warning lights.”