CPU 和 GPU 的差别不在【哪个快】,在同一时刻有多少个在干活:CPU 有几十到一百多个核,擅长少量复杂、有先后顺序的活;GPU 有几千到上万个核,擅长大量相同、互不依赖的活。教材把这一条放进驱动云服务的技术里,是因为云的算力种类变了——过去只有通用算力,现在多了一种【要按并行宽度买的算力】。
前四节讲的都是【怎么把请求送到机器上】:接进来(5-2)、在机房里走(5-3)、决定交给谁(5-4)。这一节换了个对象——讲机器本身在算什么。
它接着 最新技术的运用 那条线:那一节讲【机器学习因为云而变得可用】,讲到【买卡 → 租卡 → 托管平台 → 调接口】四段台阶;这一节回答的是那些卡到底特殊在哪里。它也和 云计算的服务器是虚拟服务器 呼应——那一节讲一台物理机怎么切成很多虚拟服务器,这一节讲一张 GPU 怎么切成很多片。
一、两种处理器,两种取向
| 处理器 | 核心数量级 | 擅长的活 |
|---|---|---|
| 服务器 CPU | 几十到一百多个 | 少量、复杂、有先后顺序的任务 |
| 数据中心 GPU | 几千到上万个 | 大量、相同、互不依赖的任务 |
这个被概括成一句话:CPU 是几个很聪明的博士,GPU 是几千个小学生。
- 博士适合处理复杂问题——要判断、要分支、要按顺序一步步来。但人少,一次只能干几件事。
- 小学生适合处理大量重复的事——每个人只会做简单的加减乘除,但几千人同时做,总量惊人。
所以关键不是【谁强】,而是【你手上的活是什么形状】:
- 有先后依赖、需要判断的活(跑数据库、处理网页请求、编译代码)→ 交给 CPU。
- 大量相同、彼此独立的活(矩阵乘法、图像处理、训练模型)→ 交给 GPU。
如果硬要反过来:让 CPU 做矩阵乘法,它会很慢(核太少);让 GPU 跑数据库,它会很别扭(几乎每一步都要判断,而 GPU 最不擅长判断)。
二、动手 Demo:一次矩阵乘法,差 79 倍
看到什么算成功:
==================================================================================================
【Demo 5】并行处理的动向:GPU
==================================================================================================
CPU 和 GPU 的差别不在【哪个快】,在【同一时刻有多少个在干活】。
【一】两种处理器的取向
处理器 核心数量级 擅长的活
------------------------------------------------------------------------------------
服务器 CPU 几十到一百多个 少量、复杂、有先后顺序的任务
数据中心 GPU 几千到上万个 大量、相同、互不依赖的任务
【二】算一笔并行账:4096 阶矩阵乘法
运算量 = 2 x 4096^3 = 137,438,953,472 次浮点运算(约 1.37e11)
处理器 理论算力 算完要多久
------------------------------------------------------------------------------
双路 CPU(128 核) 6.1 TFLOP/s 22.53 毫秒
一张数据中心 GPU 60.0 TFLOP/s 2.29 毫秒
8 卡 GPU 服务器 480.0 TFLOP/s 0.29 毫秒
这一次矩阵乘法:CPU 要 22.53 毫秒,8 卡服务器只要 0.29 毫秒,
差 79 倍——差的不是单核速度,是并行的宽度。
【三】一张 GPU 怎么切给多个人用
MIG(多实例 GPU):一张物理卡最多切成 7 片,
每一片有自己独立的内存和计算单元,互不干扰。
于是小任务不用独占一整张卡,云服务商也能按片定价。
这也解释了一件事:为什么云上的 GPU 比 CPU 贵那么多——
贵的是【并行宽度】,而并行宽度是靠面积和功耗堆出来的。
读结果:
- 第二张表里【79 倍】这个数字不要理解成【GPU 快 79 倍】。它的意思是:在这种【大量相同运算】的活上,GPU 的并行宽度让总量差了 79 倍。换一种活(比如跑一个网页请求),两者的差距可能就反过来——GPU 的几千个核在那种场合大部分是闲着的。
- 注意表里是【理论算力】。真实跑起来还要算上数据搬运的开销:数据要先从内存搬到 GPU 里,算完再搬回去。所以实际加速比小于 79 倍,这个折扣在【活不够大】的时候尤其明显——这也是为什么小任务用 GPU 往往不划算。
三、为什么 GPU 是【云上被单独拿出来卖】的东西
在云上,GPU 通常不是按【vCPU 数量】算钱,而是按卡、按小时单独计价,而且贵得多。原因是三件事:
- 并行宽度是靠面积和功耗堆出来的。要在一个芯片上塞几千个核,芯片面积更大、功耗更高——物理成本摆在那里。
- 它需要配套的东西。GPU 服务器要更强的供电、更狠的散热(1-8 里算过密度带来的功耗问题),在 AI 集群里还要专门为它改造网络(5-3 提到的那条线)。
- 它不能按比例虚拟化。CPU 可以切成 1/8 核这种很小的单位,GPU 切分的最小粒度大得多——所以【用一点点】这件事本身就不便宜。
这三点合起来解释了 2026 年的一个现象:GPU 成了云上最紧俏、也最贵的资源,于是有了【怎么切得更细】这件事。
四、切分方式:MIG 与虚拟化
GPU 的切分有两种思路,区别很像 CPU 世界里【物理核】和【超线程】的区别:
| 切分方式 | 怎么切 | 特点 |
|---|---|---|
| 时间切片 | 多个人轮流用同一张卡 | 便宜,但会互相影响 |
| MIG(多实例) | 把卡按硬件切成几块 | 每块有独立内存,互不干扰 |
| 整卡直通 | 一张卡给一台机器独占 | 性能最好,也最浪费 |
MIG 是近年最关键的进展:一张物理卡最多切成 7 片,每一片有自己独立的高带宽内存、缓存和计算单元。这意味着小任务不用再独占一整张卡——用多少切多少,云服务商也能按片定价。
真实世界里的用法很灵活:白天切成多片给很多人跑推理(每人一点),晚上重新配置成一大片拿去训练大模型。同一张卡,不同的时间做不同的事——这跟 1-2 里讲的【把固定成本换成可变成本】是同一个思路,只是从机器层面下移到了芯片层面。
30 秒实验
打开任意一家云服务商的 GPU 实例页面,做两件事:
- 对比一下【同样 vCPU 数量】的通用型和 GPU 型实例的价格,看差几倍。
- 看它列出的 GPU 规格里有几项是【显存大小】,以及有没有提【支持 MIG 或分片】。
做完你会看到一件事:GPU 实例的规格表里,显存是被重点标注的参数(比如 80 GB、141 GB),而通用型实例重点标的是 vCPU 和内存。原因就是并行的前提是【数据能装进来】——显存不够,再多的计算核也只能等着搬数据。这也是【为什么 GPU 不是越大越好,而是要配得上你的任务】的答案。
常见误区
-
错误:GPU 比 CPU 快,所以有 GPU 就用 GPU。——纠正:GPU 的快只在【大量相同、互不依赖】的活上成立。跑数据库、处理 HTTP 请求、执行有大量分支判断的逻辑,这些活到 GPU 上反而更慢——因为每一步都要判断,而判断正是它最弱的地方(它靠的是【几千个核做同一件事】,一旦要分头做不同的事,效率就崩了)。判断标准:这个任务能不能被拆成几千份一模一样的活——能,才考虑 GPU。
-
错误:买一张 GPU 卡,公司所有人都能加速。——纠正:一张卡同一时刻只能服务有限的任务,而且切分是有代价的(时间切片会互相影响,MIG 的分片数量有限)。所以现实里 GPU 往往是团队里最稀缺的资源,需要排队或申请——这也是为什么云上【按小时租 GPU】比【买一张放在机房里】更常见:买回来大部分时间在闲置,租的话用多久付多久。3-13 里【买卡 → 租卡】那一段台阶,讲的就是这件事。
-
错误:既然理论算力差距那么大,实测也应该差不多。——纠正:中间的折扣发生在【数据搬运】上。计算的前提是数据已经在显存里了,而把数据从内存搬进显存、算完再搬回去,这段时间是不产生计算量的。活越小,搬运占的比例越高——所以小任务跑 GPU 可能比 CPU 还慢。这也是本节 Demo 特意标注【理论算力】的原因:真实性能要看【搬运时间 ÷ 计算时间】这个比值,而不是看标称的算力数字。
-
错误:GPU 是给 AI 用的,我们不做 AI 就用不上。——纠正:GPU 的适用范围比【AI】宽。图形渲染、视频转码、科学计算、密码学运算、日志的批量处理,这些都属于【大量相同运算】,都能用上。反过来,AI 也不是只有训练才用 GPU——推理(把训练好的模型跑起来回答用户)同样需要,而且推理的总量往往比训练大得多。所以判断要不要 GPU,看的还是那个形状:活是不是大量且相同。
自测三问(点开对答案)
1. 为什么同样叫【一个处理器】,CPU 和 GPU 的核心数会差两个数量级? —— 因为**它们被设计来处理的活形状不同**。CPU 的核少但每个核很复杂(能判断、能重排、能做投机执行),**适合【下一步做什么取决于上一步的结果】**这类任务。GPU 的核极简单,**单个核只会做最基本的运算**,但它靠数量取胜,前提是**几千个核能做同一件互不干扰的事**。所以不是【谁更先进】,而是**面对不同的活,最优的形状本来就不一样**。 2. 为什么把 GPU 切细(MIG)这件事对云服务商特别重要? —— 因为**切的细度决定了它能不能卖给小客户**。一张卡如果只能整张卖,那么**只想要一点 GPU 能力的客户就买不起、也不会买**——这部分需求就流失了。而能切成 7 片之后,**同一张卡可以卖给七个不同的客户,每个人按自己需要的份额付费**。这不只是【多赚钱】,更是**把可用性变成了可售性**——1-7 里虚拟机的超售是同一个道理,只是这一次发生在芯片内部。 3. 为什么 GPU 在云上通常按【卡】计价,而不是像 CPU 那样按核计价? —— 因为**它的最小可用单位本来就大**。CPU 可以切到 1/8 核这种粒度,切成很多份也不影响使用;**而 GPU 的分片数量有限(一张卡最多 7 片),而且每片的能力也不能无限细**。所以对云服务商来说,**按卡计价更接近真实成本结构**(一张卡的投入是固定的,分给谁都一样)。这也解释了为什么 GPU 的价格既贵又【颗粒度大】——**贵是物理原因,粒度大是技术原因。**- ☐ 下一节(5-6 大量 IT 资源的管理:IT 服务控制、IT 服务操作)
相关笔记
- 负载的分散 —— 上一篇:请求交给哪台机器
- 最新技术的运用 —— 机器学习因为云而可用的四段台阶
- 云计算的服务器是虚拟服务器 —— 一台物理机怎么切成很多台
- 云计算的服务器都是机架式或高密度式 —— 高密度带来的功耗与散热问题
- ☁️ 云计算 · 索引 —— 全课路线图