AI推理算力怎么配才不浪费:GPU服务器的弹性扩展与成本取舍
做AI应用的人大多经历过这个阶段:模型在本地跑通了,demo发出去也没什么问题,等到真要上线给一批用户用,才发现算力这件事根本没法靠估。上线第一周请求少,一张卡绰绰有余;某个功能被转发之后并发翻几倍,延迟从几百毫秒跳到好几秒,运维半夜被叫起来重启服务。这个从「能跑」到「扛得住」之间的落差,就是选GPU服务器时最容易踩空的地方。
下面按推理这条线走:先判断你到底需要多大的卡,再看弹性扩展该怎么做,最后把成本里那些不显眼的部分摊开算。
先算显存这道门槛,再谈别的
判断一台机器够不够用,第一步是看显存能不能装下你要跑的模型。7B参数模型用FP16精度推理,权重本身大约占14GB,加上KV Cache和框架开销,24GB显存的卡是比较舒服的起点。RTX 4090的24GB显存能单卡跑7B,13B在FP16下就要40GB左右,得靠量化或者多卡。
装得下之后,决定速度的是内存带宽。同一个模型放在带宽更宽的卡上,每秒能吐出的token数差别很明显,尤其是长上下文场景,KV Cache的读取压力会放大这个差距。散热决定的是能不能连续跑几个小时不掉速——数据中心卡和消费卡在这点上的分野比参数表上看起来大得多。
所以选型顺序我一般是这样:
- 先按模型参数量和精度算出显存需求,留出30%余量给KV Cache和碎片
- 再看带宽和散热,这两项决定的是吞吐和稳定性,不是能不能跑
- 最后才看单价,因为前两项没算清楚,单价再低也是白买
单人使用的话,24GB是够的。多人并发就完全是另一回事,同一张卡要同时处理多个请求,显存和带宽都按并发数线性上涨。
弹性扩展不是随时加卡,而是提前留好接口
很多人理解的弹性扩展是「不够了就加机器」,实际操作里麻烦的地方在于模型加载。一个13B模型从磁盘读到显存,冷启动通常要几十秒到几分钟,如果扩容是在流量高峰触发的,这段时间用户就在等。
我的做法是把扩展分成两层。常态流量用固定配置扛,比如单卡或者双卡;突发流量走预热好的备用实例,模型提前加载好,切过去只要改路由。这样扩容动作从「等模型加载」变成「切流量」,响应时间差一个数量级。
另一层是纵向的。单机从单卡升到双A100,中间要确认主板PCIe通道数够不够、电源功率是否留有余量。双A100整机功耗通常要1200W以上的金牌电源才稳,机箱风道也得重新算。这些在租用整机的时候供应商会配好,自己攒机的话就得一项项对。
如果推理服务面向的是海外用户,机房位置会直接影响首包延迟。香港节点到华南通常在30ms以内,到东南亚多数地区也在50ms上下,做实时对话类应用时这个差别用户是能感觉到的。香港柜机定制服务器③这类96核192线程、128G内存的配置,适合把推理调度和数据预处理放在同一台机器上,减少卡与卡之间的数据搬运。
成本里最容易被忽略的是闲置和返工
GPU算力贵,但真正烧钱的地方不在单价,而在买错之后的返工。卡和主板不匹配要整套换,电源带不动双卡又得加钱,来回一趟等于多花一台机器的钱。
闲置是另一个大头。按量计费听起来灵活,实际跑下来,如果服务是7×24在线,包月的成本往往比按量低不少;反过来,如果负载集中在白天某几个时段,按量反而划算。这个临界点大概在每天使用8小时左右,超过就该考虑包月。
按我的经验,先租一个月看真实负载曲线,比任何估算都准。跑满一周之后你会知道峰值并发是多少、平均利用率是多少,再决定是加卡还是换机型,这时候的判断才有依据。
还有一点:推理服务的成本不只是GPU。数据预处理、日志、监控这些如果和推理挤在同一台机器上,会互相抢资源。把非GPU任务拆到普通服务器上跑,能让GPU的利用率更干净,这笔账算下来通常比省下的那点机器钱值。
什么时候该上多卡,什么时候别碰
单卡能扛住的负载,不要急着上多卡。多卡推理涉及模型并行或者张量并行,通信开销会吃掉一部分收益,配置和调试的复杂度也上去了。只有当单卡显存装不下模型、或者单卡吞吐确实到顶的时候,多卡才有意义。
反过来说,如果你的业务是多个小模型并行服务,与其堆一张大卡,不如用几台单卡机器分开跑,隔离性更好,单点故障的影响也小。
结论给得直接一点:个人或者小团队做7B级别的推理,24GB单卡起步,月成本控制在几百美元量级;模型到13B以上、或者并发稳定在几十路,再考虑双卡和更大显存;如果是7×24的高并发线上服务,优先选包月整机而不是按量,并且把预热实例准备好。预算有限又拿不准负载的,先租一个月实测,别一上来就按峰值配置买断。