为什么AI PC需要NPU?

图片

NPU为何成为AI PC的关键?

©作者|chuiyuw

来源|神州问学

引言

在日常生活中,我们已经离不开科技的陪伴,从智能手机到智能家居,人工智能(AI)正逐步渗透到我们的每一个角落。特别是在计算设备上,传统的个人电脑(PC)正面临着功能升级的挑战。为了更好地满足用户对智能计算的需求,AI PC作为一种新兴产品,正在改变传统的PC使用方式。AI PC,顾名思义,是集成了AI的PC。它不仅在硬件上集成了混合AI算力单元,还能本地运行“个人大模型”、创建个性化的本地知识库,实现自然语言交互。AI PC的功能将由工具升级为助理,成为个人的“第二大脑”,是与用户如同双胞胎般的个人AI助理。

而NPU(Neural Processing Unit,神经网络处理单元)作为AI PC的核心技术之一,发挥着至关重要的作用。它专为深度神经网络计算而设计,通过模仿人脑神经元结构和工作原理,采用并行计算架构来实现高效的数据处理。相较于传统的CPU和GPU,NPU在执行复杂神经网络任务时具有更高的效率和更低的功耗。

因此,NPU与AI PC的结合,将带来全新的智能计算体验,推动PC行业迈向智能化新时代。那么,NPU究竟是什么,它又有什么作用呢?

一、NPU的定义与作用

图片

什么是NPU?

NPU(Neural Processing Unit,神经网络处理单元)是一种专为深度神经网络计算而设计的专用处理器。它通过模仿人脑神经元结构和工作原理,采用并行计算架构来实现高效的数据处理。相较于传统的CPU和GPU,NPU在执行复杂神经网络任务时具有更高的效率和更低的功耗。

具体而言,NPU采用“数据驱动并行计算”的独特结构,能够同时处理大量数据流,从而显著提高处理速度。其内部包含多种模块,如乘加模块、激活函数模块以及二维数据运算模块等,这些模块共同协作以支持神经网络的前向计算、激活函数等重要流程。

在智能计算中,NPU的作用主要体现在以下几个方面:

1.  加速AI推理:NPU能够以低功耗的方式加速AI任务的执行,特别是在需要快速响应的应用场景中表现尤为突出。例如,在视频会议中的抠像、图像智能降噪等场景中,有了NPU加持可以大幅提升性能和降低功耗。

2.  优化资源使用:由于NPU的设计初衷是针对深度学习算法所需的复杂计算进行优化,因此它能更有效地利用计算资源,减少不必要的指令和数据传输,从而提高整体系统的能效比。NPU芯片在设计时考虑到了这一点,因此将存储模块和计算单元进行了重新整合,避免了每次计算都需要重新与缓存(cache)进行的较低效的数据交换。

3.  支持多种AI应用:NPU不仅适用于自然语言处理、机器学习等领域,还广泛应用于视频和图像处理等多模态任务。这种灵活性使得NPU成为现代智能设备不可或缺的一部分。

4.  提升计算性能:相比传统CPU和GPU,NPU在处理神经网络模型时表现出更高的计算性能和效率。例如,在同等功耗下,NPU的性能可达到GPU的118倍。

总之,NPU作为一种创新的计算硬件,通过其独特的架构和高效的并行计算能力,极大地推动了人工智能技术的发展,并在各种智能计算任务中发挥了重要作用

二、  NPU的核心技术与架构

1.  NPU的架构

NPU 架构设计的核心特点在于集成了大量的计算单元阵列,如 Intel NPU 的神经计算引擎和 AMD XDNA 的 AI 引擎块,这些单元内置向量和标量处理器,并利用片上内存和定制数据流,避免了数据频繁利用总线在CPU、GPU以及内存中交换,实现高效、低功耗的 AI 计算。同时,这些 NPU 架构还具备可扩展性和软件编程能力,能够适应不同规模的 AI 任务,并优化计算密度和能效。

图片

英特尔(Intel)的NPU架构图

英特尔 NPU 是集成在 Intel Core Ultra 处理器中的 AI 加速器,具有独特的架构,能够进行计算加速和数据传输。其计算加速依赖于神经计算引擎,包括专门用于 AI 操作的硬件加速模块(如矩阵乘法和卷积)和流式混合架构向量引擎(SHAVE)。

硬件设计包括:

● 可扩展的多块设计:NPU的核心架构是可扩展的神经计算引擎。

● 硬件加速模块:专门处理高计算量 AI 操作的模块,如矩阵乘法和卷积。

● 流式混合架构:内置 SHAVE 引擎,实现高效的并行计算。

● DMA 引擎:负责在 DRAM (动态RAM) 和缓存之间高效地移动数据。

● 内存管理:内置 MMU(内存管理单元) 和 IOMMU(输入输出内存管理单元),支持多个并行运行的硬件上下文,确保安全隔离,符合微软计算驱动模型(MCDM)标准。

尽管硬件先进,但英特尔 NPU 的真正实力通过 MLIR 编译器得以发挥,优化并协调 AI 任务的运行。其软件设计包括:

● 并行工作负载执行:编译器通过并行执行 AI 任务,并以块式图案引导计算和数据流,确保高效运作。

● 最大化计算利用率:编译器通过减少 SRAM 和 DRAM 之间的数据传输,优先使用片上 SRAM,优化性能,提高单位能耗下的计算效率。

图片

AMD XDNA™ NPU架构

AMD XDNA 是一种空间数据流NPU架构,由多个 AI 引擎块组成。每个块内含向量处理器、标量处理器,以及本地存储器,通过片上内存和定制数据流实现高效、低功耗的 AI 和信号处理计算。每个块的处理器专为机器学习和高级信号处理优化,运行频率可达 1.3GHz,支持高效、低延迟任务。其设计优势在于:

● 软件可编程:AMD NPU 可编程,编译速度快,简化了开发者的工作流程。

● 确定性:配备专用存储器和 DMA 引擎,实现有计划的数据移动。

● 高效:相比传统架构,提供更高计算密度和出色的功耗效率。

● 可扩展性:采用二维阵列设计,支持多个 AI 引擎块的扩展,满足多种应用需求。

2.  NPU与GPU的区别

目前为止,深度学习、大语言模型领域的绝大多数模型的训练、微调和推理任务都由GPU来完成,而NPU也是完成人工智能 (AI) 和机器学习 (ML) 任务的处理器,这两者的区别又是什么呢?

● 功能:GPU(图形处理单元)最初用于加速图形处理和渲染任务,如图像或视频编辑,以及游戏。后来在机器学习技术普及之后,由于其高吞吐量,GPU现在也用于训练大型神经网络。而NPU是一种专门用于加速神经网络操作的处理器,主要用于人工智能 (AI) 和机器学习 (ML) 任务。它具有并行处理能力和硬件优化,可以高效且低能耗地执行AI和ML任务,如人脸识别、模型训练等。

● 硬件优化:NPU具有特定的硬件优化,能够高效且低能耗地执行AI和ML任务,如推理和训练。GPU也支持并行处理,能够每秒执行数万亿次操作,适用于图形处理和其他计算任务,但其能耗较高。NVIDIA最近公布的RTX 5090显卡的功耗标注了超过500W,这相当于一个小房间的空调开制冷的功率了。

● 应用场景:NPU专门用于AI任务,而GPU作为“六边形战士”,除去它图形处理的本职工作,还可兼职大规模数据处理和复杂计算,如加密货币挖矿和AI模型训练。

● 性能:NPU和GPU的性能通常以每秒万亿次操作 (TOPS) 来衡量,但二者性能差距很大。例如,AMD宣称即将推出的XDNA 2 NPU的性能可达50 TOPS,而NVIDIA的GeForce RTX 4090 GPU却超过1300 TOPS。

三、NPU的实际应用场景

高通最新发布的《通过NPU和异构计算开启终端侧生成式AI》白皮书中总结,生成式AI应用可分为三类:

1.  按需型:由用户触发,需要立即响应。这包括照片/视频拍摄、图像生成/编辑、代码生成、录音转录/摘要和文本创作/摘要。

2.  持续型:运行时间较长。这包括语音识别、游戏和视频的超级分辨率、视频通话的音频/视频处理以及实时翻译。

3.  泛在型:在后台持续运行。这包括始终开启的预测性AI助手、基于情境感知的AI 个性化和高级文本自动填充。

凭借NPU的低能耗、高效AI计算的特点,NPU适合很多泛在型任务的处理。例如,在视频会议中,利用NPU可以实现智能抠像功能。传统做法需要GPU来承担复杂的图像分割和合成计算,但有了NPU加持,同样的任务可以在本地高效完成,不仅响应更快,而且功耗也大幅降低。用户在视频通话时就能享受到流畅、稳定的画面效果。在系统管理方面,NPU也能大显身手。它可以运行AI模型对系统状态进行实时监测和分析,智能调整CPU频率、风扇转速等参数,实现更节能、更个性化的电源管理。这对于笔记本电脑等移动设备而言尤为重要。此外,NPU还能赋能于语音识别、自然语言处理等领域,为用户提供更自然、智能的交互体验。不过对于一些复杂的大型AI模型,仍需要CPU和GPU的强大运算能力来支撑。

四、NPU对传统PC架构的冲击与优化

1.  传统架构的局限性

传统PC的“CPU-GPU”架构在处理AI任务时存在诸多瓶颈,包括算力不足、能耗、数据传输带宽和延迟等问题。

● 算力不足:对CPU来说,虽然多核CPU带来了一些并行计算的能力,但PC的所有操作系统程序、网页浏览器、文件编辑等程序都由CPU来执行,这些已经对CPU的算力进行了占用,留给其他任务的资源十分有限。对于GPU而言,尽管GPU具有较高的并行处理能力,但其核心功能并非神经网络的计算,因此对于AI计算任务的管理控制能力较弱。此外,传统的CPU和GPU设计并非专门针对AI任务优化。虽然它们可以通过灵活通用的指令集覆盖基本运算操作,但在芯片架构、性能和能效等方面并不能完全满足AI技术与应用的快速发展需求。

● 能耗和成本问题:AI任务往往需要长时间运行,尽管市面上已经有一些PC配备了专门用于计算的强力GPU,但体积大和低能效问题依然无法解决,GPU在进行模型推理的时候发热问题严重,这也进一步提高了能源成本。此外,目前全球AI算力均十分紧缺,随着大语言模型和多模态模型的横空出世,我国对于训练和推理的资源需求不断上升,而美国芯片出口禁令日益严格,GPU的成本居高不下。因此高能耗和高成本限制了传统PC在AI领域的应用。

● 数据传输带宽不足:目前大多数PC、智能手机等采用的CPU-GPU分离式架构,CPU和GPU各自有独立的缓存和内存,它们通过PCI-e等总线通讯。这种结构的缺点在于 PCI-e 相对于两者具有低带宽和高延迟,例如PCIe 5.0的传输速率为32 GT/s或25 GT/s。这使得在处理大规模AI模型时,数据传输速度成为瓶颈,影响整体性能。

图片

传统CPU-GPU分离式架构

2.  NPU对架构设计的影响

“算力是AI PC各项功能得以实现的前提,终端异构混合(CPU+NPU+GPU)算力是AI规模化落地的必然要求。”《AI PC产业(中国)白皮书》指出,异构混合计算 是通过整合不同类型的指令集和架构的计算单元,如 CPU、NPU、GPU 等,组成一个强大的本地计算系统。这种方式可以充分利用各硬件的优势,实现更高的并行计算能力。例如,针对三种生成式AI类型——按需型、持续型 和 泛在型,按需型应用的关键在于时延,因为用户不想等待。当使用小模型时,CPU通常是最佳选择;而在模型变大(如数十亿参数)时,GPU 和 NPU 更加合适。对于持续型和泛在型应用来说,电池续航和能效至关重要,因此 NPU 是最优选择。

NPU的设计包括动态内部内存端口分配和高效的架构设计,以支持混合精度算术运算,从而最大化芯片上的内存带宽利用率。这种设计使得NPU在执行大模型任务时,具有更低的功耗和更高的效率。新型计算架构如PIM(近内存计算),通过将计算靠近存储来降低数据搬移能耗并提升内存带宽。这种架构不仅提高了资源效率,还减少了对高速缓存的需求,从而优化了内存架构,使得CPU-NPU-GPU的异构混合计算的数据传输效率更高。

3.  生态系统的变革

对于AI PC来说,处理器内部依赖多个处理单元的协同配合,才能充分释放AI引擎的性能,但这还远远不够,因为无论是AI PC、AI手机,还是物联网设备,只有软硬件结合,才能提供最佳体验。

高通在 MWC 2024 期间发布的一款全面的模型优化库 AI Hub,为开发者提供了超过75个经过优化的主流模型,如 Stable Diffusion、ControlNet 和 Baichuan-7B 等。这些模型能够充分利用高通AI引擎的所有核心硬件加速能力,实现推理速度提升4倍。对开发者来说,借助这些优化模型,可以快速将大模型无缝集成到应用中,缩短产品上市时间。此外,这些模型也已同步上线到 GitHub 和 Hugging Face,开发者可以在搭载高通和骁龙平台的云托管终端上自由运行。

图片

高通AI软件栈

更重要的是,高通还在硬件AI能力的基础上,打造了高通AI软件栈,支持所有主流AI框架(如 TensorFlow、PyTorch、ONNX 和 Keras),以及主流的AI运行时(如 DirectML、TFLite、ONNX Runtime、ExecuTorch),并支持各种编译器、数学库等AI工具。开发者可以通过 高通 AI 引擎 Direct 软件开发包 (SDK) 进行直接耦合,加快开发进程。此外,高通AI软件栈还集成了用于推理的高通神经网络处理SDK,提供适用于 Android、Linux 和 Windows 的不同版本。

图片

英特尔WebNN的组成

英特尔今年也将发布第四代神经网络处理单元(NPU),其AI性能高达48 TOPS,是上一代产品的四倍。在不断迭代NPU技术的同时,英特尔也在积极构建工具和生态系统支持,以帮助开发者更好地利用NPU进行AI应用开发。其中包括对WebNN的支持,通过统一的神经网络抽象层,使得AI硬件加速能够更方便地接入到操作系统中。英特尔还专注于提供更高的综合AI算力,并带来了供电和电源管理方面的大幅改进,SoC耗电量减少40%,更适合移动设备。

华为的麒麟990 5G集成了全新的达芬奇架构NPU,支持超过300个AI算子数量,并能支持90%的开源模型。华为的昇腾NPU也得到了进一步的发展,例如PyTorch 2.1版本支持了昇腾NPU,华为也成为中国首个PyTorch基金会Premier会员,这表明华为在推动多样性算力支持与改进方面取得了重要进展。软件方面,华为HiAI平台已经让3.4亿最终用户受益,并且每年有1.5亿台出货量。通过这样的生态,华为希望快速地让其用户受益,并与伙伴建立起AI开发生态。

五、NPU的当下与未来

尽管 NPU 拥有全新的硬件架构、低能耗和高算力等优点,目前大多数AI PC中的 NPU 长期处于未使用的状态,这主要归因于几个关键因素。首先,软件生态尚未完全成熟,许多应用程序和操作系统尚未优化,无法充分利用NPU的计算能力,需要后续更新迭代继续优化对NPU资源的调用。这导致NPU在实际使用中难以发挥其潜力,往往被闲置。其次,开发者的支持也不足。要充分利用NPU,开发者需要花费时间和资源来学习和适应NPU的编程模型和工具链。然而,目前许多开发者仍然依赖 CPU 和 GPU 进行AI计算,对NPU的利用较少。最后,市场需求也不够明确。虽然NPU在特定任务上表现出色,但对许多用户来说,他们的日常需求并不需要如此高效的AI计算能力,这进一步导致了NPU的低使用率。这些因素共同影响了NPU在当前AI PC中的应用,使得这一强大的计算单元未能充分发挥其应有的作用。

未来,NPU 将适应更多的应用场景和算法模型,包括自动驾驶、机器人以及内容推荐等领域。它将与 CPU 和 GPU 更紧密地结合,实现更高效、低能耗的自主计算任务。这种协同工作将显著提升计算能力,使设备在处理复杂任务时更加灵活高效。此外,开源的 NPU指令集架构(NPU ISA) 将成为推动产业创新的重要力量,降低开发成本,加速智能计算应用的普及和落地。

随着 NPU 技术的不断发展,它在多个领域展现出巨大的应用潜力。在智能设备和物联网方面,NPU将使这些设备更加直观和节能,从而提升用户体验。例如,可穿戴设备将能够实时监控健康指标,而智能家居系统则可以根据用户的生活习惯自动做出调整,提供更舒适和个性化的居住环境。在自动驾驶和机器人技术中,NPU的强大计算能力使其在处理大量传感器数据和实时决策方面表现出色,成为推动这些技术进步的关键引擎。此外,在医疗保健领域,NPU能够处理复杂的医疗数据,帮助实现更早、更精确的诊断,并支持个性化治疗方案的制定,为患者提供更好的医疗服务。金融服务领域同样受益于NPU,通过实时分析交易模式,它可以显著提高金融系统的安全性和效率,有效防止欺诈行为的发生。

展望未来,NPU技术充满潜力。随着技术的进步和应用场景的扩展,NPU不仅将在 AI PC 设备中扮演越来越重要的角色,还将在各类嵌入式和移动端设备中发挥关键作用。这些进展将使NPU成为推动未来智能计算发展的核心力量,为各行各业带来深远的变革和创新

结语

NPU 作为 AI PC 的核心组件,正引领着个人电脑进入智能新时代。它以其高效的并行计算能力和低功耗特性,为 AI 应用提供了强大的算力支持,让 PC 从传统的生产力工具转变为个人 AI 助理,助力用户更高效地工作、学习和生活。

随着技术的不断发展和软件生态的日益完善,NPU 将在未来发挥更大的作用。它将与 CPU 和 GPU 更紧密地协同工作,为用户提供更加个性化、智能化的体验。从智能抠像到系统管理,从语音识别到自然语言处理,NPU 将在各个领域展现出其巨大的潜力,为人类创造更美好的智能生活。

图片

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值