Latency Numbers

2 minutes read



Latency Numbers

Years ago I read an article about computer performance. To illustrate the computing power of a CPU, in contrast to the data-providing parts of a computer, it symbolized a cycle-time of the processor with 1 second. From the view of a CPU, how long to wait for data in relation.

While searching a little bit, I found several quite old sources for the numbers and realized they haven’t changed much over the years.

periphery20122 GHz => 1 Hz20254 GHz => 1 Hz
processor cycle0.51.0 sec.0.251,0 sec.
execute typical instruction0.751.5 sec.0.41.6 sec.
L1 cache reference0.51.0 sec.0.72.8 sec.
L2 cache reference714.0 sec.2.510.0 sec.
Branch mispredict510.0 sec.832.0 sec.
Mutex lock/unlock2550.0 sec.25100.0 sec.
Main memory reference1003.3 min.805.3 min.
Compress 1K bytes with Zippy3,000100.0 min.2,000133.3 min.
Send 2K bytes over 1 Gbps network16,0008.9 h16,00017.8 h
Read 1 MB sequentially from memory250,0005.8 days20,0000.9 days
Read 1 MB sequentially from SSD1,000,00023.1 days200,0009.3 days
Round trip within same datacenter500,00011.6 days80,0003.7 days
Disk seek HDD10,000,0007.7 month4,000,0006.2 month
Read 1 MB sequentially from HDD20,000,00015.4 month10,000,00015.4 month
Send packet CA->NL->CA150,000,000115.7 month145,000,000223.8 month

Source:

https://gist.github.com/hellerbarde/2843375

https://surana.wordpress.com/2009/01/01/numbers-everyone-should-know/

https://norvig.com/21-days.html#answers