GPU推理服务器怎么配才不浪费钱?显存、带宽与弹性的取舍
团队把模型训练完,准备上线对外服务,结果发现推理这一环比训练还烧钱。训练可以排队等,推理是实时的,用户点一下就得在几百毫秒内出结果。卡买少了顶不住并发,买多了大部分时间在空转。更麻烦的是,多数人第一次配机器时,注意力全在「买哪张卡」上,忽略了卡装得下模型只是起点。
下面按「先判断够不够用,再决定买还是租,最后看弹性怎么省」的顺序讲。中间会给出具体型号和数字,也会说清楚哪些钱可以省、哪些省了会出事。
显存装不下模型,其他参数都是空谈
判断一台机器能不能跑你要的模型,第一步只看显存容量。7B 参数模型用 FP16 推理,权重大约占 14GB,加上 KV Cache 和框架开销,实际要留 18~20GB。RTX 4090 的 24GB 刚好压线,单路请求没问题,并发一上来就吃紧。
70B 模型 FP16 要 140GB 以上,单张卡根本放不下,得靠双卡 A100 80GB 或者四卡方案。这时候问题就从「卡够不够快」变成「卡之间怎么通信」。NVLink 和 PCIe 4.0 的差距在推理场景里不像训练那么致命,但批量并发时,通信开销会直接吃掉吞吐。
显存装得下之后,才轮到内存带宽决定跑得多快。这里有个容易踩的坑:很多人以为 GPU 显存带宽就是全部,忽略了主机内存到显存的数据搬运。模型加载、动态 batch 拼接、预处理后的张量传输,都要走 PCIe。PCIe 4.0 x16 单向大约 32GB/s,如果预处理放在 CPU 上做,很容易成为瓶颈。
按我的经验,推理机器的配置顺序应该是:先确认显存能装下模型,再确认主机内存至少是显存的 1.5 倍,最后才看 GPU 的计算核心数。顺序反了,钱花在算力上,卡在数据传输上。
散热和电源:连续跑 72 小时才见真章
实验室里跑个 demo,机器开着机箱盖都能过。真上线了,7×24 小时满载,散热压不住就会降频。RTX 4090 单卡功耗 450W,双卡就是 900W,加上 CPU 和主板,整机峰值轻松破 1200W。电源选 1200W 金牌是底线,再低就是拿稳定性赌运气。
机箱风道比很多人想的更重要。涡轮卡适合多卡密集部署,把热风直接排出机箱;轴流卡散热好但热风留在机箱里,双卡贴太近会互相加热。我见过不少配置单上卡和电源都选对了,最后因为机箱空间不够,两张卡只隔一个槽位,满载十分钟就降频。
如果机房环境温度控制不住,风冷方案在夏天会很吃力。这时候要么上水冷,要么把机器放到温度更稳定的机房。秀米云的日本机房常年温度控制比较稳,如果推理服务面向亚太用户,日本原生IP物理服务器 ④ 配的是 Intel Xeon Gold 6138×2 和 64G DDR4,适合作为推理服务的前端调度节点,GPU 机器单独托管,网络走 40M 独享带宽。
这里有个取舍:全自建 GPU 机器,前期投入大,但长期跑满利用率时单次推理成本低。按需租用,前期省,但单价高。我的判断是,如果日均推理请求稳定在 10 万次以上,自建更划算;低于这个量级,租用或者混合方案更灵活。
弹性扩展省的是闲置时间的钱
推理负载有明显的波峰波谷。白天请求多,凌晨可能只有白天的十分之一。如果按峰值配置机器,低谷时 GPU 利用率可能不到 15%,这部分钱就是纯浪费。
弹性扩展的思路是把推理服务拆成两层。常驻一层跑基线负载,用固定配置的机器;峰值一层用按量计费的实例顶上去,请求回落就释放。两层之间用负载均衡调度,对用户完全透明。
这样做的前提是模型能快速加载。如果模型加载要五分钟,弹性扩容就来不及。所以模型文件要么放在高速共享存储上,要么每个实例预热好一个副本。冷启动时间控制在 30 秒以内,弹性才有意义。
具体到成本,一个中等规模的推理服务,常驻两台双卡 A100 80GB 的机器,峰值再弹性扩两到四台,比全程按峰值配置能省下大约四成。省下来的钱不是白省的,代价是架构复杂度和运维成本上升,需要有人盯着扩缩容策略。
我的建议
预算在二十万以内、团队没有专职运维的,先租不买。租一个月看真实负载曲线,比任何估算都准。模型小于 13B、并发低于 50 的,单张 RTX 4090 24GB 配 64G 内存和 1200W 电源就能起步。
要跑 70B 模型或者并发上百的,直接上双卡 A100 80GB,别在中间档位反复试错。中间档位省下的钱,会在模型跑不动的时候加倍还回去。至于弹性扩展,等日均请求稳定过十万次再考虑,过早引入只会增加运维负担。