2021-12-22
|~3 min read
|501 words
Credit: Hellerbarde forked jboner’s gist on latency and provided several useful graphics and scale to help put latency numbers in context in their own version.
Operation | Latency | Conversion |
---|---|---|
L1 cache reference | 0.5 ns | |
Branch mispredict | 5 ns | |
L2 cache reference | 7 ns | |
Mutex lock/unlock | 25 ns | |
Main memory reference | 100 ns | |
Compress 1K bytes with Zippy | 3,000 ns | = 3 µs |
Send 2K bytes over 1 Gbps network | 20,000 ns | = 20 µs |
SSD random read | 150,000 ns | = 150 µs |
Read 1 MB sequentially from memory | 250,000 ns | = 250 µs |
Round trip within same datacenter | 500,000 ns | = 0.5 ms |
Read 1 MB sequentially from SSD* | 1,000,000 ns | = 1 ms |
Disk seek | 10,000,000 ns | = 10 ms |
Read 1 MB sequentially from disk | 20,000,000 ns | = 20 ms |
Send packet CA->Netherlands->CA | 150,000,000 ns | = 150 ms |
* Assuming ~1GB/sec SSD
To make these scales more relatable, Hellerbarde multipled all of the times by 1 billion.
~ size | Operation | Latency | Human “size” (i.e., 1 billion times as long) |
---|---|---|---|
Minute | L1 cache reference | 0.5 s | One heart beat (0.5 s) |
Minute | Branch mispredict | 5 s | Yawn |
Minute | L2 cache reference | 7 s | Long yawn |
Minute | Mutex lock/unlock | 25 s | Making a coffee |
Hour | Main memory reference | 100 s | Brushing your teeth |
Hour | Compress 1K bytes with Zippy | 50 min | One episode of a TV show (including ad breaks) |
Day | Send 2K bytes over 1 Gbps network | 5.5 hr | From lunch to end of work day |
Week | SSD random read | 1.7 days | A normal weekend |
Week | Read 1 MB sequentially from memory | 2.9 days | A long weekend |
Week | Round trip within same datacenter | 5.8 days | A medium vacation |
Week | Read 1 MB sequentially from SSD | 11.6 days | Waiting for almost 2 weeks for a delivery |
Year | Disk seek | 16.5 weeks | A semester in university |
Year | Read 1 MB sequentially from disk | 7.8 months | Almost producing a new human being |
Year | The above 2 together | 1 year | |
Decade | Send packet CA -> Netherlands -> CA | 4.8 years | Average time it takes to complete a bachelor’s degree |
Hi there and thanks for reading! My name's Stephen. I live in Chicago with my wife, Kate, and dog, Finn. Want more? See about and get in touch!