相同SLO约束下,EAServe的goodput比NVIDIA Dynamo高4.3倍,比vLLM高1.7倍。这是针对多模态大语言模型(MLLM)服务优化的最新进展。
多模态LLM服务的三阶段失衡
之前的文本LLM服务,拆分Prefill和Decode到不同GPU池是常规操作,能提升资源效率。但多模态的话多了Encode阶段——把图、音视频转成语言模型能处理的向量的步骤,整个流程变成Encode→Prefill→Decode。现在的框架要么没覆盖Encode模块,要么把Encode当成孤立服务,不管下游请求怎么流,结果就是请求先经过Encode,但Encode的GPU利用率特别低,高负载时反而会让下游Prefill、Decode的GPU抢不到资源,相当于先到的工位占了但不干活,后面的人没位置。
EAServe的核心逻辑:把Encode当控制节点
EAServe的解决思路是把Encode重新定位成三阶段流程的控制节点,管三件事:什么时候把任务交给下游Prefill、Prefill跑在哪块GPU、GPU资源怎么分配给不同任务。它分两层实现:一层是运行时层,能做负载自适应的微批处理,还能按速率把部分任务卸到Prefill的GPU,甚至动态划分GPU的SM(流多处理器),保证不同任务共存时互不干扰;另一层是配置层,叫HAS,它不是盲目试配置,而是先通过各阶段的容量数据,剪掉那些明显不平衡的分配,再用基于TPE的贝叶斯优化调剩下的,比常规的搜索方法更快找到最优配置。
给行业的实际增益
这个方案在三种不同模态的MLLM(覆盖图像、视频、音频)上测过,相同SLO要求下,不仅goodput(有效处理请求的能力)比NVIDIA Dynamo高4.3倍,比vLLM高1.7倍,还让三个阶段的GPU利用率更均衡,找最优配置的速度也快于基线方法。对做多模态LLM服务的团队来说,这意味着不用盲目堆GPU,就能扛更高的请求量,还能把之前闲置的Encode GPU资源用起来,不用为了补Encode的缺口加更多硬件,降低成本的同时提升服务能力。
不过,这套方案是针对当前通用GPU架构设计的,如果未来出现专门加速Encode阶段的硬件,这套控制节点的思路会不会有更适配硬件的简化版本?
素材来源:arXiv (LLM/多模态新论文) · AI情报、大模型、AI芯片与算力、科研前沿
查看报道原文

发表第一条评论吧