nvlink 能让多个显卡的显存叠加起来用吗?

112 天前
 NeverBelieveMe

从如何选显卡的帖子看到了 nvlink 多 gpu 显存叠加,网上搜了一下,还是没太明白这个如何让显存叠加起来用的? 4 块 24G 显存的显卡能当 96G 显存用?

2479 次点击
所在节点    硬件
15 条回复
TimCoke
112 天前
不完全能,分布式代码很麻烦。且 nvlink 比卡贵系列
zhanying
112 天前
1.NVLink 不能把显存叠加把多个显卡当一个显卡用
2.要显存叠加也可以不用 NVLink
clemente
112 天前
只能走分布式
Qazxcv123
112 天前
现在的 nvidia 消费级 GPU 都不再支持 NVLINK P2P 桥接。用商业卡可能还支持
dhb233
112 天前
pcie 太弱鸡了,然后 nv 用自己的协议和总线把多块显卡连接起来,就是这样
NeverBelieveMe
112 天前
@clemente 分布式的作用是什么呢?
michaelzxp
112 天前
可以,就是之间的带宽没那么高,而且应用要支持。
HeraingBus
112 天前
“4 块 24G 显存的显卡能当 96G 显存用”
是的 ✅ ,你说的没问题
martinf
112 天前
@NeverBelieveMe 简单来讲,模型并行是在多张 GPU 间按层或算子切分模型,前向/反向时交换中间激活和梯度,并借助 NCCL ( NVLink/PCIe/网络)同步梯度后各自更新本地参数,以解决单卡显存不足的问题。
rogerer
112 天前
有很多种方式来并行。最简单的,你如果有 256 个 batch 要训练/推理,那就分成若干份,比如 4 个 64 个样本,这样就能一次推理得到 256 个样本的结果。但是如果模型参数足够大,以至于一张卡装不下,那就得在其他层面进行并行。
paopjian
112 天前
不同模型使用方法不一样吧,nvlink 用于加强卡间通信的, 比如这张卡算完的中间结果给下张卡继续计算, 这张卡处理下一个数据,或者训练完一个 batch 后互相更新本地参数. 并行计算也分多种方式, nvlink 是为了极致运算效率的, pcie 能用就先 pcie 吧
Immunize
112 天前
是也不是,NVLINK 本身不能,只是一种告诉物理连接。需要通过 NCCL 和 NVSHMEM 这些 P2P 通信框架通过 NVLINK/PCIE/NET...将算力互联起来的,为上层训练框架屏蔽了底层细节。
clemente
112 天前
@Immunize 把公司的图拿来了.... 不太合适吧
Immunize
112 天前
@clemente 这是华为的 zomi 在 github 上开源的 AIInfra 课程文档。https://github.com/chenzomi12/aiinfra/blob/main/02StorComm/02Communicate/02CCOverview.pdf
iguess
112 天前
nvlink 是给单机多卡的 GPU 之间通信的,总带宽远高于 PCIE 。 家用级的显卡还不配使用 nvlink 的。 我这边项目里都是 H100*8 的服务器,多个节点之间还得走 Infiniband 。 我上次鼓捣 bf16 的 deepseek v3 ,用了 32 张 H100 。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1135921

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX