CPU访问计算机各组件周期

计算机的核心是cpu,但是光有cpu还不行,它还需从其它组建获取数据。所以cpu读取数据的时间就会影响到系统的性能。在现代计算机中,分级存储大幅提升了这个性能。

数据和分析

来自stackoverflow的数据:

目前主流cpu的频率都在2GHZ左右,按频率2GHZ换算了一下周期和延时。

Core i7 Xeon 5500 Series Data Source Latency (approximate)
L1 CACHE hit, ~4 cycles                                      一级缓存,命中,4个周期,2纳秒
L2 CACHE hit, ~10 cycles                                      二级缓存,命中,10个周期,5纳秒
L3 CACHE hit, line unshared ~40 cycles                                      三级缓存,命中,非共享,40个周期,20纳秒
L3 CACHE hit, shared line in another core ~65 cycles                                      三级缓存,命中,数据被另一个核心共享65个周期,32.5纳秒
L3 CACHE hit, modified in another core ~75 cycles remote                                      三级缓存,命中,数据被另一个核心修改75个周期,37.5纳秒
remote L3 CACHE ~100-300 cycles                                      远程L3缓存,100~300个周期,50~150纳秒
Local Dram ~60 ns                                      本地内存,120个周期60纳秒
Remote Dram ~100 ns                                     远程内存,200个周期100纳秒
SSD  30~300us                                     固态硬盘,6万~60万个周期30~300微秒
HDD 13.0ms                                     机械硬盘,2600万个周期13毫秒

一张截图:

cpu缓存访问延时

总结

可以看出,访问周期在逐级递增。硬盘和内存访问周期存在巨大的差距。

还有就是远程访问内存的延时会比本地多上接近一倍,所以现在产生了numa技术,禁止远程内存访问。

在硬盘和内存之间如果有一个中间性能的存储,或许能减缓持久化存储和易失性存储在速度上的差距。

转载请注明:旅途@KryptosX » CPU访问计算机各组件周期

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值