什么是 NPU?
什么是 NPU?
神经处理单元(NPU)是一种专用于机器学习推理工作负载的处理器。尽管 CPU 和 GPU 常用于通用机器学习训练和推理,但 NPU 可为 AI 推理工作负载提供加速处理。与 CPU 和 GPU 相比,NPU 具有更高的吞吐量和更低的功耗需求,非常适合现代 AI 推理。
为什么 NPU 很重要?
深度学习、机器学习、预测分析以及其他 AI 工作负载,都需要强大的处理能力。随着生成式 AI 的崛起,企业主要在基于 CPU 或图形处理单元(GPU)的服务器上运行 AI 工作负载。然而,CPU 的设计初衷并非处理低延迟神经计算,而 GPU 则会大幅推高能耗和成本。NPU 专为 AI 任务设计,能够实现更低的能耗与成本。
以下是 NPU 的一些主要优势:
- NPU 可帮助组织在将 AI 模型投入运营时,实现更低的单次推理成本
- NPU 让组织能够将 AI 处理转移到更靠近边缘的位置,也就是数据在本地存储的地方
- NPU 可满足计算机、移动设备和物联网(IoT)对本地 AI 功能日益增长的需求
- NPU 的单次推理成本要低得多,有助组织减少 AI/ML 工作负载的云支出
- NPU 既可为云数据中心提供支持,也可集成到计算机中
NPU 有哪些类型?
AI 芯片厂商要么把 NPU 单独做成独立芯片,要么把它与 GPU、CPU 集成,组成系统级芯片(SoC)。您可以在不同架构层级部署 NPU,把繁重的 AI 处理任务卸载出去。
边缘 NPU
边缘 NPU 是专用的 AI 芯片,可在网络边缘提供本地推理能力。它们为物联网(IoT)、无人机和自动驾驶汽车等边缘端应用提供实时 AI 处理支持。
云 NPU
云 NPU 是专为支持跨数据中心的大规模 AI 处理而设计的 AI 加速器。例如,AWS Inferentia 是一系列 NPU,能够以经济高效的方式大规模提供高性能机器学习推理。
嵌入式 NPU
嵌入式 NPU 是设备端加速器,旨在增强智能手机、笔记本电脑、IoT 设备和智能可穿戴设备上的 AI 运算能力。例如,Apple Neural Engine、Qualcomm Hexagon NPU 和 Intel AI Boost 都属于 NPU,能够处理背景虚化、照片编辑和降噪等任务。
NPU 与 AI 加速器
AI 加速器(又称神经加速器)是一种专用 AI 芯片,可在 AI 领域用于不同目的。例如,有些 AI 加速器专用于训练,如 AWS Tranium 系列芯片。NPU 则是 AI 加速器中的一种特定类型,专用于推理,也就是将机器学习模型的输入转化为输出的响应过程。
NPU 是如何工作的?
NPU 处理 AI 任务的方式,能够满足机器学习神经网络推理的需求。它由可并行处理大量数据的专用计算单元组成。通过利用数据流架构,它能极快地执行推理,迅速解决问题并预测结果。更重要的是,在推理过程中执行矩阵乘法、激活函数及其他数据运算时,NPU 的能耗远低于 CPU 或 GPU。以智能手机为例。集成 NPU 后,您可以借助本地化 AI 模型更有效地过滤通话噪声,而不会快速耗尽手机电量。
下面介绍 NPU 的关键特性。
张量和矩阵运算
NPU 是一种能够执行张量和矩阵运算的 AI 芯片。这些运算可以作为神经网络运算的基础,常用于人脸识别、预测建模、图像分类以及其他推理任务。与 GPU 推理相比,在 NPU 上执行这些运算更加节能。
数据流架构
NPU 支持存内计算,以减少数据搬运。与 CPU 需要先将数据从内存移到内部寄存器再进行处理不同,NPU 可以在数据存储的位置直接处理数据。这使 AI 查询能够获得低延迟响应。
低精度算术
NPU 专为低精度数学计算而设计。其目标是从多矩阵数据中快速推导出结果,并从结果中学习。我们称之为量化推理,即模型使用 INT8 而非 FP32 进行计算。INT8 表示处理器以 8 位执行整数运算,FP32 则表示 32 位浮点运算,后者的结果更为精确。尽管精度较低,NPU 仍具备占用空间更小、能效更高、响应延迟更低等优势。
片上内存与缓存
在 AI 推理过程中,将数据从外部内存芯片传输到处理器所耗费的时间,往往比实际处理数据的时间还长。这会导致效率低下,在大规模数据处理场景中尤为明显。NPU 配备了大容量片上 SDRAM,以突破内存带宽瓶颈。
NPU 与 GPU、CPU 的对比
CPU 历来用于计算机中的逻辑运算和通用任务。它按顺序依次处理任务,而这种方式对 AI 处理来说并非最优。GPU 最初则是为了分担 CPU 的视频处理任务而出现的。GPU 擅长并行处理,因此适合高性能计算、大数据处理和 AI 训练。
NPU 采用了不同于 GPU 并行模式的架构方法,以应对 AI 任务所需的高计算复杂度。不过,NPU 的能效比 GPU 更高。NPU 并非要取代 CPU 和 GPU,而是在 AI/ML 工作流中对它们加以补充。例如,组织可以用 GPU 训练模型,用 CPU 运行轻量级机器学习任务,用 NPU 执行繁重或复杂的 AI 预测。
NPU 的核心能力有哪些?
NPU 凭借以下能力,为 AI 计算提供强大而高效的解决方案。
推理加速
AI 预测需要训练好的模型对未见过的数据执行复杂运算。NPU 能够并行执行这些运算,因此可以加速 AI 任务,让用户更快获得预测结果。
设备端 AI
运行 AI 工作负载的设备,通常需要把查询发送到托管机器学习模型的云服务器。这会带来延迟,网络拥塞时尤其明显,从而导致推理结果返回更慢。在设备上部署 NPU 可以减少网络往返。这样做还能实现离线预测,以及对数据隐私进行更严格的控制。
模型编译与图优化
NPU 运行的是专门针对性能进行过优化的 AI 模型。机器学习工程师通常使用 TensorFlow、PyTorch 等高级框架来构建 AI 模型。但这些模型本身无法直接利用 NPU 的能力。为此,机器学习工程师需要将模型编译成特定 NPU 能够理解的格式。例如,可以使用 AWS Neuron 编译要在 AWS Inferentia 上运行的机器学习模型。编译完成后,模型的推理速度会大幅提升。
多模型与并发执行
部分数据中心级 NPU 可以同时运行多个模型,以支持并发查询或 AI 任务。它们通过时间切片、虚拟化等方式来分配 AI 推理能力。例如,您可以把 NPU 的一部分资源用于图像分类,另一部分用于视频处理。
NPU 有哪些应用场景?
各类应用借助 NPU 来提升推理速度和降低成本。
计算机视觉
NPU 使计算机视觉应用能够加速物体检测、图像分类和视频分析。例如,智能手机无需连接云端 AI 模型,即可自动滤除视频通话中的噪声。
自然语言处理
许多生成式 AI 应用都涉及语音识别、机器翻译和文本分类。NPU 专为处理深度学习任务(例如识别文本和语音中的模式)底层的张量运算而设计,同时避免过高的能耗。
推荐系统
广告科技和电商系统利用深度学习模型生成实时推荐。NPU 能够缩短分析购物数据并给出个性化响应所需的时间,从而提升客户体验。
机器人与自主系统
工业应用将 AI 与机器人能力相结合,来实现关键工作流的自动化。这类系统通常运行在严苛环境中,并受到严格的功耗和散热限制。NPU 由于功耗低、发热量小,非常适合处理关键的 AI 流程。
生成式 AI 推理
生成式 AI 应用通常托管在集中式服务器上。每次推理都会消耗算力,而这些算力由 GPU 提供。不过,这种架构可以针对本地化应用进行更好的优化。通过使用 NPU,AI 服务提供商可以降低每 token 成本、减少响应延迟,并持续满足服务水平目标。
评估 NPU 时有哪些关键考量?
NPU 对于实现高能效 AI 部署至关重要。挑选 NPU 时,可以参考以下标准。
TOPS(每秒万亿次运算)
TOPS 衡量的是 NPU 的处理能力。一个 50 TOPS 的 NPU 每秒可执行 50 万亿次运算。不过,TOPS 不应成为您评估 NPU 性能的唯一指标。精度同样会影响 NPU 的推理表现。在比较 TOPS 值更高的芯片时,您需要结合精度来看,比如 INT8。例如,采用 INT8 的 50 TOPS 芯片并不等同于采用 INT4 的 50 TOPS 芯片。大多数 NPU 以 INT8 或 INT4 数学精度运行。
内存带宽
NPU 的性能依赖于内存带宽。因此,您需要考虑为 AI 芯片搭配哪种内存芯片。为了获得最佳性能,高带宽内存(HBM)更合适;但如果是设备端使用,低功耗双倍数据速率(LPDDR)内存可以延长电池续航。
软件栈成熟度
NPU 的采用正迅速升温,但并非所有 NPU 都支持所有用例,而且不同厂商的工具链也各不相同。请确保所选的具体 NPU 型号在整个 AI 开发周期中都能得到支持。这样可以避免为让模型适配加速器而产生不必要的成本。
模型可移植性
通常,您无法将同一个经 NPU 编译的模型部署到不同的加速器上。不同厂商使用各自专有的格式,无法跨厂商移植。请提前规划硬件需求,以免维护多个本不必要的模型。
功耗范围
确定 AI 模型运行所允许的功耗范围,尤其是在设备端或边缘计算场景中。如果 NPU 用于云数据中心,应考察其每瓦性能,并选择运行功耗在限制范围内的 AI 芯片。
批大小表现
有些 NPU 针对大批量处理进行了优化,而另一些则更擅长处理单样本。语音识别需要低延迟推理,而数据中心 AI 部署则受益于高吞吐量的批处理。
AWS 如何支持您的 NPU 和 AI 推理需求?
AWS 提供一系列专为您的 AI 推理应用打造的加速器和芯片。探索 AWS 的以下 NPU 实例和机器学习解决方案:
- Amazon EC2 Inf2 实例:Inf2 实例专为深度学习(DL)推理打造,搭载第二代 AWS Inferentia 芯片 AWS Inferentia2。
- Amazon EC2 Trn2 实例:由 16 颗 AWS Trainium2 芯片驱动,专为生成式 AI 打造;这些高性能 EC2 实例可用于训练和部署参数量从数千亿到万亿以上的模型。
- Amazon SageMaker:数据、分析和 AI 的一站式中心。借助 SageMaker,您可以使用完全托管的基础设施、工具和工作流,为任何用例构建、训练和部署机器学习模型,包括基础模型(FM)。
- AWS Neuron SDK:用于在 AWS Trainium 和 AWS Inferentia 上运行深度学习和生成式 AI 工作负载的开发者工具栈。
立即创建免费账户,开始在 AWS 上使用 AI 推理。
Browse all cloud computing concepts
Browse all cloud computing concepts content here:
Did you find what you were looking for today?
Let us know so we can improve the quality of the content on our pages