最新公告
  • 欢迎您光临欧资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • 【机器之心】AI加速器:为什么能成为行业焦点?

    机器之心编译

    机器之心编辑部

    在之前的文章中,前苹果工程师和普林斯顿大学博士。Adi Fuchs 解释了 AI 加速器诞生的动机。在本文中,我们将按照作者的思路,回顾处理器的整个开发过程,看看为什么AI加速器能够成为业界关注的焦点。

    这是本系列博客的第二篇文章,我们来到了整个系列的症结所在。在推销一家新公司或新项目时,风险投资家或高管经常会问一个基本问题:“为什么是现在?”

    要回答这个问题,我们需要简要回顾一下处理器发展的历史,看看近年来该领域发生了哪些重大变化。

    什么是处理器?

    简单地说,处理器是计算机系统中负责实际数值计算的部分。它接收用户输入的数据(用数值表示),并根据用户的请求生成新的数据,即执行用户想要的一组算术运算。处理器使用其算术单元生成计算结果,这意味着运行程序。

    1980 年代,处理器在个人电脑中商业化。它们越来越成为我们日常生活中不可或缺的一部分,出现在笔记本电脑、机以及连接数十亿云和数据中心用户的全球基础设施的计算结构中。随着计算密集型应用程序的日益普及和大量新用户数据的出现,当代计算系统必须满足对处理能力不断增长的需求。所以我们总是需要更好的处理器。“更好”长期以来意味着“更快”,但现在它也意味着“更高效”,即花费相同的时间,但使用更少的能源和更小的碳足迹。

    处理器进化史

    计算机系统的进化是人类最杰出的工程成就之一。我们花了大约 50 年的时间才达到这样的程度:一个人口袋里的普通智能手机的计算能力是阿波罗登月任务中使用的房间大小计算机的一百万倍。这种演变的关键是半导体行业以及它如何提高处理器的速度、功率和成本。

    Intel 4004:第一款商用微处理器,于 1971 年发布。

    处理器由称为“晶体管”的电子元件组成。晶体管是逻辑开关,用作从基本逻辑函数(如 AND、OR、NOT)到复杂算术(浮点加法、正弦函数)、内存(如 ROM、DRAM)等的所有内容的构建块。多年来,晶体管不断缩小。

    1965 年,戈登·摩尔发现集成电路中的晶体管数量每年翻一番(后来更新为每 18-24 个月更新一次)。他预计这种趋势至少会持续十年。虽然有些人认为这更像是一种“行业趋势”而不是“法律”,但它确实持续了大约 50 年,使其成为历史上运行时间最长的人造趋势之一。

    晶体管缩放的电气特性。

    但除了摩尔定律之外,还有一条鲜为人知但同样重要的定律。它被称为“Dennard 比例定律”,由 Robert Dennard 在 1974 年提出。虽然摩尔定律预测晶体管每年都会缩小,但 Dennard 问道:“除了能够在其上安装更多晶体管之外,拥有更小的晶体管还有什么实际好处?一个芯片?” 他的观察是,当晶体管按比例缩小 k 倍时,电流也会减小。此外,由于电子行进的距离更短,我们最终得到了一个速度快 k 倍的晶体管,最重要的是 – 它的功率下降到 1/k^2。所以一般情况下,我们可以多装k^2个晶体管,逻辑功能会快k倍左右,但芯片的功耗不会增加。

    处理器发展的第一阶段:频率时代(1970s-2000s)

    微处理器频率的演变。

    早期,微处理器行业主要集中在 CPU 上什么是声音驱动程序,因为 CPU 是当时计算机系统的主力。微处理器制造商充分利用了缩放定律。具体来说,他们的目标是提高 CPU 的频率,因为更快的晶体管允许处理器以更高的速率执行相同的计算(更高的频率 = 每秒更多的计算)。这是一种看待事物的有点简单的方式。处理器有很多架构创新,但最终,在早期,频率对性能的贡献很大,从 Intel 4004 的 0.5MHz、486 的 50MHz、Pentium 的 500MHz 到 3-4GHz奔腾4系列。

    功率密度的演变。

    大约在 2000 年左右,丹纳德比例定律开始失效。具体来说,随着频率的增加,电压停止以相同的速度下降,功率密度率也是如此。如果这种趋势持续下去,芯片发热问题将不容忽视。然而,强大的冷却解决方案尚未成熟。因此,供应商不能继续依赖更高的 CPU 频率来获得更高的性能,需要考虑其他途径。

    处理器发展的第二阶段:多核时代(2000s-mid 2010s)

    停滞的 CPU 频率意味着加速单个应用程序变得非常困难,该应用程序以连续的指令流编写。但是,正如摩尔定律所说,每 18 个月,我们芯片中的晶体管数量就会翻一番。因此,这次的解决方案不是加速单个处理器,而是将芯片拆分为多个相同的处理核心,每个处理核心都执行其指令流。

    CPU 和 GPU 核心数量的演变。

    CPU 有多个内核是很自然的,因为它已经在同时执行多个独立的任务,例如您的互联网浏览器、文字处理器和声音播放器(更准确地说,操作系统正在创建这种并发执行的抽象做得很好) . 因此,一个应用程序可以在一个内核上运行,而另一个应用程序可以在另一个内核上运行。通过这种做法,多核芯片可以在给定的时间内执行更多的任务。但是,为了加速单个程序,程序员需要将其并行化,这意味着将原始程序的指令流分解为多个指令“子流”或“线程”。简单地说,一组线程可以以任意顺序在多个内核上并发运行,没有任何一个线程干扰另一个线程的执行。这种做法,

    多核执行的一种常见形式是在 GPU 中。CPU 由少量快速且复杂的内核组成,而 GPU 则依赖于大量更简单的内核。一般来说,GPU 专注于图形应用,因为图形图像(例如视频中的图像)由数千个像素组成,这些像素可以通过一系列简单的预定计算独立处理。从概念上讲,可以为每个像素分配一个线程并执行一个简单的“小程序”来计算其行为(例如颜色和亮度级别)。高度的像素级并行性使得开发数千个处理核心变得很自然。因此,在下一轮处理器演进中,CPU 和 GPU 供应商并没有加速单个任务,而是使用 Moore’

    不幸的是,在 2010 年左右,事情变得更加复杂:随着晶体管的电压接近物理极限并且无法继续缩小,登纳德定标定律走到了尽头。虽然以前可以在保持相同功率预算的同时增加晶体管数量,但晶体管数量翻倍意味着功耗翻倍。Dennard 比例定律的消亡意味着当代芯片将遇到“利用墙”。在这一点上,我们的芯片上有多少晶体管并不重要——只要有功耗限制(受芯片冷却能力的限制),我们就不能使用超过给定部分的晶体管。芯片。芯片的其余部分必须断电,这种现象也称为“暗硅”。

    处理器发展第三阶段:加速器时代(2010年代至今)

    暗硅本质上是“摩尔定律终结”的一大预演——对于处理器制造商来说,时代已经变得充满挑战。一方面,计算需求快速增长:智能手机无处不在,计算能力强大,云服务器需要处理越来越多的服务,“最糟糕的事情”——人工智能重回历史舞台,吞噬计算资源以惊人的速度。另一方面,在这些不幸的时代,暗硅已经成为晶体管芯片发展的障碍。因此,当我们需要比以往更多的处理能力时,它比以往任何时候都更加困难。

    训练 SOTA AI 模型所需的计算量。

    由于新一代芯片被束缚在暗硅上什么是声音驱动程序,计算机行业将注意力转向了硬件加速器。他们的想法:如果你不能添加更多的晶体管,就使用你拥有的。怎么做?答案是:专业化。

    传统 CPU 设计为通用型。他们使用相同的硬件结构来运行我们所有应用程序(操作系统、文字处理器、计算器、互联网浏览器、电子邮件客户端、媒体播放器等)的代码。这些硬件结构需要支持大量的逻辑操作并捕获许多可能的模式和程序引发的行为。这相当于良好的硬件可用性,但效率相当低。如果我们只关注某些应用,我们可以缩小问题范围,进而从芯片中去除大量的结构冗余。

    通用 CPU 与特定应用加速器。

    加速器是专用于特定应用或领域的芯片,也就是说,它们并不运行所有应用(例如,没有操作系统),而是在硬件设计层面考虑非常狭窄的范围,因为:1)它们的硬件结构只满足特定任务的运行;2)硬件和软件之间的接口更简单。具体来说,由于加速器在给定域内运行,因此加速器程序的代码应该更紧凑,因为它编码的数据更少。

    例如,如果你想开一家餐馆,但面积和电费预算有限。现在你必须决定这家餐厅做什么样的菜,是做所有的比萨、素食、汉堡、寿司(a)还是只做比萨(b)?

    如果你选择一个,你的餐厅确实可以满足很多不同口味的顾客,但是你的厨师会做很多菜,而且不一定每道菜都擅长。此外,您可能还需要购买多台冰箱来存放不同的食材,并密切关注哪些食材用完哪些变质,不同的食材可能混在一起,大大增加了管理成本。

    但是使用选项 b,您可以聘请顶级比萨专家,准备一些配料,然后购买定制烤箱来制作比萨。您的厨房将非常整洁高效:一张桌子放面团,一张放酱汁和奶酪,一张放配料。但同时,这种做法也有风险:如果明天没人想吃披萨怎么办?如果每个人都想吃的披萨不能用您的定制烤箱制作怎么办?你已经花了很多钱建了这个专门的厨房,现在你进退两难了:不改造厨房就可以关店,改造要花很多钱,还有一次你已经做到了,客户的口味可能会再次改变。

    回到处理器的世界:类似于上面的例子,CPU 是选项 a,特定领域的加速器是选项 b,存储大小限制是硅预算。你将如何设计你的芯片?显然,现实并没有如此两极分化,而是有一个类似光谱的过渡区域。在这个范围内,人们或多或少地用多功能性来换取效率。早期的硬件加速器是为特定领域设计的,例如数字信号处理、网络处理或作为主 CPU 的辅助协处理器。

    从 CPU 到主要加速应用领域的第一个过渡是 GPU。一个 CPU 有几个复杂的处理核心,每个核心都采用各种技巧,例如分支预测器和乱序执行引擎,以尽可能地加速单线程作业。GPU 的结构不同。GPU 由许多简单的内核组成,这些内核具有简单的控制流并运行简单的程序。最初,GPU 用于图形应用程序,例如计算机游戏,因为这些应用程序包含由数千或数百万像素组成的图像,每个像素都可以独立并行计算。GPU 程序通常由一些内核函数组成,称为“内核”。每个内核都包含一系列简单的计算,并在数据的不同部分(例如一个像素或包含多个像素的补丁)上执行数千次。这些属性使图形应用程序成为硬件加速的目标。它们的行为很简单,因此不需要分支预测器形式的复杂指令控制流;它们只需要很少的运算,因此不需要复杂的算术单元(例如计算正弦函数或执行 64 位浮点除法的算术单元)。后来发现,这些特性不仅适用于图形应用,GPU 的适用性还可以扩展到其他领域,例如线性代数或科学应用。今天,加速计算不仅限于 GPU。

    站内大部分资源收集于网络,若侵犯了您的合法权益,请联系我们删除!
    欧资源网 » 【机器之心】AI加速器:为什么能成为行业焦点?

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    欧资源网
    一个高级程序员模板开发平台

    发表评论