在今天这个信息技术飞速发展的时代,我们已经悄然进入了智能化社会。人脸识别、智能客服、个性化推荐等技术,早已融入我们的日常生活,成为不可或缺的一部分。
而这些“看得见”的智能应用背后,离不开一个核心支撑——算力。
算力,是驱动数字世界高效运转的底层引擎。
作为算力的核心承载者,CPU 和 GPU 扮演着至关重要的角色。那么,这两个名字只差一个字的计算核心,到底有什么不同?它们又各自承担着怎样的任务?
0 什么是算力?为何如此重要?
随着数据被列为新的生产要素,算力的重要性日益凸显。所谓算力(Computing Power),是指计算系统对数据的处理能力,通常由数据中心中的服务器集群完成,最终实现对外输出结果。
算力的概念并不新。早在第一台机械计算机诞生之初,"算力"就意味着这些机械装置所具备的运算能力。随着半导体技术和集成电路的兴起,计算机进入芯片时代,
算力工具也从庞大的主机缩小到个人电脑(PC)乃至移动终端。
而今,人工智能和大数据的崛起极大推动了算力需求的激增——无论是训练深度神经网络,还是实时处理亿级数据,算力都是根本保障。
芯片,成为现代算力的核心载体。而谈论芯片的算力,绕不开 CPU 和 GPU。
1 CPU vs GPU: 概念
CPU(Central Processing Unit,中央处理器)被誉为计算机的“心脏”,负责执行程序指令、运算处理以及协调各硬件部件,是实现一切逻辑操作的总指挥。
为了适应各种复杂的数据处理场景,CPU 的设计极为复杂。它通常拥有多个核心,每个核心内包含算术逻辑单元、控制单元与高速缓存,
执行指令的流程遵循“取指、译码、执行、回写”的经典冯·诺依曼架构。
CPU 擅长处理逻辑复杂、任务多样的串行计算任务,比如运行操作系统、控制应用程序、处理事务型操作等。
CPU 工作流程
然而,随着计算机的普及,人们对图形显示的要求不断提高,例如在进行复杂的三维建模时,需要处理大量的图形数据以呈现逼真的效果;在玩大型游戏时,
要求系统能够处理高分辨率的画面和复杂的游戏场景。尽管 CPU 内部采用了各种方法来加速指令执行,但随着任务的增多,CPU 的性能显得有些力不从心。
面对这个问题,能否考虑增加更多的 CPU 来解决呢?这固然是一种思路,但这涉及到相当高的成本,并且堆叠数量也不能保证完全解决计算能力不足的问题。
这时候聪明的开发者就提出了一个更巧妙的解决方案:既然 CPU 的计算能力有限,为什么不将计算单元堆叠在同一块芯片上,让它们处理大量运算的任务呢?于是,GPU 诞生了。
GPU(Graphics Processing Unit,图形处理器)最初诞生于图像和图形渲染的需求。相比 CPU,GPU 拥有数量庞大的并行计算单元,设计目标就是执行大量简单、重复的运算任务。
起初,它用于游戏渲染和视频播放,但在人工智能兴起后,人们意识到:GPU 的并行计算能力远不止于图像处理。
于是,通用 GPU(GPGPU)概念诞生,使得 GPU 被广泛应用于科学计算、数据分析和 AI 模型训练中,成为高性能计算的核心。
2 CPU vs GPU: “差”在哪里?
通过引入 GPU,计算机系统可以充分利用其强大的并行计算能力,加速图形和图像相关的计算任务。CPU 负责逻辑任务,而 GPU 来处理大量简单重复的计算任务,
这种不同类型的任务分配给不同类型的处理器的模式,大大提高了系统性能。那么,CPU 和 GPU 到底“差”在哪里呢?
2.1 架构组成
CPU 和 GPU 之间存在显著差异,是因为它们各自针对不同的目标和需求来设计,具体体现在:
CPU 架构特点:少量但强大的核心,拥有复杂的控制逻辑和较大的缓存,更适合执行需要大量判断和跳转的任务。
CPU 基本架构
GPU 架构特点:大量计算核心、精简控制逻辑和缓存,适合执行大批量、结构统一的并行任务。
GPU 基本架构
CPU 拥有较大的缓存单元以及复杂的逻辑控制单元,相比之下计算能力只是 CPU 很小的一部分。而 GPU 则拥有数量众多的计算单元和超长的流水线,但只有非常简单的逻辑控制以及较小的缓存单元。
2.2 设计理念
CPU 和 GPU 的设计理念也截然不同。首先,CPU 是基于低延迟(Low Latency)设计的:
强大的运算单元:
CPU 拥有数量较少但是单个计算性能更强的运算单元,可以减少操作延时,更快地响应。 大容量缓存:
将一部分数据存储到高速缓存当中,使得高延迟的内存访问转换为低延迟的缓存访问。 复杂的控制单元:
分支预测(Branch Prediction)机制可以降低分支延时;数据转发(Data Forwarding)机制降低数据延时。
而 GPU 则是基于高通量(High Throughput)设计的:
精简的运算单元:
GPU 拥有大量的运算单元,虽然单个单元的性能比不上 CPU,但可以支持非常多的线程(Thread)从而达到非常大的吞吐量。 小容量缓存:
与 CPU 不同,GPU 缓存的目的并不是用来存储后面需要访问的数据,而是为线程提供服务,如果有很多线程需要访问同一个相同的数据,缓存会合并这些访问,然后再去访问内存。 简单的控制单元:
GPU 的控制单元没有分支预测和数据转发机制。
总的来说,CPU 拥有数量相对少(一般不超过两位数)但能力更强的核心,能够更快地处理单个任务,因而它尤其适合处理串行任务和逻辑控制等类型的工作。
相比之下,GPU 拥有成百上千核,虽然每个核心运算能力较低,但可以将复杂任务分解成非常多的子任务再并行处理。
串行处理过程
并行处理过程
一句话总结:CPU 善于“深度思考”,GPU 擅长“体力劳动”。
2.3 适用场景
CPU 与 GPU 二者的设计目的并不一样,因而适用的场景也截然不同。CPU 更擅长一次处理一项任务,而 GPU 则可以同时处理多项任务。
可以将 CPU 和 GPU 比作两种运输工具:
CPU 像飞机:速度快,但每次运载量有限,适合处理少量精细任务。
GPU 像货轮:单次执行速度较慢,但同时运载大量任务,适合海量重复计算。
在 AI 模型训练、图像处理、科学模拟等并行需求高的场景中,GPU 优势明显。而在日常办公、控制系统等需逻辑判断的任务中,CPU 更胜一筹。
CPU 与 GPU 处理任务对比
综上所述,CPU 是个集各种运算能力的大成者。它的优点在于调度、管理、协调能力强,并且可以做复杂的逻辑运算,但由于运算单元和内核较少,只适合做相对少量的运算。
GPU 无法单独工作,它相当于一大群接受 CPU 调度的流水线员工,适合做大量的简单运算。CPU 和 GPU 在功能上各有所长,互补不足,通过相互配合使用,实现最佳的计算性能。
3 CPU vs GPU: 演进与发展
技术的不断更新推动着计算机领域的快速发展,而在这个不断演进的过程中,CPU 和 GPU 也在持续发展。在过去的几十年里它们在各自的领域取得了显著的突破,
为计算机应用提供了更高的性能和效率。这不仅推动了数字化时代信息技术的发展,也为各个领域带来了新的可能性。
3.1 CPU: 扬长避短,稳步前进
自 1971 年第一款商用 CPU Intel 4004 诞生以来,CPU 已走过半个世纪。从早期 4 位处理器到如今十几核的高性能芯片,
CPU 的体积缩小、能效提升,但其核心逻辑结构和职责始终如一——稳扎稳打,重逻辑、广适应。
换句话来说,CPU 的功能和使用场景并没有发生较大的改变,无非是在能耗、性能以及可靠性上面不断地优化。
如今的 CPU 在数据处理、设备调度、软件执行等方面依然不可或缺,是整个系统的“大脑中枢”。
3.2 GPU 加速应用遍地开花
GPU 的演化更像是一场革命。
1999 年,NVIDIA 推出 GeForce 256,首次提出 GPU 概念;
2003 年,通用 GPU(GPGPU)出现;
2007 年,CUDA 技术面世,GPU 跨入通用计算时代;
随后,Apple 推出 OpenCL,进一步推动 GPU 在多领域的普及。
GPU 不再只是图形加速器,更成为通用计算平台的中坚力量。
3.3 大模型与向量数据库
近年来,AI 大模型如 GPT-3、GPT-4 的兴起,引爆了对算力的极致需求。以 GPT-3 为例,训练规模达到 1750 亿参数,动用超千张 A100 GPU 持续训练逾一个月。
而这场大模型浪潮,也带动了一个“新宠”的崛起——向量数据库。
向量是 AI 感知世界的“通用语言”。图像、声音、文本等信息,都会被转换成向量进行理解与处理。向量数据库正是专门用于存储与检索这些向量的工具。
但问题也随之而来:如何在亿级向量中快速完成相似性搜索?传统 CPU 难以胜任,GPU 的并行计算优势再次显现:
GPU 加速相似度匹配
显著提升查询速度与响应效率
成为大模型“长期记忆”的核心支撑
正如 NVIDIA CEO 黄仁勋在 2023 GTC 大会所言:“向量数据库是构建专有大模型的关键组件。”
但是,向量数据库本身的性能也是一个问题,说到底与大模型的结合只是其应用的一部分,它本质上还是一个数据搜索和分析的工具,
如果性能满足不了用户需求,同样也会被淘汰。于是乎,开发者们又想起了 GPU。
在向量数据库中,最核心的功能在于向量相似性搜索,即在一个海量的数据中找到和某个向量最相似的向量,它的计算量十分庞大,
而这恰好是 GPU 所擅长的,利用 GPU 的并行计算能力可以加速向量相似性搜索,显著提高查询速度,降低延迟。
4 CPU 与 GPU,缺一不可
CPU 和 GPU 并非替代关系,而是互为补充、各展所长:
CPU:善调度、强控制、逻辑运算高手;
GPU:多线程、高并行、数据处理能手。
在数字经济蓬勃发展的今天,只有合理协作、深度融合,才能释放出最大的算力潜能。
未来,无论是元宇宙、自动驾驶,还是通用人工智能,CPU 与 GPU 都将继续书写算力的传奇篇章。