什么是NPU?

2024-10-05 12:00:00 英文原文

Close-up of a CPU

credits: Laura Ockel/Unsplash

在过去的一年里,关于神经处理单元(NPU)的讨论越来越多。虽然NPU已经在智能手机中使用了几年时间,但英特尔、AMD以及最近的微软都推出了配备NPU的AI增强型消费级笔记本电脑和PC。

NPUs与相关的AI PC概念紧密相连,目前越来越多由AMD、苹果、英特尔和高通等主要硬件制造商生产的芯片内部集成了NPUs。尤其是今年微软推出其Copilot+ AI PC产品以来,笔记本电脑中出现NPUs的频率越来越高。

NPU是什么?

NPU的作用是作为硬件加速器来工作人工智能硬件加速是指使用专用硅芯片来管理特定任务,就像主厨将不同的任务分配给副厨师一起合作,在规定时间内准备完餐点。NPU不会取代你的CPU或GPU;相反,NPU被设计为补充CPU和GPU的优势,处理诸如边缘AI之类的工作负载,从而使CPU和GPU能够保留时间来处理它们擅长的任务。

GPU是专门用于渲染图形的硬件加速器,但其底层灵活性足以使其也非常适合AI或某些类型的科学计算。长期以来,如果你有一个想要处理的AI工作负载,你会期望使用一个或多个高性能[可能是Nvidia?]GPU来进行实际的数值运算。有些公司正在开发专门为AI设计的专用硬件加速器,例如Google的TPU,因为使“GPU”中的"G"存在的额外图形能力在一个纯粹用于AI处理的卡上是没有用处的。

关于工作负载

硬件加速在不需要大量条件分支的重复任务中最有用,尤其是在处理大量数据时。例如,渲染3D图形需要计算机管理大量的粒子和多边形流。这是一个带宽密集型的任务,但实际计算(主要是三角函数)。计算机图形、物理和天文学计算以及大型语言模型(如现代AI聊天机器人的驱动程序)是硬件加速的理想工作负载的几个例子。

有两种类型的AI工作负载:训练和推理。训练几乎完全在GPU上进行。Nvidia凭借其在CUDA上的近二十年投资以及在独立GPU市场的领导地位,主导了这两个市场,尽管AMD已经成为一个相对次要的竞争者。大规模的训练发生在数据中心级别,同样,在您与基于云的服务通信时运行的推理工作负载也是如此。像ChatGPT一样.

NPUs(以及它们连接的AI PC)在规模上要小得多。通过提供针对未来AI工作负载的额外灵活性,并且可能比等待云服务具有更好的性能,它们补充了您最喜欢的CPU供应商提供的微处理器内部集成GPU的功能。

NPU是如何工作的?

一般来说,NPUs(神经处理单元)依赖于高度并行的设计来快速执行重复性任务。相比之下,CPU是通用处理器。这种差异体现在NPU的逻辑和物理架构中。CPU具有一个或多个核心,并且可以访问少量共享内存缓存,而NPU则包含多个子单元,每个子单元都有自己的小型缓存。NPUs适合高吞吐量和高度并行的工作负载,如神经网络和机器学习.

NPUs、神经网络和英特尔Loihi平台这样的类脑系统都具有一个共同的设计目标:模拟大脑的信息处理机制。

AMD infographic comparing an NPU's structure to a neural net

credits: AMD

每个将NPU推向市场的设备制造商都有其产品特有的微架构。大多数公司还发布了与其NPU配套的软件开发工具。例如,AMD提供了Ryzen AI软件堆栈,而英特尔继续改进其开源深度学习软件工具包OpenVINO。

NPU和边缘智能

大多数NPUs存在于面向消费者的设备中,例如笔记本电脑和PC。例如,高通的Hexagon DSP在其Snapdragon处理器中添加了NPU加速功能,这些处理器用于智能手机、平板电脑、可穿戴设备、高级驾驶员辅助系统以及物联网。苹果生态系统中的使用它在A系列和M系列芯片中的神经引擎NPU为iPhone、iPad和iMac提供动力。此外,一些PC和笔记本电脑被指定为Copilot+,这意味着它们可以在内置的NPU上运行微软的Copilot AI。然而,一些服务器端或基于云的系统也使用NPU。谷歌的张量处理单元是专为高性能机器学习设计的NPU加速器。在数据中心.

NPU上升的一个原因是边缘智能的重要性日益增加。在传感器网络、移动设备(如手机和笔记本电脑)以及物联网之间,对数据处理的需求正在不断增加。同时,基于云的服务受制于基础设施延迟问题。本地处理并不一定需要与云端交互。这可能在速度和安全性方面都有优势。

你是否需要一个NPU几乎是一个误导性的问题。硅谷巨头如英特尔、AMD和苹果已经投资了这项技术。无论你是否有特定的用途,下次你建造或购买PC时,所选芯片很可能包含NPU。到2026年底,分析师预测期待美国企业PC购买的100%都将内置一个或多个NPUs。换句话说,不用担心去购买带有NPU的系统。它们会自动提供给您。

标签为

ExtremeTech 解释 半导体 人工智能 CPU

更多来自计算领域的内容

关于《什么是NPU?》的评论


暂无评论

发表评论

摘要

credits: Laura Ockel/Unsplash 在过去的一年里,关于神经处理单元(NPU)的讨论越来越多。长期以来,如果你有一个想要处理的人工智能工作负载,你可能会期望使用一个或多个高性能[Nvidia?]来完成实际的数据计算任务。一些公司正在开发专门针对人工智能的硬件加速器,例如Google的TPU,因为在仅用于AI处理的卡中,“GPU”中的图形功能并不实用。关于工作负载 硬件加速在涉及大量数据且不需要大量条件分支的重复性任务中最有效。NPUs、神经网络和像Intel的Loihi平台这样的类脑系统都共享一个共同的设计目标:模拟大脑信息处理的一个方面。