作者 | Pure Storage
编译 | 岳扬
如今,人工智能畛域的软配件很多都是专门为人工智能及神经网络操作的优化而定制的。这其中就包含神经网络处置单元(NPU),大家理论会将这种配件与图形处置器(GPU)启动对比,由于两者都能放慢人工智能义务的处置速度。NPU 这种配件曾经越来越常常出现了,它们专门为高效实现AI/ML义务而设计。但它们之间终究有何不同呢?
接上去,咱们将简明讨论 NPU 和 GPU 的区别,并调查、剖析每种处置器的优点和无余。
01 NPU 是什么?
NPU 是神经网络处置单元(Neural Processing Unit)的缩写,这是一种用于优化人工智能和神经网络相关义务性能的公用配件组件。
乍听之下,NPUs 或者会被误以为是仅限于科研试验室或军事基地的高科技产品,但实践上,只管 NPUs 是一项较新的技术,但它们正变得越来越常常出现。不久之后,咱们就能在台式机和笔记本电脑中见到 NPUs 的身影。目前,大少数现代智能手机,如近几年的 iPhone、Google Pixel 和三星 Galaxy,都曾经在其主 CPU 中集成了 NPUs。
信不信由你,这张幻灯片是从 2013 年高通的 SoC(System-on-a-Chip)展现会上截取的。而“NPU”这一术语直到十年后才开局遭到宽泛关注。
NPU(神经网络处置单元)允许神经网络引擎和网络算法,正如其称号所示,这些算法不只可用于已高度成熟的运行场景,比如智能驾驶(autonomous driving)和人造言语处置(NLP),也运行于人脸识别、语音识别和图像处置等日常生存场景。
02 GPU 是什么?
GPU 是图形处置单元(Graphics Processing Unit)的缩写。最后是为电子游戏和多媒体运行程序中的图形渲染场景而设计开发的,但如今 GPU 的用途曾经被大大裁减,被宽泛运行于各种须要并行处置复杂计算的运行场景。
GPU 的共同优点在于能够极速高效地并行处置数千个小义务,十分适宜处置须要少量并行计算的复杂义务,比如图形渲染(rendering graphics)、物理模拟(simulating physics),甚至训练神经网络(training neural networks)。
03 NPU 与 GPU 的架构差异
从配件架构上看,NPU 比 GPU 更适宜启动并行计算。NPU 领有更多的小型处置单元(smaller processing units),与 GPU 相比,还装备有专门的内存体系结构(memory hierarchies)和数据流优化战略(data flow optimizations),使得它们对深度学习义务的处置特意高效。相比之下,GPU 具备更多的多配置内核(versatile cores),这些内核理论可并行处置多种计算义务,但 NPU 对神经网络算法启动了针对性的优化设计。
NPU 特意长于处置短期且重复性的义务。集成到现代计算机系统中后,NPU 可以减轻 GPU 处置神经网络时固有矩阵运算的累赘,使 GPU 能够专一于图形渲染或通用计算义务。
与 GPU 相比,NPU 在密集型深度学习计算义务中体现更佳。人造言语处置(NLP)、语音识别和计算机视觉等运行场景均是 NPU 相关于 GPU 体现更佳的畛域。GPU 的架构更为通用,但在处置大言语模型或边缘计算运行时或者难以与 NPU 相匹敌。
04 NPU 与 GPU 的性能差异
将它们间接启动比拟时,NPU 与 GPU 最大的性能差异体如今功耗和移动设备的电池续航期间上。由于 NPU 是专门为神经网络操作而设计的,因此 NPU 能够以与 GPU 相近的处置速度实现雷同的计算义务,但是消耗的电量要少得多。
NPU 和 GPU 在处置神经网络义务时体现出的不异性能,重要是由于神经网络自身的特点和运行需求,而不是便捷地归因于这两种配件架构上的不同。NPU 在配件架构上针对 AI/ML 计算义务启动了优化,因此在处置最复杂的计算义务(如深度学习模型的推理和训练)时逾越 GPU。
NPU内置的专门用于矩阵乘法(matrix multiplications)和激活函数(activation functions)的配件,使得在实时言语翻译、智能驾驶汽车