每个程序员都应该知道的延迟值

L1 cache reference                                               0.5ns
一级缓存引用

Branch mispredict                                                    5ns
分支错误预测

L2 cache reference                                                  7ns
二级缓存引用

Mutex lock                                                           100ns
互斥锁定

Main memory reference                                       100ns
主存引用

Compress 1K bytes with Zippy                            10,000ns
用Zippy压缩1K字节

Send 2K bytes over 1 Gbps network                   20,000ns
通过1Gbps网络发送2K字节

Read 1 MB sequentially from memory              250,000ns
从内存中读取1MB

Round trip within same datacenter                    500,000ns
数据中心的往返路程

Disk seek                                                        10,000,000ns
磁盘寻道

Read 1 MB sequentially from network            10,000,000ns
从网络连续读取1MB

Read 1 MB sequentially from disk                   30,000,000ns
从磁盘连续读取1MB

Send packet CA->Netherlands->CA                150,000,000ns

在CA向荷兰发包再返回

 

补充一段关于Branch mispredict的介绍:来自Wiki

Branch misprediction occurs when a central processing unit (CPU) mispredicts the next instruction to process in branch prediction, which is aimed at speeding up execution.

During the execution of certain programs there are places where the program execution flow can continue in several ways. These are called branches, or conditional jumps. The CPU also uses a pipeline which allows several instructions to be processed at the same time. When the code for a conditional jump is read we do not yet know the next instruction to execute and insert into the execution pipeline. This is where branch prediction comes in.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值