TurboServe: Serving Streaming Video Generation Efficiently and Economically
arXiv · HuggingFace · ▲30
摘要(原文)
Streaming video generation is emerging as a new serving workload in which users interact with long-lived sessions that generate video progressively, chunk by chunk. Unlike offline video generation or typical LLM serving, streaming video generation must preserve session state across active and idle periods, repeatedly schedule ongoing sessions, and deliver each chunk under a tight latency target. This creates two key serving challenges in multi-user, multi-GPU environments: session duration heterogeneity, where long-running sessions make placement decisions suboptimal over time, and temporal user-demand heterogeneity, where the number of active sessions fluctuates sharply across bursts and idle periods. We present TurboServe, the first serving system designed specifically for streaming video generation workloads. TurboServe formulates serving as an online scheduling problem that jointly coordinates session placement and GPU provisioning. Its closed-loop scheduling algorithm combines a migration-aware placement controller, which rebalances sessions across GPUs to reduce the maximum per-chunk latency, with a load-driven autoscaling controller, which adapts the GPU budget to workload variation for improved cost efficiency. To support these decisions at runtime, TurboServe implements coalesced chunk processing for batching concurrent active sessions on the same GPU, GPU-CPU offloading for session suspension and resumption, and NCCL-based GPU-GPU migration for online rebalancing. We evaluate TurboServe on real-world production traces from Shengshu Technology across multiple model sizes and GPU clusters with up to 64 NVIDIA B300 GPUs. Compared with baseline serving configurations, TurboServe reduces worst-case per-chunk latency by 37.5% and total GPU operating cost by 37.2% on average. Our code is publicly available at https://github.com/shengshu-ai/TurboServe.
摘要(中译)
流式视频生成正成为一种新的服务工作负载,在这种工作负载中,用户与长期会话进行交互,这些会话逐步地、逐块地生成视频。与离线视频生成或典型的LLM(大型语言模型)服务不同,流式视频生成必须在活跃和空闲时段保留会话状态,反复调度正在进行的会话,并在严格的延迟目标下交付每个数据块。这在多用户、多GPU环境中带来了两个关键的服务挑战:会话时长异质性,即长时间运行的会话会随着时间的推移使放置决策变得次优;以及时间上的用户需求异质性,即活跃会话的数量在突发和空闲时段之间急剧波动。 我们提出了TurboServe,这是第一个专门为流式视频生成工作负载设计的服务系统。TurboServe将服务表述为一个在线调度问题,该问题同时协调会话放置和GPU资源调配。其闭环调度算法结合了一个迁移感知的放置控制器,该控制器在GPU之间重新平衡会话,以减少每个数据块的最大延迟,以及一个负载驱动的自动缩放控制器,该控制器根据工作负载变化调整GPU预算,以提高成本效率。为了在运行时支持这些决策,TurboServe实现了合并的数据块处理,以便在同一个GPU上批处理并发的活跃会话,实现了会话挂起和恢复的GPU-CPU卸载,以及基于NCCL(NVIDIA集体通信库)的GPU-GPU迁移,用于在线重新平衡。我们在来自盛书科技的真实生产跟踪数据上评估了TurboServe,涉及多种模型大小和最多具有64个NVIDIA B300 GPU的GPU集群。与基线服务配置相比,TurboServe将最坏情况下的每个数据块延迟降低了37.5%,并将总GPU运营成本平均降低了37.2%。我们的代码在https://github.com/shengshu-ai/TurboServe上公开可用。
背景剖析
背景剖析
1. 技术背景
随着视频生成模型(如Sora、Veo等)的发展,流式视频生成成为生成式AI服务的新方向。这类技术允许用户通过自然语言提示逐步生成视频片段(例如逐帧或逐秒输出),并在生成过程中实时调整内容(如修改场景或角色)。其核心需求是低延迟实时交互——用户希望看到视频逐步生成的效果,而非等待完整视频输出。典型应用包括影视制作(实时预览特效)、广告生成(动态调整创意)或教育内容创作(即时反馈教学视频)。然而,传统视频生成系统(如Sora)采用“离线一次性生成”模式,无法支持这种长时交互场景,因此需要专门的流式服务平台。
2. 之前的问题
现有系统面临两大挑战:
- 会话时长异构性:不同用户的会话持续时间差异极大(从几秒到数小时),传统系统将所有会话视为“短期任务”,导致长时会话占用资源过久,新用户无法及时获得服务。
- 需求波动性:用户活动呈突发性(如高峰期大量请求涌入,低峰期空闲),静态资源分配要么浪费GPU(低峰期),要么因资源不足导致延迟飙升(高峰期)。
此前方法未针对“持续会话状态”和“动态负载”优化,导致延迟增加和成本浪费。
3. 本文的解法
TurboServe通过联合调度会话放置与GPU资源分配解决上述问题:
- 动态会话迁移:使用NCCL(GPU间高速通信)实现会话在GPU间的迁移,避免长时会话阻塞资源。
- 弹性资源分配:根据实时负载自动扩展或缩减GPU数量,例如高峰期增加GPU以降低延迟,低峰期释放资源以节省成本。
- 批处理与挂起机制:将多个活跃会话的计算合并(批处理)以提升GPU利用率,并允许空闲会话暂时转移到CPU内存以释放GPU资源。
4. 切入角度
与现有系统不同,TurboServe是首个专为流式视频生成设计的系统,其核心创新在于将“会话管理”与“资源调度”视为一个整体问题。传统方法(如vLLM-Omni或TridentServe)仅优化单次请求,而TurboServe通过闭环算法同时平衡延迟和成本,例如:
- 迁移感知调度:动态调整会话位置以减少最坏情况下的延迟。
- 负载驱动扩展:根据实时需求调整GPU数量,而非依赖静态配置。
实验表明,该方法在延迟(降低37.5%)和成本(降低37.2%)上均显著优于基线方案。




