レイテンシ
英語表記で latency
データの転送要求などのリクエストを発してから、リクエストの結果が返ってくるまでに かかる遅延時間のことです。
レイテンシを理解することが、お客様環境で発生しているパフォーマンス問題を 解決する近道となります。
I/Oタイプ | レイテンシ | 補足 |
---|---|---|
L1キャッシュ参照 | 0.5ns | |
分岐予測失敗 (Branch Mispredict) | 5ns | |
L2キャッシュ参照 | 7ns | 14x L1 cache |
相互排他 (Mutex) ロック/アンロック | 25ns | |
メインメモリ参照 | 100ns | L2キャッシュx 20、L1キャッシュx 200 |
Zippyを使った1KBの圧縮 | 3,000ns | |
1Gbsネットワークで1KBを転送 | 10,000ns | 0.01 ms |
SSDから4Kをランダム Read | 150,000ns | 0.15 ms |
メモリから1MBシーケンシャルRead | 250,000ns | 0.25 ms |
データセンター内のラウンドトリップ | 500,000ns | 0.5 ms |
SSDから1MBシーケンシャルRead | 1,000,000ns | 1 ms, 4x memory |
ディスクシーク(HDD) | 10,000,000ns | 10ms、データセンターラウンドトリップx20 |
ディスクから1MBシーケンシャルRead | 20,000,000ns | 20 ms、メモリ x 80、SSD x 20 |
CAカリフォルニア州からパケット転送 -> オランダ -> カリフォルニア州 | 150,000,000ns | 150 ms |
(典拠: Jeff Dean, https://gist.github.com/jboner/2841832 )