Forked from sergekukharev/Latency Numbers Every Programmer Should Know.md
Created
August 22, 2022 02:40
-
-
Save gustavobcx/6644fafa58e75e2340c4160ae6e79a4c to your computer and use it in GitHub Desktop.
Revisions
-
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,7 +1,7 @@ ### Latency Comparison Numbers (~2012) | **Name** | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | | L1 cache reference | 0.5 | ns | | | | | | | Branch mispredict | 5 | ns | | | | | | | L2 cachereference | 7 | ns | | | | | 14x L1 cache | -
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 16 additions and 15 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,20 +1,21 @@ ### Latency Comparison Numbers (~2012) | **Name** | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | | L1 cache reference | 0.5 | ns | | | | | | | Branch mispredict | 5 | ns | | | | | | | L2 cachereference | 7 | ns | | | | | 14x L1 cache | | Mutex lock/unlock | 25 | ns | | | | | | | Main memory reference | 100 | ns | | | | | 20x L2 cache, 200x L1 cache | | Compress 1K bytes with Zippy | 3,000 | ns | 3 | us | | | | | Send 1K bytes over 1 Gb ps network | 10,000 | ns | 10 | us | | | | | Read 4K randomly from SSD | 150,000 | ns | 150 | us | | | ~1GB/sec SSD | | Read 1 MB sequentially from memory | 250,000 | ns | 250 | us | | | | | Round trip within same datacenter | 500,000 | ns | 500 | us | | | | | Read 1 MB sequentially from SSD | 1,000,000 | ns | 1,000 | us | 1 | ms | ~1GB/sec SSD, 4X memory | | Disk seek | 10,000,000 | ns | 10,000 | us | 10 | ms | 20x datacenter roundtrip | | Read 1 MB sequentially | 20,000,000 | ns | 20,000 | us | 20 | ms | 80x memory, 20X SSD | | Send pack et CA->Netherlands->CA | 150,000,000 | ns | 150,000 | us | 150 | ms | | ### Notes -
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,5 +1,5 @@ ### Latency Comparison Numbers (~2012) | --- | --- | -- | --- | --- | --- | --- | --- | | **L1 cache reference** | 0.5 | ns | | | | | | | **Branch mispredict** | 5 | ns | | | | | | -
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,6 @@ ### Latency Comparison Numbers (~2012) | **Name** | | | | | | | | | --- | --- | -- | --- | --- | --- | --- | --- | | **L1 cache reference** | 0.5 | ns | | | | | | | **Branch mispredict** | 5 | ns | | | | | | | **L2 cachereference** | 7 | ns | | | | | 14x L1 cache | -
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 6 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,5 +1,5 @@ ### Latency Comparison Numbers (~2012) | **Name**. | | | | | | | | | --- | --- | --- | --- | --- | --- | --- | --- | | **L1 cache reference** | 0.5 | ns | | | | | | | **Branch mispredict** | 5 | ns | | | | | | @@ -20,16 +20,21 @@ ### Notes 1 ns = 10^-9 seconds 1 us = 10^-6 seconds = 1,000 ns 1 ms = 10^-3 seconds = 1,000 us = 1,000,000 ns ### Credit By Jeff Dean: http://research.google.com/people/jeff/ Originally by Peter Norvig: http://norvig.com/21-days.html#answers ### Contributions Original: https://gist.github.com/jboner/2841832 ‘Humanized’ comparison: https://gist.github.com/hellerbarde/2843375 Visual comparison chart: http://i.imgur.com/k0t1e.png -
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 1 addition and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,7 +1,5 @@ ### Latency Comparison Numbers (~2012) | Name | a | a | a | a | a | a | a | | --- | --- | --- | --- | --- | --- | --- | --- | | **L1 cache reference** | 0.5 | ns | | | | | | | **Branch mispredict** | 5 | ns | | | | | | -
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 2 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,8 @@ # Latency Numbers ### Latency Comparison Numbers (~2012) | --- | --- | --- | --- | --- | --- | --- | --- | | **L1 cache reference** | 0.5 | ns | | | | | | | **Branch mispredict** | 5 | ns | | | | | | | **L2 cachereference** | 7 | ns | | | | | 14x L1 cache | -
sergekukharev revised this gist
Jan 11, 2019 . 1 changed file with 7 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,6 @@ # Latency Numbers ### Latency Comparison Numbers (~2012) | **L1 cache reference** | 0.5 | ns | | | | | | | **Branch mispredict** | 5 | ns | | | | | | | **L2 cachereference** | 7 | ns | | | | | 14x L1 cache | @@ -17,16 +17,19 @@ | **Send pack et CA->Netherlands->CA** | 150,000,000 | ns | 150,000 | us | 150 | ms | | ### Notes 1 ns = 10^-9 seconds 1 us = 10^-6 seconds = 1,000 ns 1 ms = 10^-3 seconds = 1,000 us = 1,000,000 ns ### Credit By Jeff Dean: http://research.google.com/people/jeff/ Originally by Peter Norvig: http://norvig.com/21-days.html#answers ### Contributions Original: https://gist.github.com/jboner/2841832 ‘Humanized’ comparison: https://gist.github.com/hellerbarde/2843375 Visual comparison chart: http://i.imgur.com/k0t1e.png -
sergekukharev created this gist
Jan 11, 2019 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,32 @@ # Latency Numbers ## Latency Comparison Numbers (~2012) | **L1 cache reference** | 0.5 | ns | | | | | | | **Branch mispredict** | 5 | ns | | | | | | | **L2 cachereference** | 7 | ns | | | | | 14x L1 cache | | **Mutex lock/unlock** | 25 | ns | | | | | | | **Main memory reference** | 100 | ns | | | | | 20x L2 cache, 200x L1 cache | | **Compress 1K bytes with Zippy** | 3,000 | ns | 3 | us | | | | | **Send 1K bytes over 1 Gb ps network** | 10,000 | ns | 10 | us | | | | | **Read 4K randomly from SSD*** | 150,000 | ns | 150 | us | | | ~1GB/sec SSD | | **Read 1 MB sequentially from memory** | 250,000 | ns | 250 | us | | | | | **Round trip within same datacenter** | 500,000 | ns | 500 | us | | | | | **Read 1 MB sequentially from SSD*** | 1,000,000 | ns | 1,000 | us | 1 | ms | ~1GB/sec SSD, 4X memory | | **Disk seek** | 10,000,000 | ns | 10,000 | us | 10 | ms | 20x datacenter roundtrip | | **Read 1 MB sequentially** | 20,000,000 | ns | 20,000 | us | 20 | ms | 80x memory, 20X SSD | | **Send pack et CA->Netherlands->CA** | 150,000,000 | ns | 150,000 | us | 150 | ms | | ## Notes 1 ns = 10^-9 seconds 1 us = 10^-6 seconds = 1,000 ns 1 ms = 10^-3 seconds = 1,000 us = 1,000,000 ns ## Credit By Jeff Dean: http://research.google.com/people/jeff/ Originally by Peter Norvig: http://norvig.com/21-days.html#answers ## Contributions Original: https://gist.github.com/jboner/2841832 ‘Humanized’ comparison: https://gist.github.com/hellerbarde/2843375 Visual comparison chart: http://i.imgur.com/k0t1e.png