A Concurrency Cost Hierarchy | Performance Matters
travisdowns.github.io · 10,026 words · saved by 1 readers
Concurrent operations can be grouped relatively neatly into categories based on their cost
Introduction Concurrency is hard to get correct, at least for those of us unlucky enough to be writing in languages which expose directly the guts of concurrent hardware: threads and shared memory. Getting concurrency correct and fast is hard, too. Your knowledge about single-threaded optimization often won’t help you: at a micro (instruction) level we can’t simply apply the usual rules of μops, dependency chains, throughput limits, and so on. The rules are different. If that first paragraph got your hopes up, this second one is here to dash them: I’m not actually going to do a deep dive…
saved by
related reading
- abseil / Performance Hintsabseil.io
- Understanding and expressing scalable concurrencyaturon.github.io
- Infographics: Operation Costs in CPU Clock Cycles - 6IT6it.dev
- Reading 14: Concurrencyweb.mit.edu
- A Fundamental Turn Toward Concurrency in Softwaregotw.ca
- sled theoretical performance guide | sled-rs.github.iosled.rs
- sled theoretical performance guide | sled-rs.github.iosled.rs
- abseil / Performance Hintsabseil.io
- Multithreading (computer architecture) - Wikipediaen.wikipedia.org
- Measuring Mutexes, Spinlocks and how Bad the Linux Scheduler Really is | Probably Danceprobablydance.com
- ECE 459 Notes-c7e788e7-ce2d-4c9e-aea7-501503322e57.pdflooseleaf-app.s3.us-east-2.amazonaws.com
- notes.pdfstudent.cs.uwaterloo.ca