DistServe: Disaggregating Prefill and Decoding for Goodput-optimized Large Language Model Serving

2024年01月18日
  • 简介
    DistServe通过将预填充和解码计算分离来提高大型语言模型(LLM)的服务性能。现有的LLM服务系统将这两个阶段放在一起,并在所有用户和请求之间批量计算预填充和解码。我们发现,这种策略不仅会导致强烈的预填充-解码干扰,而且还会将两个阶段的资源分配和并行计划耦合在一起。LLM应用程序通常强调每个阶段的个体延迟:预填充阶段的首个令牌时间(TTFT)和解码阶段每个请求的每个输出令牌时间(TPOT)。在存在严格的延迟要求时,现有系统必须优先考虑一个延迟,或过度配置计算资源以满足两个延迟。 DistServe将预填充和解码计算分配给不同的GPU,从而消除了预填充-解码干扰。根据应用程序的TTFT和TPOT要求,DistServe为每个阶段量身定制资源分配和并行策略进行了共同优化。DistServe还根据服务集群的带宽将这两个阶段放置在一起,以最小化由分解引起的通信。因此,DistServe在每个GPU的TTFT和TPOT约束条件下显着提高了LLM服务性能。我们的评估结果表明,在各种流行的LLM、应用程序和延迟要求上,与现有最先进系统相比,DistServe可以提供4.48倍的请求量或10.2倍的更紧密的SLO,并在超过90%的请求中保持在延迟约束范围内。
  • 图表
  • 解决问题
    DistServe旨在提高大型语言模型(LLMs)的性能,并解决当前LLM服务系统中存在的预填充和解码计算相互干扰的问题。
  • 关键思路
    DistServe通过将预填充和解码计算分配到不同的GPU上,消除了预填充和解码之间的干扰,并针对每个阶段优化资源分配和并行策略,以满足应用的TTFT和TPOT要求。
  • 其它亮点
    DistServe可以在满足超过90%的请求的延迟约束的情况下,比现有系统提高4.48倍的请求速率或10.2倍的SLO。实验使用了各种流行的LLMs应用程序和数据集,并展示了DistServe的性能优势。
  • 相关研究
    与DistServe相关的研究包括:BeamSearch、TensorFlow Serving、Sockeye等。
PDF
原文
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论