FlowPrefill: Desacoplando a Preempção da Granularidade do Agendamento de Preenchimento para Mitigar o Bloqueio da Cabeça da Fila no Serviço de LLM
FlowPrefill: Decoupling Preemption from Prefill Scheduling Granularity to Mitigate Head-of-Line Blocking in LLM Serving
February 18, 2026
Autores: Chia-chi Hsieh, Zan Zong, Xinyang Chen, Jianjiang Li, Jidong Zhai, Lijie Wen
cs.AI
Resumo
A crescente demanda por modelos de linguagem de grande porte (LLMs) exige que os sistemas de atendimento lidem com muitos pedidos simultâneos com diversos objetivos de nível de serviço (SLOs). Isso exacerba o bloqueio de cabeça-de-linha (HoL) durante a fase computacionalmente intensiva de pré-preenchimento, onde pedidos de longa duração monopolizam recursos e atrasam aqueles de maior prioridade, levando a violações generalizadas dos SLOs de tempo-para-primeiro-*token* (TTFT). Embora o pré-preenchimento em blocos (*chunked prefill*) permita interrupção, ele introduz uma compensação inerente entre responsividade e taxa de transferência: reduzir o tamanho do bloco melhora a latência de resposta, mas degrada a eficiência computacional, enquanto aumentar o tamanho do bloco maximiza a taxa de transferência, mas exacerba o bloqueio. Isso torna necessário um mecanismo de preempção adaptativo. No entanto, equilibrar dinamicamente a granularidade da execução com as sobrecargas de escalonamento permanece um desafio fundamental.
Neste artigo, propomos o FlowPrefill, um sistema de atendimento otimizado para TTFT e *goodput* que resolve este conflito ao desacoplar a granularidade da preempção da frequência de escalonamento. Para alcançar um escalonamento de pré-preenchimento adaptativo, o FlowPrefill introduz duas inovações principais: 1) **Preempção a Nível de Operador**, que aproveita os limites dos operadores para permitir a interrupção de execução de granularidade fina sem a perda de eficiência associada ao fracionamento fixo em blocos pequenos; e 2) **Escalonamento Orientado a Eventos**, que aciona decisões de escalonamento apenas mediante eventos de chegada ou conclusão de pedidos, suportando assim uma preempção responsiva eficiente enquanto minimiza a sobrecarga do plano de controle. A avaliação em *traces* de produção do mundo real mostra que o FlowPrefill melhora o *goodput* máximo em até 5,6 vezes em comparação com sistemas de última geração, enquanto satisfaz SLOs heterogêneos.
English
The growing demand for large language models (LLMs) requires serving systems to handle many concurrent requests with diverse service level objectives (SLOs). This exacerbates head-of-line (HoL) blocking during the compute-intensive prefill phase, where long-running requests monopolize resources and delay higher-priority ones, leading to widespread time-to-first-token (TTFT) SLO violations. While chunked prefill enables interruptibility, it introduces an inherent trade-off between responsiveness and throughput: reducing chunk size improves response latency but degrades computational efficiency, whereas increasing chunk size maximizes throughput but exacerbates blocking. This necessitates an adaptive preemption mechanism. However, dynamically balancing execution granularity against scheduling overheads remains a key challenge.
In this paper, we propose FlowPrefill, a TTFT-goodput-optimized serving system that resolves this conflict by decoupling preemption granularity from scheduling frequency. To achieve adaptive prefill scheduling, FlowPrefill introduces two key innovations: 1) Operator-Level Preemption, which leverages operator boundaries to enable fine-grained execution interruption without the efficiency loss associated with fixed small chunking; and 2) Event-Driven Scheduling, which triggers scheduling decisions only upon request arrival or completion events, thereby supporting efficient preemption responsiveness while minimizing control-plane overhead. Evaluation on real-world production traces shows that FlowPrefill improves maximum goodput by up to 5.6times compared to state-of-the-art systems while satisfying heterogeneous SLOs.