zoukankan      html  css  js  c++  java
  • [转]突破“内存墙”,CPU可以性能更好,能耗更低

    文章链接:

    1.  CPU缓存性能的重要性
    2.  缓存和内存墙的介绍
    3.  LRU缓存算法的错误和UcomPower的发现
    4.  评述高速CPU设计的两种常见思路
    5.  UcomPower的CPU设计新思路
    6.  应用新缓存技术的CPU的市场机会

    缩写(不想一篇篇看就看这个):

    目前的内存主要采用DRAM. DRAM传输速度不断增加,但访问延迟较大的问题始终无法解决。
    DRAM延迟使得CPU需要花时间等待内存访问完成。这就是“内存墙”。“内存墙”带来一系列问题,包括限制CPU性能、增加CPU发热量等。
    UcomPower提出CPU计算时间只占程序总耗时的不到20%. 剩下的80%多很大一部分由"内存墙"引起。因此无论是提高CPU频率还是增加核心数目对提高性能没有太大帮助。
    SRAM存储密度太低,成本太高,因此DRAM内存暂时不可替代。通过改进内存技术消除“内存墙”目前不可能。
    缓存是目前能够抵抗“内存墙”唯一有效的手段。
    缓存的基础理论是时间局域性原理(Principle of Temporal Locality). 通俗地讲就是:最近被访问到的项目,在较近的未来较有可能被再次访问到。
    LRU是一个体现了时间局域性原理的缓存替换算法,一直以来,几乎所有的CPU缓存都是采用的LRU及其变种。
    实验/分析后,UcomPower发现时间局域性原理的描述并不准确:内存访问痕迹分布是极其不均衡的,程序的内存地址的使用计数呈现出强烈的“长尾”形态。大部分地址只用一次,这些地址完全没有缓存的价值。
    而LRU认为每一个地址在将来都是有用的,因此会把大量的只用一次的内存地址保存很久,而CPU缓存中有价值的地址会被排挤出去。
    UcomPower发明了一个LRU缓存替换算法的改进,称之为WLRU。WLRU能够很快地排除只用一次的内存地址,从而保护了CPU缓存中有价值的内存地址。
    UcomPower认为自己的这项技术有助于制造出具有革命性意义的CPU,进而打败Intel, nVidia等传统芯片巨头。

    我的几点看法:

    1. 文章商业味比较重。LRU算法不能说有错误,只能说解决方案不够优。
    2. 没有提供有力的实验数据说明WLRU的有效性(WLRU就是他们的命根子,掖着不放可以理解)。
    3. 只凭借WLRU,国产CPU就可以打败Intel吗?工艺/其他众多技术细节怎么解决?靠ARM/MIPS授权+代工的模式?(做软件,这一块我了解不多)

  • 相关阅读:
    汪曾祺《生活是很好玩的》有感
    中小学Python编程语言教学
    1. python 基础课程目录
    白盒测试之gmock入门篇
    Apache与Tomcat 区别联系
    白盒测试之gtest第一个demo
    白盒测试之初识gtest工具
    纯手工打造dropdownlist控件
    android 线程的使用总结
    染色板QPlette
  • 原文地址:https://www.cnblogs.com/mdyang/p/2038544.html
Copyright © 2011-2022 走看看