当摩尔定律(Moore’s Law)、登纳德缩放定律(Dennard Scaling)等一系列半导体规律逐渐失效时,设计面向未来的计算机系统需要我们改变旧有的观念。65年以来,计算机体系结构以惊人的发展速度历经了四个时代,最终来到了当前第五个时代的开端。这65年里的巨大进步使得计算机的性能得到了不可思议的提升。单单在过去的40年,微处理器的性能就提高了106之多,整整快了100万倍。这来源于一系列架构层面的创新。第一,系统架构由8比特、16比特变宽到64比特;第二,指令级并行度提高了一个数量级;第三,多核开始出现,工程师可以在一个芯片上实现多个处理器核,以获得更高性能。同时,在这 65年中,电路的时钟频率也提高了1000余倍,这得益于底层半导体工艺技术的革新。摩尔定律成功预言了晶体管数量的增长,每18至24个月翻一番;登纳德缩放定律表明每个晶体管的功耗会随着晶体管数量的增长而降低,从而实现在算力提升的同时,单次计算的能耗反而可以下降。不幸的是,这两个重要的规律目前都开始渐渐失效了。

过去65年间计算机经历的四个时代

回顾计算机系统发展史上的各个时代,最早的时候,每个计算机模型甚至每台计算机都不相同(第一代)。IBM360的出现改变 了这一情况,它开始采用中小规模的集成电路,使我们能够建造大型机、小型机以及后来的超级计算机(第二代)。但是这些系统的实现成本高昂,导致它们逐步退出历史舞台,被微处理器所取代。得益于摩尔定律带来的晶体管规模增长,微处理器逐渐 具备了更强大的功能能更好地挖掘出指令级并行,性能与效率得以提升。RISC和CISC(复杂指令集计算机,Complex Instruction Set Computers)架构也是在这一时期被提出并得到发展,使微处理器的性能越来越强(第三代)。然而有一天,指令级并行的效果逼近上限,设计师开始关注多核微处理器:在同一芯片上实现多个独立计算核心以持续提高性能(第四代)。当前,由于登纳德缩放定律的结束和摩尔定律的减缓,第四个时代也即将终结。

从20世纪80年代中期至21世纪初,处理器性能以每年52%的速度增长。与之相对的是,在过去的五六年中仅仅取得了每年 3.5%的缓慢增速。摩尔定律的减缓只能解释其中一部分原因。如果我们根据戈登·摩尔1975年的预测做出外推,所应达到的晶体管数量与实际情况之间相差了一个数量级。但是,晶体管的总体数量仍然实现了100万倍的增长。在100万倍的基础上仅仅相差一个数量级,其实并不是一个巨大的差距,但这一差距正在慢慢变大。同时,由于晶体管的制造成本也在增加,单个晶体管的平均成本的降低速度正在变缓。因此,这仍然是一个现实存在的挑战。

单核处理器性能趋势

另一个更大的挑战在于登纳德缩放定律。登纳德缩放让我们能够在维持同等能耗的情况下持续提高性能。但自从2007年开始,这一缩放效应开始变缓,出现了几次阶跃。直至2012年,每平方纳米的功耗开始快速升高,导致能耗增大,效率下降。能效是一个非常重要的指标。过去20年,能效对于各个层面应用的重要性与日俱增。不论在移动端和物联网应用上,还是在大规模的云计算数据中心中,能效都成为了一个至关重要的因素。例如,在大规模数据中心中,除了计算机系统本身,制冷设施也会消耗能量,使功耗成为了数据中心里 第二大成本因素。另一方面,由于处理器的散热目前已经达到了极限,我们现在不得不采用一些在以前看来不可想象的技术:芯片会自动关闭一些功能来避免过热。即使有更好的封装技术,散热能力和电池容量仍会成为能效的瓶颈。为了提高能效,我们需要降低功耗,或者在不增加功耗的条件下提升性能。

半导体工艺、能耗与登纳德缩放

事实上,真正终结了之前几个时代的原因正是 我们达到了能效的极限。2005年左右,单核处理器“榨干”了指令级并行,达到了其效率上限。指令级并行的终结开启了第四个时代,在多核处理器上由程序员显式指定并行机会。当然,即使是在多核处理器上,由于阿姆达尔定律的制约,我们永远也无法达到完全理想的高并行效率。这对于提升处理器能效是一个非常严峻的限制。于是,我们看到多核通用处理器的发展也开始碰壁。设想一个类比的情况,缓存是计算机系统中最为重要的技术之一。然而,如果我们不断增大缓存的容量,最终我们的性能收益会逐步递减,但功耗却会持续不断地增加。

计算机发展的三大定律,计算机体系结构发展的四个时代介绍相关推荐

  1. 计算机是最大的一片云,计算机体系结构发展的四个时代介绍

    当摩尔定律(Moore's Law).登纳德缩放定律(Dennard Scaling)等一系列半导体规律逐渐失效时,设计面向未来的计算机系统需要我们改变旧有的观念.65年以来,计算机体系结构以惊人的发 ...

  2. IT定律之计算机行业发展规律——三大定律

    名称 内容 摩尔定律 由英特尔(Intel)创始人之一--戈登·摩尔提出来的.内容大致为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍.换言之,每一 ...

  3. 《计算机组成原理》----1.3 计算机的发展

    本节书摘来自华章出版社<计算机组成原理>一书中的第1章,第1.3节, 作 者 Computer Organization and Architecture: Themes and Vari ...

  4. 计算机及网络技术发展趋势,网络技术发展对计算机技术的影响

    当前形势下,网络技术的不断发展对计算机和信息技术发展产生重要影响,计算机和信息技术借助网络技术发展实现更高标准的发展,对人们的生活方式和社会发展都产生重要影响.为了弄清网络技术发展对计算机及信息技术的 ...

  5. 计算机发展最新趋势素材,计算机方面论文范文素材,与关于计算机科学与技术的趋势探究相关论文网...

    计算机方面论文范文素材,与关于计算机科学与技术的趋势探究相关论文网 本论文是一篇计算机方面论文网,关于关于计算机科学与技术的趋势探究相关毕业论文格式模板范文.免费优秀的关于计算机及计算机技术及量子计算 ...

  6. 计算机的发展经历阶段应用领域,计算机的发展阶段

    计算机的发展阶段以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 计算机经历了四个发展阶段. 1.电子管数字机(1946- ...

  7. 未来计算机控制器趋势,未来DCS控制系统技术发展4大趋势

    DCS系统是继PLC之外的一大自动化控制系统,它在化工.火电等领域的应用极为广泛,但是生产方面的自动化技术需求进一步提高,传统的DCS系统已不能满足需要,需要进行技术升级. DCS系统由多台计算机分别 ...

  8. (计算机组成原理)第一章计算机系统概述-第一节:计算机发展历程

    文章目录 一:计算机硬件的发展 (1)计算机的发展历程 (2)计算机硬件的更新换代 二:计算机软件的发展 三:计算机的分类与发展方向 一:计算机硬件的发展 (1)计算机的发展历程 电子管时代:第一代计 ...

  9. 计算机采用逻辑元件的发展顺序是,全国计算机等级考试一级选择题以及答案

    全国计算机等级考试一级选择题以及答案 .................. 1.世界上第一台电子计算机诞生于( B )年. A)1939 B)1946 C)1952 D)1958 2.冯·诺依曼研制成 ...

最新文章

  1. soul一直显示正在登录聊天服务器,soul这个软件,为什么有些人在玩的时间很久以后(两百天以上),就不会再主动和其他人打招呼了?...
  2. 用Zebra 在Linux 上构建路由器实战手册
  3. wps右键新建里面没有word和excel_wps常用的基本操作方法
  4. 只要存心谦卑,各人看别人比自己强。
  5. 配置Nginx来支持php
  6. python一键取消注释_Python文件去除注释的方法
  7. python播放本地视频_python opencv 读取本地视频文件 修改ffmpeg的方法
  8. swift项目 9.3以前版本模拟器运行出错
  9. Git的使用_思维导图
  10. 基于 XGBoost 对 Santander 银行用户购买行为进行预测
  11. 把java程序打包成.exe
  12. docker 安装 MySQL 8,并减少内存占用 记录
  13. HashMap死循环讲解(JDK1.8 之前)
  14. 汤小丹计算机操作系统慕课版课后题答案第四章:进程同步
  15. 基于easyx低配版flappybird
  16. [cocos2d-x]SpaceFighting[安卓/IOS都适用]
  17. SQLI DUMB SERIES-2
  18. jump label
  19. linux把m4s格式转换mp4,史上最详细!如何将B站缓存的m4s文件无损转换为mp4格式
  20. 攻防世界 Miscellaneous-200

热门文章

  1. python设计编程体验中心_看着漫画学Python是种怎样的体验?编程从此 变得有趣好学...
  2. 递归——迭代法求平方根
  3. 木偶然-2014.2.21
  4. 选项卡 js操作
  5. String类型日期比较大小
  6. 爱美客暴利:靠卖玻尿酸9个月净利10亿 市值超900亿
  7. FileInputStream和FileOutputStream
  8. 在线办公大势所趋,细说3种主流云办公方式优劣
  9. ecovacs扫地机器人故障_科沃斯扫地机故障怎么办 科沃斯扫地机故障及解决方案...
  10. Vue mixin使用基础