本文是LLM系列文章,针对《DistServe: Disaggregating Prefill and Decoding for Goodput-optimized Large Language Model Serving》的翻译。
摘要
DistServe 通过解聚预填充和解码计算来提高大型语言模型 (LLM) 服务的性能。现有的 LLM 服务系统将这两个阶段放在一起,并在所有用户和请求中批量处理预填充和解码的计算。我们发现,这种策略不仅会导致强大的预填充-解码干扰,而且还耦合了两个阶段的资源分配和并行计划。LLM 应用程序通常强调每个阶段的单独延迟:预填充阶段的首次token时间 (TTFT) 和解码阶段每个请求的每个输出token的时间 (TPOT)。在存在严格的延迟要求的情况下,现有系统必须优先考虑一种延迟而不是另一种延迟,或者过度预置计算资源以满足这两种延迟。DistServe 将预填充和解码计算分配给不同的 GPU,从而消除了预填充-解码干扰。鉴于应用程序的 TTFT 和 TPOT 要求,DistServe 共同优化了为每个阶段量身定制的资源分配和并行策略。DistServe 还根据服务集群的带宽对这两个阶段进行放置,以最大限度地减少解聚引起的通信。因此, DistServe 显著提高了 LLM 服务性能,即在每个 GPU 的 TTFT 和 TPOT 约束内可以提供的最大速率。我们的评估表明,在