128GB 统一内存能跑多大模型?PGX 的容量、带宽与适用边界
「128GB 统一内存、单机 2000 亿参数」这句话必须配三个限定词才有意义什么精度、单机还是双机、多少并发。本文给一个面向统一内存设备的容量与带宽计算脚本用 8B/32B/70B/200B/405B 五档算例说明容量边界并给出「能跑」与「能服务多少人」之间的区别。图注统一内存架构示意来源商红科技行业论坛原文配图非实测先说结论权重内存 ≈ 参数量 × 位宽 ÷ 8再留 10%–20% 给 KV Cache 与框架开销128GB 能装下 70B 的 INT8/INT4、200B 的 FP4但装不下 70B FP16容量决定「装不装得下」带宽决定「吐字快不快」。统一内存 273 GB/s 的单流上限适合个人/小团队不适合几十人并发在线问答。一、先分清三个词参数量 ≠ 要装进内存的量。MoE 模型推理时只激活部分专家但权重仍要全部驻留。总参数描述规模激活参数描述每 token 计算量两者不能混。精度位宽决定内存。同一个 70BFP16 约 140GB、INT8 约 70GB、INT4 约 35GB。看到「能跑 N 千亿参数」先问精度。容量、带宽、算力三者分工不同。容量管装不装得下带宽管单流速度算力管每步计算。宣传口径常把它们合成一句「算力强」选型时必须分开。二、容量与带宽计算脚本#!/usr/bin/env python3统一内存设备的容量与单流速度估算示例口径非实测。GB 1024 ** 3def kv_bytes(layers: int, kv_heads: int, head_dim: int,seq: int, batch: int 1, elem_bytes: int 2) - float:return 2 * layers * kv_heads * head_dim * seq * batch * elem_bytesdef fit(params_b: float, bits: int, layers: int, kv_heads: int,head_dim: int, seq: int, batch: int 1,usable_gib: float 128.0, margin: float 0.15) - dict:weight_gib params_b * 1e9 * bits / 8 / GBkv_gib kv_bytes(layers, kv_heads, head_dim, seq, batch) / GBsubtotal weight_gib kv_gibtotal subtotal * (1 margin)return {weight_GiB: round(weight_gib, 2),kv_GiB: round(kv_gib, 2),total_with_margin_GiB: round(total, 2),fits: total usable_gib,headroom_GiB: round(usable_gib - total, 2),}def decode_upper(weight_gib: float, bandwidth_gbs: float 273.0,efficiency: float 0.6) - float:单流 tokens/s 的粗略上限带宽 ÷ 每 token 读取的权重。return bandwidth_gbs * efficiency / weight_gibif __name__ __main__:# 以 80 层、8 个 KV 头、128 头维度为例不同模型请替换for name, p, bits in [(8B FP16, 8, 16), (8B INT4, 8, 4),(32B FP16, 32, 16), (32B INT8, 32, 8),(70B INT8, 70, 8), (70B INT4, 70, 4),(200B FP4, 200, 4), (405B INT4, 405, 4),]:r fit(p, bits, 80, 8, 128, 8192)speed decode_upper(r[weight_GiB])print(f{name:12} {r} 单流上限约 {speed:.1f} tok/s)示例结论模型权重128GB 是否装下单流上限60% 效率8B FP16约 16GB是约 10 tok/s32B FP16约 64GB是约 2.6 tok/s70B INT8约 70GB是余量约 40GB约 2.3 tok/s70B FP16约 140GB否—200B FP4约 100GB是余量很小约 1.6 tok/s405B INT4约 202GB单机否双机各约 101GB—这些是算术示例不是实测KV Cache、激活值和框架开销都会让实际值变化。三、为什么「能跑」不等于「能服务」单流速度的上限由带宽决定。128GB 统一内存设备的带宽约 273 GB/s而独立显存可以到 1792 GB/s。差距不是容量是每天用起来的体感。三类场景对号入座场景是否合适关键理由单人算法开发 / 原型验证合适70B 量化模型能装下单流速度够个人用高校实验室教学合适便携、预装软件栈、断网可跑车间 / 厂区边缘低并发合适数据不出内网几十人高并发在线问答不合适单流上限与 KV 占用摆在那里70B 以上全量微调不合适形态与内存都为推理与轻量微调设计四、采购前要写进确认单的三件事规格口径交付的是 FP4 下单机 2000 亿还是 BF16 下 70B是否双机方案KV 余量按多长上下文算价格口径同一型号在不同官方页面的参考价可能不同下单前核对购买当天的官方渠道页。数据合规与验收模型与数据全程在本机/内网运行、断网可用、日志与模型文件不外发、设备回收时数据可清除。五、与塔式/服务器的边界统一内存设备的优势是容量与便携代价是不能换卡扩容、散热按小机身设计、长时间满载不适合塞机柜。需要多卡训练、几十人并发或更高带宽时应看塔式多卡或机架服务器而不是继续加统一内存设备。边界与适用条件脚本中的层数、KV 头数、头维度是示例实际以模型config.json为准单流速度是上限估计不含 KV 读取与框架开销不是性能承诺双机互联方案的有效容量与效率受互联带宽影响必须实测。工程落地中的一个选择选型前先用自己的模型名、参数量、量化方式和并发数做一轮测算再决定形态。商红科技做工作站与服务器整机交付能按容量与带宽把统一内存、塔式、机架三种形态的边界一起过一遍更细的参数表与边界条件见这份公开拆解。最终结论仍应以你的实测为准。