连续批处理调度
Continuous Batching Scheduler
迭代级别的动态批处理调度器。nano-vllm 的 scheduler.py 实现了 prefill/decode 两阶段调度:waiting 队列中的新请求优先 prefill,running 队列中的序列持续 decode。支持 preempt 抢占机制——当显存不足时驱逐低优先级序列,释放块后重新排队。
子问题
1.prefill vs decode 阶段分离调度
2.max_num_seqs 和 max_num_batched_tokens 双重限制
3.抢占策略(LIFO 驱逐 running 尾部序列)
4.序列状态机(WAITING → RUNNING → FINISHED)
各项目的解法0 solutions
Signals
最佳实践
1.prefill 优先策略确保新请求快速响应
2.抢占时完整释放块并重新入 waiting 队列,保证公平性