CSAPP 第六章-存储器层次结构 小结

  • 简单模型中,存储器是一个线性的字节数组。真实模型中,是一个具有不同容量,成本,访问时间的存储层次结构(存储器山)
  • 程序的局部性很重要,对程序性能有很重要的影响。
  • 计算机系统一个基本而持久的思想,如果你理解了系统是如何将数据在存储器层级结构中上下移动,你就可以编写程序,让数据存储在层次结构中较高的地方,从而CPU可以更快的访问到他们。
  • 编写程序实现功能是最简单的,如何让编写的程序拥有最高的性能,例如利用程序的局部性原理,才是更重要的

  • 程序的局部性分为时间局部性和空间局部性。
  • 时间局部性:程序更多的引用最近访问过的数据项集合。
  • 空间局部性:程序更多的引用邻近的数据项集合。
  • 原则有三:重复引用同一个变量;步长尽可能小;循环体越小,迭代次数越多。

  • 能量墙:增加CPU的时钟频率,芯片的功耗太大,于是转向多核。

  • 现代计算机系统的各个层次,从硬件到操作系统,再到应用程序,他们的设计都利用了局部性:缓存
  • 存储器层次结构:中心思想:对于每个K,位于K层的更小更快的存储设备作为K+1层设备的缓存。
  • 传送单元:block。
  • 缓存命中和缓存不命中:LRU替换策略。(操作系统)

  • 关于延迟:
  • CPU:0;
  • L1:1;
  • L2:10;
  • L3:30;
  • 虚拟存储器:100(MM)
  • 缓冲区缓存:100(MM+OS)
  • 磁盘:100,000
  • 网络:10 000 000
  • web缓存:1 000 000 000
编写缓存友好的代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值