开发者社区> 技术小能手> 正文

Hennessy 与 Patterson 双双进驻 Google,是计算机科学新时代的曙光

简介: John Hennessy 和 David Patterson 在计算机架构领域可谓是无人不知无人不晓,他们的成就包括 MIPS,RISC,RAID,以及两人合著的经典教科书《计算机体系结构:量化研究方法》。
+关注继续查看

John Hennessy 和 David Patterson 在计算机架构领域可谓是无人不知无人不晓,他们的成就包括 MIPS,RISC,RAID,以及两人合著的经典教科书《计算机体系结构:量化研究方法》。今天 Google 的母公司 Alphabet 宣布 John Hennessy 将接替 Eric Schimdt 就任董事长。而在这之前,David Patterson 就已经开始在 Google 担任杰出工程师,主要从事硬件架构方面的研究工作,Google 的 TPU 2 就有 Patterson 的贡献。

b896bdd7e8233ccfa43b136fc31b0f6a2aaa33bb

John Hennessy(上)与 David Patterson(下)可谓是计算机体系架构领域的传奇人物,RISC,MIPS,RAID 等多项重大成就

看到经典教科书《计算机体系结构:量化研究方法》的两位传奇作者多年后在 Google 再次双剑合璧,大家一定都会期待接下来会发生什么。事实上,Alphabet 选择 Hennessy 做董事会执行主席,看中的估计主要是其丰富的管理经验(其担任斯坦福大学校长的经历就是一个很好的例子);但是 Hennessy 的技术背景一定会对 Alphabet 以及 Google 未来的方向带来一些自己的印记。

Google 归根到底是一家计算机科学公司

目前虽然 Google 在人们的眼中是一家互联网公司,而其 CEO Pichai 则宣布 Google 是一家 AI 公司。然而,Google 的底色其实是计算机科学,多年来一直没有变过。

什么是计算机科学(computer science)?大多数人说起 CS,第一个想起的就是写代码,刷题,等等。事实上,计算机科学 = 软件 + 硬件,两者缺一不可。Google 的代码和算法确实全球第一,但是它从来也不缺乏硬件色彩。最早 Google 刚创业时,面临搜索请求量过大而服务器数量不够的问题。当时,互联网传统的做法是使用商用服务器,这种服务器无论是购买还是维护成本都非常高,以当时 Google 的财力无法大规模部署商用服务器来解决计算能力问题。这是,Google 天不怕地不怕的工程师选择了使用低成本的计算机配合合理的运行管理去做服务器,而最后事实证明这些低成本计算机工作地相当好!于是,就在 Yahoo 等传统搜索引擎还在慢慢行动时,Google 靠硬件上的创新以很低的成本解决了搜索引擎算力问题,在提升用户体验的同时快速抢占了市场。在这之后,Google 的 MapReduce 算法名扬天下,一举解决了大规模计算可扩展性的问题。MapReduce 解决的是如何在大规模硬件上高效率地执行计算,是算法和硬件的完美结合——在这里,硬件和软件都是系统不可或缺的一部分,都得到同样的重视。正因为如此,数据库算法的教材会教授 MapReduce,而计算机体系结构的教材也会讲 MapReduce。

可以说,Google 是真正得到了计算机科学精髓的公司,知道硬件和软件都是计算机不可或缺的部分,也不可偏废。所以,Google 会选择去自己开发芯片来满足自己的计算需求(如 TPU),而不是像其他互联网公司那样把自己限定在软件层。

摩尔定律成明日黄花,异构计算正在兴起

现在其实是计算机科学领域非常重要的转折时期。为什么这么说?因为在这之前的 1980~2010 年,摩尔定律仍然处于其全盛时期,“18 个月处理器性能翻番” 的范式统领着计算机科学界。正因为 CPU 如此强势,因此在那个时候,软件更关注如何在通用处理器上完成运算,编程中硬件被抽象到根本看不到。

然而,到了今天,摩尔定律遇到了技术和经济上的双重瓶颈,处理器性能的增长速度越来越慢,然而社会对于计算能力的需求增速却并未减缓,甚至在移动应用、大数据、人工智能等新的应用兴起后,对于计算能力、计算功耗和计算成本等提出了新的要求。传统的完全依赖 CPU 的计算机已经无法满足现有的需求,因此异构计算(heterogeneous computing)则又回到了人们的视线中。与完全依赖于通用 CPU 及其编程模型的传统软件编写模式不同,异构计算的整个系统包含了多种基于特定领域架构(domain-specific architecture, DSA)设计的处理单元。每一个 DSA 处理单元都有负责的独特领域并针对该领域做优化,当计算机系统遇到相关计算时便由相应的 DSA 处理器去负责。相比 CPU 必须覆盖所有的计算类型,由于 DSA 处理单元只需负责少数几个领域的计算,因此可以把优化做到极致,同时计算效率也远高于传统 CPU。目前非常流行的 AI 芯片就是 DSA 处理单元的一个例子,相比于传统的 CPU 可以实现百倍以上的计算能力提升以及万倍以上的能效比提升,可见 DSA 处理单元的优势。可以说在 CPU 的潜力挖掘见底的今天,异构计算将会成为下一代计算力提升的新范式。

Google 的新计算机科学

Google 一直是异构计算的践行者,TPU 就是异构计算在人工智能应用的一个很好例子。而 Hennessy 和 Patterson 也是异构计算的忠实拥护者和布道人。在 Hennessy 和 Patterson 去年春天斯坦福大学的演讲中,他们明确表达了异构计算将会是下一代计算范式的观点(详见 RISC-V 与 DSA! 计算机架构宗师 Patterson 与 Hennessy 演讲实录)。因此,在他们两位宗师会师 Google 之后,我们可以预期 Google 会在异构计算上有更多的投入以及相关技术诞生。

e877f315139a8e0d437c46d7af6c87d84d0f2d51

Hennessy 和 Patterson 在去年斯坦福的演讲中反复强调 DSA 和异构计算的概念

根据以上思路,我们也可以做出一些其他有趣的推理。首先,我们预计未来 Google 会推出更多有特色的硬件,而且 Google 将会在底层芯片上也有更多自己的设计,就象我们在 Pixel2 手机里看到的 IPU(详见)。而 AI 更是一个非常适合异构计算发挥的场景——一方面,基于深度学习的 AI 对于计算能力要求很高,因此需要异构计算才能达到算力需求;另一方面,为了把 AI 普及到生活的各个角落,还必须有能够高效率计算 AI 算法的边缘计算芯片和硬件。AI + 异构计算将会成为 Google 未来的主题。其次,异构计算中每一个 DSA 处理单元的编程模型都会有所不同,这也对程序员的能力提出了新的要求。一个典型的例子是今天常见的 Nvidia GPU 使用的 CUDA,想要完全释放出 GPU 的计算能力,在编程时必须熟悉其硬件编程模型。在异构计算时代的程序员必须对于算法和硬件模型融会贯通,才能写出高质量的代码。因此,未来程序员还必须要懂硬件!Hennessy 和 Patterson 去年春天斯坦福大学的演讲中也提到过,未来编程工作会比现在更复杂,因为要考虑硬件才能实现高效代码。正如 Hennesy 所说,“The easy ride of software is over”。


原文发布时间为:2018-02-5

本文作者:矽说

本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”微信公众号

原文链接:Hennessy 与 Patterson 双双进驻 Google,是计算机科学新时代的曙光

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
七个”小矮人” | 计算机百年趣味史(上)第7篇
这里我们需要关注的是一个他们至今人在使用的技术,Burroughs公司的B5000计算机是最早实现内存段的计算机之一,也可能是第一台基于内存段提供虚拟内存的商用计算机。
1436 0
PC时代 | 计算机百年趣味史(上)第9-10篇
随着PC机中处理器的性能与日俱增,完全具备的服务器的处理器能力,自然而然也就产生了PC服务器,另外也通常把基于Intel处理器的服务器也叫作X86服务器。当然现在arm芯片也强大到可以用作服务器里了。
1280 0
《逻辑与计算机设计基础(原书第5版)》——1.4 算术运算
本节书摘来自华章计算机《逻辑与计算机设计基础(原书第5版)》一书中的第1章,第1.4节,作者:(美)M.莫里斯·马诺(M. Morris Mano)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1266 0
《计算机组成原理》----第2章 计算机算术 2.1 数据是什么
“我常说:当你能衡量你正在谈论的东西并能用数字加以表达时,你才真的对它有了几分了解;而当你还不能测量,也不能用数字表达时,你的了解就是肤浅的和不能令人满意的。尽管了解也许是认知的开始,但在思想上则很难说你已经进入了科学的阶段。
1565 0
SFKP • 计算机百科丨云原生才是「吞噬世界」的那条大鱼...
SFKP • 计算机百科丨云原生才是「吞噬世界」的那条大鱼...
56 0
人类首台计算机 | 计算机百年趣味史(上)第3篇
上个世纪30年代,一个保加利亚裔的爱荷华州立大学物理系任副教授阿塔纳索夫在,为了给学生讲授如何求解线性偏微分方程组,不得不每天面对繁杂的计算,为了提高教学质量同事减轻自身的工作负担。阿塔纳索夫开拓新的思路,从1935年开始探索运用数字电子技术进行计算工作的可能性,同时找了一个劳工(硕士学位的在读研究生克利福德·贝瑞),成功制造了一台计算机。
1544 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
20413 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
18684 0
大机时代 | 计算机百年趣味史(上)第6篇
这个System/360被评为历史上与福特T型车、波音第一架喷气式飞机707齐名的三大商业成就之一。这个产品不光改变了整个计算机行业,也改变了IBM。
1317 0
+关注
技术小能手
云栖运营小编~
7208
文章
9
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载