同为并行计算芯片GPU 与 NPU 有何不同之处?

日期: 2024-08-05 作者: 固态硬盘

简介

  从文生文到文生图,再到文生视频……如今,生成式AI慢慢的变成了提升公司生产效率,加速业务创新的核心技术,而这项技术的背后,离不开CPU、GPU、NPU等计算芯片的强力支撑。

  在《解读AI通用计算芯片:GPU训练CPU推理,用最优的成本降低AI算力支出》这篇文章中,笔者粗略地介绍了CPU与GPU芯片的不同之处。除了这两种通用芯片之外,NPU与AI计算过程中扮演着重要的角色。那么,作为同样拥有大量计算单元的并行计算芯片,GPU与NPU又有何不同之处呢?本文将简单介绍。

  GPU(Graphics Processing Unit,图形处理器)是一种专门设计用于处理图形和图像计算任务的计算硬件,用于加速图像/视频处理和渲染等图形任务,例如在电脑游戏中,就需要高性能的GPU进行实时的图像渲染。

  最初,GPU是为提高计算机图形的渲染速度而开发的,但随技术的发展,它们已经扩展到更广泛的计算领域,尤其是在需要大规模并行解决能力的场景中。例如,在生成式AI计算过程中,GPU常用于训练大型神经网络。目前很多科技公司使用 Nvidia 的企业级 H-100 GPU 来训练他们的大型语言模型 (LLM)。

  NPU是一种用于加速神经网络操作的专用处理器,具有并行解决能力(能够同时执行多个操作),并且通过硬件架构优化,它们能有效地执行推理和训练等 AI 和 ML 任务,包括AI和机器学习(ML)计算任务,例如面部识别,甚至训练 AI 系统等。

  通过针对不一样任务需求的特定硬件优化,NPU拥有更高的性能,同时由于能耗较低,可以在一定程度上完成更高的能效比,这也是NPU相较于CPU、GPU等通用处理器最大的优势之一。

  1)强大的并行计算性能。GPU拥有成千上万个浮点运算单元,这些计算核心可以同时处理多个计算任务,这使得GPU在处理并行计算任务时比传统的CPU(中央处理器)更高效,更为适合进行大规模并行计算。例如,在深度学习和其他机器学习算法中,GPU发挥着关键作用,因为这些算法需要处理大量的矩阵运算,GPU的并行解决能力可以显著加速这些运算。

  2)通用性。作为通用计算处理器,GPU不仅仅可以用于图形渲染,而且它所拥有的并行解决能力也更适用于广泛的计算密集型任务。这也是目前AI训练过程中广泛采用GPU的最终的原因之一。

  3)灵活性:GPU可以执行各种算法和任务,不仅限于神经网络,还包括物理模拟、科学计算等。以英伟达GPU为例,自2007年以来,英伟达(NVIDIA) GPU软件已经涵盖了人工智能的每个方面,从高级功能到高级应用。CUDA编程语言和cuDNN-X深度学习库为研发人员构建软件提供了基础,例如NVIDIA NeMo。它使用户能创建、配置和推理自己的生成式人工智能模型。其中许多元素都可作为开源软件提供,这对软件研发人员来说是必不可少的。

  4)扩展性:人工智能模型的复杂性以每年10倍的速度增长。前沿大型语言模型(LLM)GPT-4包含超过一万亿个参数,其数学密度令人瞩目。GPU系统通过有效地协作巧妙地应对了这一挑战。它们轻松扩展到超级计算级别,利用快速的NVLink互连和强大的Quantum InfiniBand网络。

  GPU的这些特性使它们成为处理需要大量计算资源任务的理想选择,从而在多个领域内推动了技术的快速发展。

  2)能效比:由于NPU的架构优化了并行运算和数据流,因此通常在处理神经网络任务时具有更高的能效比。

  3)计算效率:NPU在进行矩阵运算和卷积运算时表现出高效率,这些运算是深度学习中的核心操作。

  GPU和NPU的性能都是根据处理器每秒可以执行多少万亿次操作来衡量,通常用每秒万亿次(或万亿次)操作数(TOPS)表示。例如,高通骁龙 X Elite 芯片拥有高达45 TOPS(仅来自 NPU),而NVIDIA GeForce RTX 4090 GPU拥有超过1300 TOPS。

  此外,GPU可以是独立形态存在的(独立于CPU)或集成的(内置于CPU中),目前大部分NPU已集成到 CPU 中。例如,Apple 的A系列和M系列处理器在CPU中内置了NPU(所谓的 Apple 神经引擎)。当然,仍旧有一些独立的NPU产品存在,比如Raspberry Pi。

  机器学习训练:GPU在训练大型神经网络模型时很有用,尤其是在需要大量计算资源的情况下。

  深度学习推理(Inference):在生产环境中快速执行预训练模型的预测。

  深度学习训练(Training):在某些特定的情况下,例如场景对于能效比要求极高(边缘计算场景下),NPU也能够适用于模型训练。

  语音和图像识别:处理与语音和图像相关的AI任务,例如人脸识别等应用场景。

  GPU由于拥有更高的性能,因此在需要广泛并行解决能力的任务中表现出色;NPU在执行深度学习和AI相关任务时更高效,且具备更好的能耗比。因此,NPU和GPU各有优势,它们在处理不一样的任务时表现出不同的性能特点。随着AI和机器学习技术的持续不断的发展,这两种处理器都在不断地演进和改进,以满足日渐增长的计算需求。

  从虚拟化的角度看云计算可以使我们对云计算的本质有一个清晰的逻辑,虚拟化技术远比我们上面描述的框架复杂,云计算是技术发展的趋势但也面临着巨大的技术壁垒,需要整个产业的全面协作,决不是一两家虚拟化企业能解决的问题,对于我国来说可能是一个战略性的产业方向,需要从国家层面来解决产业链及协议栈的问题。

  Ubuntu和Debian是有史以来最具有影响力的两个Linux发行版。在大约285个活跃发行版当中,有132个源自Debian(也包括Ubuntu本身),另有67个直接源自Ubuntu。不过在Ubuntu和Debian之间作一个选择并非易事。说到底,选择Ubuntu还是选Debian用来制定业务战略,取决于你在平台支持、用户控制级别、易用性及另外一些核心问题方面的使用偏好。