NG体育娱乐头部处理器厂商,尤其是面向云端人工智能的处理器制造商,如AMD和Nvidia,已经表现出想要拥有更多计算业务的迹象,它们收购了软件、互连和服务器制造商。他们希望对“全栈”的控制能让他们设计出客户想要的产品。
亚马逊网络服务 (AWS)于 2015 年收购了芯片设计公司 Annapurna Labs,并开始以垂直整合的方式设计 CPU、AI 加速器、服务器和数据中心,从而领先于大多数竞争对手。8 月27 日,Graviton 系列 CPU 的技术负责人Ali Saidi和 Annapurna Labs 的工程总监Rami Sinno解释了垂直整合设计和亚马逊规模的优势,并向IEEE Spectrum介绍了该公司位于德克萨斯州奥斯汀的硬件测试实验室。
两人聊到了关于垂直整合的云公司需要什么样的工程师、Graviton 系列 CPU 的演变过程、AWS 的芯片设计有何不同,以及实验室位置如何加速设计等话题。
Rami Sinno:亚马逊是我的第一家垂直整合公司。这是有意而为之。我当时在Arm工作,正在寻找下一次冒险,研究行业的发展方向以及我希望留下什么。我研究了两件事:
一种是垂直整合的公司,因为大多数创新都在这里——当你控制完整的硬件和软件堆栈并直接交付给客户时,有趣的事情就会发生。
第二件事是,我意识到机器学习,总的来说是人工智能,将会变得非常非常强大。我不知道它到底会朝哪个方向发展,但我知道有些东西将会改变一代人,我想成为其中的一员。我之前就有过这样的经历,当时我参与了制造黑莓芯片的团队;这是行业的一次根本性转变。成为如此伟大、如此根本的东西的一部分,那种感觉真是太棒了。我想,“好吧,我又有机会成为这个根本性事物的一部分了。”
Rami Sinno:当然。当我招聘员工时,面试过程会寻找具有这种心态的人。让我举一个具体的例子:假设我需要一名信号完整性工程师。(信号完整性确保信号从 A 点到 B 点,无论它在系统中的哪个位置,都能正确地到达那里。)通常,您会聘请在信号完整性分析方面拥有丰富经验、了解布局影响、能够在实验室进行测量的信号完整性工程师NG体育娱乐。但这对我们团队来说还不够,因为我们希望我们的信号完整性工程师也能成为程序员。我们希望他们能够承担在系统级别运行的工作负载或测试,并能够对其进行修改或从头开始构建一个新的,以便在工作负载下查看系统级别的信号完整性影响。这就是接受灵活、跳出思维定势的培训的地方NG体育娱乐,这对我们进行开发的方式和服务客户的方式产生了巨大的回报。
归根结底,我们的责任是直接在数据中心为我们的客户提供完整的服务器。如果你从这个角度思考,你将能够在整个堆栈中进行优化和创新。设计工程师或测试工程师应该能够纵观全局,因为这是他们的工作,将完整的服务器交付给数据中心,并寻找最佳优化点。它可能不在晶体管级别、基板级别或电路板级别。它可能是完全不同的东西。它可能纯粹是软件。拥有这些知识和可见性,将使工程师的工作效率显著提高,交付给客户的速度显著加快。我们不会为了优化晶体管而费尽心机,因为下游的三行代码就可以解决这些问题,对吧?
Rami Sinno:我们在应届大学毕业生方面非常走运NG体育娱乐。最近的大学毕业生,尤其是过去几年的毕业生,表现非常出色。我对教育系统培养的工程师和计算机科学家对我们为他们提供的工作类型感兴趣的方式感到非常非常满意。
我们在寻找合适人才方面非常成功的另一个地方是初创公司。他们知道需要什么,因为从定义上讲,在初创公司,你必须做很多不同的事情。曾经创业过的人完全理解亚马逊的文化和思维方式。
Ali Saidi:我来这里大约七年半了。加入 AWS 时,我加入了一个秘密项目。有人告诉我:“我们将构建一些 Arm 服务器。不要告诉任何人。”
我们从 Graviton 1 开始。Graviton 1 实际上是我们证明可以使用不同架构在 AWS 中提供相同体验的工具。
云计算让我们能够让客户以非常低成本、低门槛的方式尝试,并说“它适合我的工作负载吗?”所以 Graviton 1 实际上只是证明我们可以做到这一点的工具,并开始向世界发出信号,我们希望围绕 ARM 服务器的软件能够发展,并且它们将变得更加重要。
Graviton 2 于 2019 年发布,是我们的第一款产品......我们认为它是一款市场领先的设备,针对通用工作负载、Web 服务器和诸如此类的东西。
它做得很好。我们有人运行数据库、Web 服务器、键值存储和许多应用程序……当客户采用 Graviton 时,他们会带来一个工作负载,并且他们看到了带来这个工作负载的好处。然后他们问的下一个问题是,“好吧,我想带来更多的工作负载。我应该带来什么?”有些地方它不够强大,特别是在媒体编码、拍摄视频并对其进行编码或重新编码或将其编码为多个流等方面。这是一个非常繁重的数学运算,需要更多的 [单指令多数据] 带宽。我们需要能够进行更多数学运算的内核。
我们还希望推动 [高性能计算] 市场的发展。因此,我们有一种称为 HPC 7G 的实例类型,我们的客户包括一级方程式赛车队。他们计算流体动力学,研究这辆车将如何扰动空气,以及这会如何影响后面的汽车。这实际上只是扩大了应用程序组合。当我们使用 Graviton 4 时,我们也做了同样的事情,它有 96 个核心,而 Graviton 3 只有 64 个。
Ali Saidi:在世界各地,大多数客户在采用 Graviton 时都取得了巨大的成功。偶尔,他们看到的性能与其他迁移不同。他们可能会说“我移动了这三个应用程序,性能提高了 20%;这很棒。但我把这个应用程序移到这里,性能没有任何提高。为什么?”看到 20% 真的很棒。但对我来说,以我这种奇怪的方式来说,0% 实际上更有趣,因为它给了我们一些可以和他们一起去探索的东西。
我们的大多数客户都对此类合作持非常开放态度。因此,我们可以了解他们的应用程序是什么,并为其构建某种代理。或者,如果是内部工作负载NG体育娱乐,那么我们可以只使用原始软件。然后,我们可以利用它来完成闭环,并研究下一代 Graviton 将具有哪些功能NG体育娱乐,以及我们将如何在那里实现更好的性能。
Ali Saidi:在芯片设计中,有许多不同的竞争优化点。我们常常面临一些相互冲突的需求,比如成本、调度、功耗、大小、哪些 DRAM 技术可用以及你何时将它们相交……最终,这是一个有趣、多方面的优化问题,需要找出在一定时间内可以构建的最佳产品。你需要把它做好。
Ali Saidi:和其他公司软硬件团队很少交流不同,Annapurna 和 AWS 的硬件人员和软件人员从第一天起就一起工作。软件人员编写最终将成为生产软件和固件的软件,而硬件则与硬件工程师合作开发。通过合作,我们正在关闭迭代循环。当你把硬件带到软件工程师的办公桌上时,你的迭代循环将持续数年。在这里,我们不断地迭代。在准备好硅片之前,我们会在模拟器中运行虚拟机。我们正在模拟 [一个完整的系统] 并运行我们要运行的大多数软件。
因此,当我们从代工厂拿回硅片时,软件就已经完成了。目前,我们已经看到大多数软件都能正常工作。因此,我们非常有信心,它一定会成功。
我认为,另一个因素就是完全专注于我们要交付的内容。你有很多想法,但你的设计资源几乎是固定的。无论我把多少想法放进桶里,我都无法雇佣那么多人,而且我的预算可能也是固定的。所以我放进桶里的每一个想法都会使用一些资源。如果这个功能对项目的成功并不重要,那么我就是在拿项目的其余部分冒险。我认为这是人们经常犯的一个错误。
Ali Saidi:当然。我们知道我们想要制造的产品是什么样子,需要哪些功能。我们不会试图制造一个企图进入多个市场的超集产品,相反的是,我们专注于一个市场。
Ali Saidi:AWS 一个非常有趣的方面是,我们是云,我们也在云中开发这些芯片。我们是第一家真正推动在云中运行 [电子设计自动化 (EDA)] 的公司。我们将模式从“我有 80 台服务器,这是我用于 EDA 的”改为“今天,我有 80 台服务器。如果我愿意,明天我可以有 300 台。第二天,我可以有 1,000 台。”
我们可以通过改变所使用的资源来压缩一些时间。在项目开始时,我们不需要那么多资源。我们可以关闭很多东西,而不必为此付出有效的代价。当我们接近项目结束时,现在我们需要更多的资源。而不是说:“好吧,我无法快速迭代,因为我有一台机器,而且它很忙。”我可以改变这一点,改为说:“好吧,我不想要一台机器;我今天要有 10 台机器。”
对于这种大型设计,迭代周期原本是两天,甚至一天,有了这 10 台机器,我可以将其缩短到三到四个小时。这真是太棒了。
Ali Saidi:他们有大量的工作量,而我们显然是同一家公司,因此我们可以通过第三方无法获得的方式访问其中一些工作量。但我们也与其他外部客户保持着非常密切的关系。
AI 加速器团队与测试从芯片到服务器机架等所有设备的实验室位于同一地点,为什么?
Rami Sinno:Annapurna Labs 在多个地点也有多个实验室。这个地点在奥斯汀……是较小的实验室之一。但奥斯汀实验室的有趣之处在于,所有硬件和许多机器学习服务器、Trainium和Inferentia [AWS 的 AI 芯片] 的软件开发工程师都有效地集中在这一层。对于硬件开发人员和工程师来说,将实验室集中在同一层楼非常非常有效。它加快了交付给客户的执行和迭代速度。这个实验室的设置是为了自给自足,满足我们需要做的任何工作,无论是在芯片级、服务器级还是主板级。因为正如我向我们的团队传达的那样,我们的工作不是芯片;我们的工作不是主板;我们的工作是向客户提供完整的服务器。
Rami Sinno:创建一台提高标准的服务器相对容易。性能非常高、功耗非常低。如果我们创建 10 个、100 个甚至 1,000 个这样的服务器,这很容易。你可以挑选这个,可以修复这个,可以修复那个。但 AWS 的规模要大得多。我们需要训练需要 100,000 个芯片的模型。100,000 个!而且对于训练来说,它不是在五分钟内运行的。它需要数小时、数天甚至数周的时间。这 100,000 个芯片必须在整个过程中保持运行。我们在这里所做的一切都是为了达到这一点。
我们从“哪些事情可能出错?”的心态开始。我们实施我们知道的所有事情。但是当你谈论云规模时,总会有一些你没有想到的事情出现。这些都是 0.001% 类型的问题。
在这种情况下,我们首先在车队中进行调试。在某些情况下,我们必须在实验室中进行调试以找到根本原因。如果我们能立即修复,我们会立即修复。由于是垂直整合的,在许多情况下,我们可以对其进行软件修复。我们利用我们的敏捷性来快速修复,同时确保下一代从一开始就已经解决了这个问题。
*免责声明:本文由作者原创。文章内容系作者个人观点,半导体行业观察转载仅为了传达一种不同的观点,不代表半导体行业观察对该观点赞同或支持,如果有任何异议,欢迎联系半导体行业观察。
以上内容与证券之星立场无关。证券之星发布此内容的目的在于传播更多信息,证券之星对其观点、判断保持中立,不保证该内容(包括但不限于文字、数据及图表)全部或者部分内容的准确性、真实性、完整性、有效性、及时性、原创性等。相关内容不对各位读者构成任何投资建议,据此操作,风险自担。股市有风险,投资需谨慎。如对该内容存在异议,或发现违法及不良信息,请发送邮件至,我们将安排核实处理。