-
-
可以弄个正式的项目,我加入到论坛的本地项目中,给个专页,以后会开发更好的展示页面,现在项目太少。你可以作为胶水项目。
你这还是单卡,不是多卡项目,不要搞混了。多个节点分拆N久之前就完成了,它无法替代单卡大显存。
老哥我按照你的意思是 “虽然两张卡都参与计算,但每张卡仍保存完整的一套权重和中间数据,因此没有降低单卡显存门槛” 这样子理解了。
确实,单凭加速或两卡都有负载,确实不能证明显存容量得到了有效分摊。但我们这次不是全部复制,主隐藏状态和部分模块仍然每卡各有一份,而主要 DiT 矩阵权重、QKV、前馈中间数据和调制表进行了分片。
所以我又让GPT跑了一遍,记录了完整状态(数据太长,所以我贴到楼下了)。跟GPT讨论的最终结论是这样的:
如果忽略跨卡通信成本,并假设完成了四卡适配(系统层面支持TP4),多卡能够让生成任务的可承载容量近似线性增长,但存在重复状态和工作区开销。
按这次双卡测得的布局作简化估算,每增加一张 32GiB R9700,大约能增加 20.5GiB 的“单卡等效任务容量”。两张约相当于 52GiB,四张约相当于 93GiB。
这是一种扣除重复开销后的容量估算,不代表显存被合并成了统一地址空间,也不是四卡实测结果。
对应的理想化估算表:
卡数 物理显存合计 扣除额外开销后的单卡等效容量 1 张 32 GiB 32 GiB 2 张 64 GiB 约 52.5 GiB 3 张 96 GiB 约 72.9 GiB 4 张 128 GiB 约 93.4 GiB 计算假设是把本轮新增的 11.55 GiB 并行开销,近似视为每增加一张卡都要付出的固定成本:
等效容量 ≈ 32N-11.55(N-1)
-
配套数据 :
按这次 双 R9700、H3 全参考、1344×768、8 步的完整运行记录,两张卡的布局基本对称。
每张卡实际占用约 27.90 GiB:
显存区域 每卡容量 备注 数据池与工作区 约 17.72 GiB 中间计算数据、参考条件、latent、LoRA 参数和临时空间 基础权重池 约 8.75 GiB 当前常驻权重,以及按层轮换使用的权重暂存槽 其他占用 约 1.43 GiB 驱动、队列及额外分配等;这是差额估算 驱动层显存峰值 约 27.899 GiB 包含以上各项 设备报告总容量 约 31.86 GiB 配置中主动预留约 4 GiB,未全部占满 其中,17.72 GiB 的数据池内部是:
内容 每卡容量 多卡组织方式 DiT 临时中间数据峰值 约 13.026 GiB 混合:QKV、前馈中间数据分片;完整隐藏状态等仍复制 请求持久状态 约 2.750 GiB 混合:参考条件、latent 等有复制;调制表已分片 LoRA 参数与工作区 约 1.419 GiB 依对应层的分片与执行方式安排,不能整体算作重复数据 算子临时空间 scratch 约 0.455 GiB 每卡为两条执行通道预留 音视频输出缓冲 约 0.067 GiB 保存输出数据 合计 约 17.717 GiB 含少量对齐空间 8.75 GiB 的基础权重池内部是:
内容 每卡容量 用途 常驻基础权重 约 2.88 GiB 放在显存里直接使用 权重轮换暂存槽 约 5.77 GiB 从主机搬入待计算的权重,用完后供其他层复用 池内剩余空间 约 0.10 GiB 尚未使用的池预算 合计 约 8.75 GiB 上面三项已包含其中 暂存槽不是每层都保留一份,而是多层轮流使用同一片空间。LoRA 也已经计入数据池,不能再次加到总量上。
主机内存则承担了另一部分:
主机侧指标 本次记录 主机侧权重,两 rank 合计 约 24.72 GiB 进程锁页内存 约 26.83 GiB 引擎进程 RSS 峰值 33.619 GiB 引擎进程 VmSwap 峰值 0 稳定采样每步主机→两卡权重暂存复制 约 12.208 GiB 主机侧这些指标存在包含关系不能相加,每步搬运量也不是瞬时内存占用。
最关键的对照是:
同一容量配置 TP1 单卡计划 TP2 每卡计划 TP2 两卡合计 工作区,包含 LoRA、scratch 29.35 GiB 17.72 GiB 35.43 GiB 基础权重声明总量,包含主机卸载部分 25.01 GiB 15.24 GiB 30.48 GiB -
-
,
T terry 将此主题从 随便聊聊 移至此处
-
,
T terry 引用了 此主题
-
太长了,我弟,看不完啊,头疼,GPT的回复:
如果你说的是 DiT 那部分:对,TP 能把它拆到两张 R9700 上,让原来单卡显存不够的任务有机会跑起来。 但这不等于视频生成的所有显存都能平摊;latent 和 VAE 也可能仍有单卡显存要求。 你这份记录还没证明它们也分摊了,所以不能据此保证以前单卡不能跑到高清视频,双卡一定能跑。你重点解决这个疑问,我好水一期视频。就是我关注的就是能不能多卡TP了,就这一点。另外它也不划算,通信会大大降低效率,价格上也不划算。但对于买了一张的人,加第二张有很大意义。
-
-
-
@terry 最终完整采样、解码并导出了视频,不是只跑了 DiT 测试。当时 VAE 已经分摊了解码块的计算,以及相应的部分中间数据,但权重、输入处理和汇集缓冲仍有单卡容量要求,这部分可能得进一步测试,包括预处理部分,假如显卡足够的话,完全可以也一把梭。
最好还是直接四张R9700上,我去看看能不能租一台,重点验证一下思路是否可行。DiT 视频生成这种负载特别适合多卡,并不算吃PCIE通道(但起码得P2P),他跟llm的推理是不一样的的,如果能验证了有关显存部分的猜想,那么....
算了我先去找台机器了。
-
@Bunsei 我让有双卡xtx的人测试下,xtx能用才是王道。R9700还是贵了,买两张这玩意为啥不买4090 48G单卡,绝对吊打。除非手里有了一张R9700,还有跑LLM双卡R9700体验很好。它也能分拆,单卡H3,另一张LLM。各有优劣吧,但XTX能跑就完全不同了。
-
@terry 那老哥最后面那个素材包你能不在你的4090上尝试生成一下看看,看看N卡正常需要多久,我好也有个数。 RDNA3 速度可能没有那么快,而且Radiance他只支持RDAN4。不过如果这个思路通了的话,剩下的无非就是交给AI移植一下,虽然性能没有那么高,但是显存就不是那么金贵了~
@Bunsei 我特么闲的蛋疼啊,我这几天连视频都是水的,让论坛其他用户测试吧,我就在玩游戏,家里有事处理,要持续一个月左右。我只能视频里给你提下,让其他用户测试下。
我已经剽了一期视频,你继续测试啊,多出点项目。我最近迫切需要白嫖。ComfyUI是我下阶段的重点。
@tony-wang 我哥测试下RTX Pro5000的数据,让他死心。
@imbiplaza-asus @kop-wang 我弟你们测试下呢,这项目很有意义。 -
-
@Bunsei 问个noob question, 我看你之前好像发帖专门提到过你的850主板可以跑双pcie5 x8, 这个方案是否必须建立在这个基础之上啊? 内存对整体性能的影响大吗?
-
-
-
我也想知道,看看有没有
友能帮忙试试看吧,素材资料我都放在了文章最后。