分享|Science文章讨论后摩尔时代计算机性能提升的关键

现在最先进的芯片加工技术已经做到了5纳米,计算机硬件的提升似乎已经接近瓶颈。来自MIT,英伟达和微软的工程狮在Science发文讨论了后摩尔时代计算能力的提升。

9b9267ba52f5604309ff437044e45c88.png

4e2cfbf292dac0425e2525dac1c023ef.png

计算机性能的提高大部分来自数十年来计算机组件的小型化(miniaturization),也就是怎么把更多的半导体放到集成电路上。诺奖得主,物理学家理查德·费曼(Richard Feynman)在1959年致美国物理学会的演讲 There’s Plenty of Room at the Bottom中便预见了这一点。1975年,英特尔创始人戈登·摩尔(Gordon Moore)预测了这种小型化趋势的规律性,现在称为摩尔定律。目前半导体小型化已经接近于瓶颈,无法成为提高计算机性能的可行方法。如果计算能力的增长停滞不前,那么几乎所有行业都将面临生产力的挑战。虽然新兴技术(例如3D堆栈,量子计算,光子学,超导,神经形态计算和石墨烯芯片)也可能从最底层(Bottom)推动发展。这些技术处于起步阶段,无法与当今的半导体技术竞争。作者认为在短期内,计算机性能提升将更多地来自顶部(Top)。

ebf7640546a338673c1f7edf4c618296.png

摩尔定律(英语:Moore's law)是由英特尔(Intel)创始人之一戈登·摩尔提出的。其内容为:集成电路上可容纳的晶体管数目,约每隔两年便会增加一倍;经常被引用的“18个月”,是由英特尔首席执行官大卫·豪斯(David House)提出:预计18个月会将芯片的性能提高一倍(即更多的晶体管使其更快),是一种以倍数增长的观测。半导体行业大致按照摩尔定律发展了半个多世纪,对二十世纪后半叶的世界经济增长做出了贡献,并驱动了一系列科技创新、社会改革、生产效率的提高和经济增长。个人电脑、因特网、智能手机等技术改善和创新都离不开摩尔定律的延续。

Software

性能工程(Performance Engineering)可以消除由于传统软件开发策略而引起的程序效率低下问题。性能工程还可以根据其运行的硬件来定制软件,例如,以利用并行处理器和矢量单元。作者比较了不同语言计算两个4096 x 4096矩阵相乘。使用for循环,Python2需要约7个小时来计算矩阵乘积,仅达到机器峰值性能的0.0006%。Python 3,需要大概9个小时。而用Java可提高10.8倍的速度,用C可再提高4.4倍的速度,其执行时间比原始Python快47倍。从Python换成C的速度提高了近50倍,但利用硬件的特性还可以使运行速度提高1300倍。比如18核的并行(Parallel Loop),利用处理器的内存结构(divide and conquer),向量化(vectorization)以及使用英特尔的特殊指令集(AVX)。最终的优化代码仅需0.41 s即可完成,比原始Python代码的7个小时快60,000倍!

1e83fc32084ba4d9091195fd0bd0e155.png

当然,提高性能的代价是提高程序员的生产力,比如C比Python的编程更复杂,每一个使用的变量都需要提前定义。再看看最强大的AVX的语法,大概可以理解成它允许在一个核上并行你的operation,函数名和数据类型都让人望而却步。

dbba816c56bb32c3e86d6470b78fbd16.png

这个例子只是用于说明性能工程的潜在价值。虽然不是每个程序都可以通过性能工程将代码效率提高近五个数量级,但是大多数现代软件系统都具有充足的性能提升机会。优秀的程序猿能通过使用现有软件库中的优化代码来提高代码的效率。

有意思的是,简单搜索avx+fMRI发现几年前就有人用avx的指令集计算基于体素的功能连接。听起来好像实现起来也不麻烦,有数据,有函数,自己算correlation就行。然鹅性能工程完全是另外一个领域,devil is in the details,我们并非程序猿或者工程狮,因此知道C/C++之后还有CPU指令集就好了。文章中介绍的其他两个领域更是深不可测,感兴趣的可以点开原文了解。

Take Home
Message

后摩尔时代计算机性能提升的关键:

抽烟,喝酒,烫头

dc7d4d1de70a9df183c0a950b946b70f.png

7113c05ceb33009f3d050da558901d11.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值