continuous batchingの公平性・starvation・SLO class設計
記事状態: 公開 · 最終確認: 2026-10-21
要点
「continuous batchingは公平である」「優先順位 schedulingでstarvationを防げる」とは断定しません。「continuous batchingではrequest長・prefill/decode負荷・優先順位・KV footprintの差によりclass間の遅い要求の応答時間やwaiting timeが偏り得るため、SLO class、aging/wait bound、prefill/decode budget、class別metricsを明示し、混合workloadでstarvationとtailを実測する」とします。
現在の判断
「continuous batchingは公平である」「優先順位 schedulingでstarvationを防げる」とは断定しません。「continuous batchingではrequest長・prefill/decode負荷・優先順位・KV footprintの差によりclass間の遅い要求の応答時間やwaiting timeが偏り得るため、SLO class、aging/wait bound、prefill/decode budget、class別metricsを明示し、混合workloadでstarvationとtailを実測する」とします。
どこまで当てはまるか
continuous batchingの公平性・starvation・SLO class設計
詳しく理解する
要点と前提
Continuous batchingはGPU利用率と単位時間あたりの処理量を高めますが、requestごとのprompt長、decode長、到着時刻、優先順位、SLOが異なる環境では、単純なFCFSや短い仕事優先だけで公平性は保証されません。運用上はTTFT、ITL/TPOT、遅い要求の応答時間、waiting time、deadline miss、class別goodputを分けて観測し、interactive・batch・background等のSLO classごとに何を保護するかを明示します。
vLLMの現行SchedulerConfigはFCFSと優先順位 policyを持ち、優先順位では小さい優先順位値を先に、同値ならarrival timeで順序付けます。chunked prefillでは long_prefill_token_threshold が長いprefillによるtoken budget独占を抑え、adaptive modeはqueued/running request数からfair shareを計算して実効thresholdの下限を調整します。これらは公平性設計の部品ですが、組織の利用環境公平性やstarvation freedomそのものを保証する契約ではありません。
実装・運用
第一にSLO classを明示します。interactiveはTTFT/ITL、batchは完了 単位時間あたりの処理量、backgroundはcost効率など、classごとに優先順位、admission、queue budget、deadline、reserved capacityを定義します。優先順位値だけを設定して完了とせず、低優先順位 classの最大waiting timeまたはminimum service shareを監視します。
第二にagingまたはwait boundを持たせます。短いrequest優先を採用する場合、長いrequestが一定時間を超えたら優先度を上げる、reserved slotを与える、別queueへ分離するなど、starvationを防ぐ境界を設けます。vLLM AscendのShortRequestFirstには long_max_wait_ms があり、長いprefillを短いprefillより前へ昇格可能にする最大待ち時間を設定できます。0 は昇格を無効にし、strict short-request 優先順位を維持します。
第三にprefill/decode budgetを分離して観測します。class別TTFT p50/p95/p99、ITL/TPOT p95/p99、queue wait、deadline miss、tokens/sec、preemption、KV usage、class別admitted/rejected/completedを収集し、全体平均だけで公平性を判断しません。長prompt/短prompt、高優先順位/低優先順位、interactive/batchを混ぜたload testでstarvationとtailを再現します。
第四にpolicy変更は同一traceで比較します。FCFS、優先順位、short-request-first、chunked prefill threshold等について、単位時間あたりの処理量だけでなくclass別tailと最大waiting timeを確認します。公平性policyがGPU利用率を下げる場合もあるため、SLO保護とcapacityのtrade-offを明示します。
vLLM AscendのBatch-Job-Aware Schedulerはoffline batch向けで、公式文書がstarvation preventionを実装しないと明記しています。strict latency/fairness requirementがあるonline servingへ流用しないことが重要です。
適用境界
vLLMの優先順位 policyはrequest 優先順位とarrival timeによる順序付けであり、weighted fair queueingや組織の利用環境 利用枠を意味しません。複数組織の利用環境のresource shareを保証したい場合はgateway/admission layer、separate pools、weighted queues等の上位制御が必要になる場合があります。
ShortRequestFirstはvLLM Ascend固有機能で、mainline vLLM一般の契約として扱いません。Batch-Job-Aware Schedulerもoffline batch中心で、starvation preventionを持たないためinteractive SLOへそのまま適用しません。
FairBatchingやresource-fair schedulingの論文は研究成果であり、採用実行環境で同じschedulerが利用可能とは限りません。比較評価条件、モデル、GPU、trace、prompt/output分布が異なれば効果も変わります。
出典 / 出典・来歴 locators
- vLLM SchedulerConfig, live verified 2026-10-21: https://docs.vllm.ai/en/latest/api/vllm/config/scheduler/
- vLLM run-batch CLI, live verified 2026-10-21: https://docs.vllm.ai/en/latest/cli/run-batch/
- vLLM Ascend ShortRequestFirst, live verified 2026-10-21: https://docs.vllm.ai/projects/ascend/zh-cn/v0.30.0rc1/user_guide/feature_guide/short_request_first.html
- vLLM Ascend Batch-Job-Aware Scheduler, live verified 2026-10-21: https://docs.vllm.ai/projects/ascend/en/main/user_guide/feature_guide/batch_job_aware_scheduler.html
- FairBatching: Fairness-Aware Batch Formation for LLM 推論, arXiv:2510.14392, 2025-10-16: https://arxiv.org/abs/2510.14392
- Efficiency and Cost Alignment in Batched LLM Serving via Resource-Fair Scheduling, arXiv:2608.02244, 2026-08-03: https://arxiv.org/abs/2608.02244
よくある失敗・反証
公平性には複数の単位があります。request-count fairnessは各requestへ同程度の機会を与える考え方ですが、prompt/output token数が大きく違えばresource fairnessとは一致しません。優先順位 class fairnessも、高優先順位を常に先にすれば低優先順位がstarveし得ます。短いrequest優先は平均TTFTを改善し得ますが、長いrequestのwaiting timeを悪化させます。
continuous batchingではdecode中requestを優先しすぎると新規prefillが待たされTTFT tailが悪化し、prefillを強く割り込ませすぎるとongoing decodeのITL/TPOTが悪化します。FairBatchingはこのprefill/decode間の計算資源配分を公平性問題として扱い、固定decode優先ではなくdynamic workloadに応じたbatch capacity調整を提案しています。ただし論文比較評価の改善率を特定実行環境の保証値へ外挿してはなりません。
さらにbatched decodeでは、長いKV-cache footprintを持つrequestと短いrequestの同居により、短いrequestが自分のtoken量以上のbatch costを負担するresource-fairness問題が研究されています。したがって公平性はqueue順だけでなく、batch formationとKV/結果の再利用 length heterogeneityまで含めて評価します。
厳密な公平性を強めるほど単位時間あたりの処理量や平均latencyが悪化する場合があります。長requestへ最低service shareを予約すると短requestのTTFT改善余地が減り、agingは高優先順位 workloadのtailを悪化させ得ます。公平性は単一の最適値ではなく、business SLOとresource efficiencyのtrade-offです。
request単位の公平性はtoken/resource単位の公平性と一致しません。短いrequestを多数投入する組織の利用環境がrequest-count shareを占有する可能性もあるため、組織の利用環境、request、token、GPU-timeのどの単位を公平性の基準にするかを先に定義します。
まだ確認できていないこと
- EA-755-UNKNOWN-01
- 対象workloadで公平性の単位をrequest、token、GPU-time、組織の利用環境のどれに置くべきか。
- low-priority classの最大waiting timeまたはminimum service shareの適切な値。
- prefix-cache hitやspeculative decodingをresource-cost推定へどう織り込むか。
- disaggregated prefill/decode構成でclass別fairnessをpool間でどう整合させるか。
- managed 推論 APIで優先順位/aging/resource shareをどこまで利用者が制御できるか。
根拠資料
- 研究資料研究資料
vLLM SchedulerConfig, live verified 2026-10-21:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
- 研究資料研究資料
vLLM run-batch CLI, live verified 2026-10-21:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
- 研究資料研究資料
vLLM Ascend ShortRequestFirst, live verified 2026-10-21:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
- 研究資料研究資料
vLLM Ascend Batch-Job-Aware Scheduler, live verified 2026-10-21:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
- 研究資料研究資料
FairBatching: Fairness-Aware Batch Formation for LLM 推論, arXiv:2510.14392, 2025-10-16:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
- 研究資料研究資料
Efficiency and Cost Alignment in Batched LLM Serving via Resource-Fair Scheduling, arXiv:2608.02244, 2026-08-03:
確認上の限界
元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
更新履歴
EA-755-RESEARCH-20261021-R1: 正式な 監査/publication 対応付け
出典ID・検証情報・機械可読データ
根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。
- 記事ID
- EA-755
- 最終確認日
- 2026-10-21
- 提供元・モデル・プラン・利用環境
- —
- 対象地域
- —
元資料の全文と収録照合記録
要点と前提
Continuous batchingはGPU利用率とthroughputを高めますが、requestごとのprompt長、decode長、到着時刻、priority、SLOが異なる環境では、単純なFCFSや短い仕事優先だけで公平性は保証されません。運用上はTTFT、ITL/TPOT、tail latency、waiting time、deadline miss、class別goodputを分けて観測し、interactive・batch・background等のSLO classごとに何を保護するかを明示します。
vLLMの現行SchedulerConfigはFCFSとpriority policyを持ち、priorityでは小さいpriority値を先に、同値ならarrival timeで順序付けます。chunked prefillでは long_prefill_token_threshold が長いprefillによるtoken budget独占を抑え、adaptive modeはqueued/running request数からfair shareを計算して実効thresholdの下限を調整します。これらは公平性設計の部品ですが、tenant公平性やstarvation freedomそのものを保証する契約ではありません。
運用上の意味・failure
公平性には複数の単位があります。request-count fairnessは各requestへ同程度の機会を与える考え方ですが、prompt/output token数が大きく違えばresource fairnessとは一致しません。priority class fairnessも、高priorityを常に先にすれば低priorityがstarveし得ます。短いrequest優先は平均TTFTを改善し得ますが、長いrequestのwaiting timeを悪化させます。
continuous batchingではdecode中requestを優先しすぎると新規prefillが待たされTTFT tailが悪化し、prefillを強く割り込ませすぎるとongoing decodeのITL/TPOTが悪化します。FairBatchingはこのprefill/decode間の計算資源配分を公平性問題として扱い、固定decode優先ではなくdynamic workloadに応じたbatch capacity調整を提案しています。ただし論文benchmarkの改善率を特定runtimeの保証値へ外挿してはなりません。
さらにbatched decodeでは、長いKV-cache footprintを持つrequestと短いrequestの同居により、短いrequestが自分のtoken量以上のbatch costを負担するresource-fairness問題が研究されています。したがって公平性はqueue順だけでなく、batch formationとKV/cache length heterogeneityまで含めて評価します。
具体的control / implementation implication
第一にSLO classを明示します。interactiveはTTFT/ITL、batchはcompletion throughput、backgroundはcost効率など、classごとにpriority、admission、queue budget、deadline、reserved capacityを定義します。priority値だけを設定して完了とせず、低priority classの最大waiting timeまたはminimum service shareを監視します。
第二にagingまたはwait boundを持たせます。短いrequest優先を採用する場合、長いrequestが一定時間を超えたら優先度を上げる、reserved slotを与える、別queueへ分離するなど、starvationを防ぐ境界を設けます。vLLM AscendのShortRequestFirstには long_max_wait_ms があり、長いprefillを短いprefillより前へ昇格可能にする最大待ち時間を設定できます。0 は昇格を無効にし、strict short-request priorityを維持します。
第三にprefill/decode budgetを分離して観測します。class別TTFT p50/p95/p99、ITL/TPOT p95/p99、queue wait、deadline miss、tokens/sec、preemption、KV usage、class別admitted/rejected/completedを収集し、全体平均だけで公平性を判断しません。長prompt/短prompt、高priority/低priority、interactive/batchを混ぜたload testでstarvationとtailを再現します。
第四にpolicy変更は同一traceで比較します。FCFS、priority、short-request-first、chunked prefill threshold等について、throughputだけでなくclass別tailと最大waiting timeを確認します。公平性policyがGPU利用率を下げる場合もあるため、SLO保護とcapacityのtrade-offを明示します。
vLLM AscendのBatch-Job-Aware Schedulerはoffline batch向けで、公式文書がstarvation preventionを実装しないと明記しています。strict latency/fairness requirementがあるonline servingへ流用しないことが重要です。
適用境界
vLLMのpriority policyはrequest priorityとarrival timeによる順序付けであり、weighted fair queueingやtenant quotaを意味しません。複数tenantのresource shareを保証したい場合はgateway/admission layer、separate pools、weighted queues等の上位controlが必要になる場合があります。
ShortRequestFirstはvLLM Ascend固有機能で、mainline vLLM一般の契約として扱いません。Batch-Job-Aware Schedulerもoffline batch中心で、starvation preventionを持たないためinteractive SLOへそのまま適用しません。
FairBatchingやresource-fair schedulingの論文は研究成果であり、採用runtimeで同じschedulerが利用可能とは限りません。benchmark条件、model、GPU、trace、prompt/output分布が異なれば効果も変わります。
Counterevidence / limitations
厳密な公平性を強めるほどthroughputや平均latencyが悪化する場合があります。長requestへ最低service shareを予約すると短requestのTTFT改善余地が減り、agingは高priority workloadのtailを悪化させ得ます。公平性は単一の最適値ではなく、business SLOとresource efficiencyのtrade-offです。
request単位の公平性はtoken/resource単位の公平性と一致しません。短いrequestを多数投入するtenantがrequest-count shareを占有する可能性もあるため、tenant、request、token、GPU-timeのどの単位を公平性の基準にするかを先に定義します。
OPEN_UNKNOWN
- 対象workloadで公平性の単位をrequest、token、GPU-time、tenantのどれに置くべきか。
- low-priority classの最大waiting timeまたはminimum service shareの適切な値。
- prefix-cache hitやspeculative decodingをresource-cost推定へどう織り込むか。
- disaggregated prefill/decode構成でclass別fairnessをpool間でどう整合させるか。
- managed inference APIでpriority/aging/resource shareをどこまで利用者が制御できるか。
SAFE_WORDING
「continuous batchingは公平である」「priority schedulingでstarvationを防げる」とは断定しません。「continuous batchingではrequest長・prefill/decode負荷・priority・KV footprintの差によりclass間のtail latencyやwaiting timeが偏り得るため、SLO class、aging/wait bound、prefill/decode budget、class別metricsを明示し、混合workloadでstarvationとtailを実測する」とします。
Source / provenance locators
- vLLM SchedulerConfig, live verified 2026-10-21: https://docs.vllm.ai/en/latest/api/vllm/config/scheduler/
- vLLM run-batch CLI, live verified 2026-10-21: https://docs.vllm.ai/en/latest/cli/run-batch/
- vLLM Ascend ShortRequestFirst, live verified 2026-10-21: https://docs.vllm.ai/projects/ascend/zh-cn/v0.30.0rc1/user_guide/feature_guide/short_request_first.html
- vLLM Ascend Batch-Job-Aware Scheduler, live verified 2026-10-21: https://docs.vllm.ai/projects/ascend/en/main/user_guide/feature_guide/batch_job_aware_scheduler.html
- FairBatching: Fairness-Aware Batch Formation for LLM Inference, arXiv:2510.14392, 2025-10-16: https://arxiv.org/abs/2510.14392
- Efficiency and Cost Alignment in Batched LLM Serving via Resource-Fair Scheduling, arXiv:2608.02244, 2026-08-03: https://arxiv.org/abs/2608.02244
EVD-EA-755-URL-F8F3C1CBB630研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCEvLLM SchedulerConfig, live verified 2026-10-21:
- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-755-URL-F8F3C1CBB630
- 検証箇所
- Source / provenance locators · - vLLM SchedulerConfig, live verified 2026-10-21: https://docs.vllm.ai/en/latest/api/vllm/config/scheduler/
- 適用範囲
- Source / provenance locators
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EVD-EA-755-URL-F76CB2488D37研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCEvLLM run-batch CLI, live verified 2026-10-21:
- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-755-URL-F76CB2488D37
- 検証箇所
- Source / provenance locators · - vLLM run-batch CLI, live verified 2026-10-21: https://docs.vllm.ai/en/latest/cli/run-batch/
- 適用範囲
- Source / provenance locators
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EVD-EA-755-URL-BD2312AAD388研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCEvLLM Ascend ShortRequestFirst, live verified 2026-10-21:
- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-755-URL-BD2312AAD388
- 検証箇所
- Source / provenance locators · - vLLM Ascend ShortRequestFirst, live verified 2026-10-21: https://docs.vllm.ai/projects/ascend/zh-cn/v0.30.0rc1/user_guide/feature_guide/short_request_first.html
- 適用範囲
- Source / provenance locators
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EVD-EA-755-URL-1A2DD1AD22AF研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCEvLLM Ascend Batch-Job-Aware Scheduler, live verified 2026-10-21:
- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-755-URL-1A2DD1AD22AF
- 検証箇所
- Source / provenance locators · - vLLM Ascend Batch-Job-Aware Scheduler, live verified 2026-10-21: https://docs.vllm.ai/projects/ascend/en/main/user_guide/feature_guide/batch_job_aware_scheduler.html
- 適用範囲
- Source / provenance locators
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EVD-EA-755-URL-2A1735B40525研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCEFairBatching: Fairness-Aware Batch Formation for LLM Inference, arXiv:2510.14392, 2025-10-16:
- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-755-URL-2A1735B40525
- 検証箇所
- Source / provenance locators · - FairBatching: Fairness-Aware Batch Formation for LLM Inference, arXiv:2510.14392, 2025-10-16: https://arxiv.org/abs/2510.14392
- 適用範囲
- Source / provenance locators
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EVD-EA-755-URL-4D6F9B1AB3B2研究資料研究資料根拠の出所: SOURCE_PACKET_REFERENCE- 裏付ける内容
- —
- 確認日
- —
- 出典・実験ID
- SRC-EA-755-URL-4D6F9B1AB3B2
- 検証箇所
- Source / provenance locators · - Efficiency and Cost Alignment in Batched LLM Serving via Resource-Fair Scheduling, arXiv:2608.02244, 2026-08-03: https://arxiv.org/abs/2608.02244
- 適用範囲
- Source / provenance locators
- 出典・来歴
- SOURCE_PACKET_REFERENCE_PROJECTED
- 限界
- 元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。
EA-755-CURRENT-APPROVAL研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKET現行本文の監査・revision対応
- 裏付ける内容
- 現行台帳のAUDIT_PASSと候補・revision・本文ハッシュの対応を確認しています。
- 確認日
- —
- 出典・実験ID
- EA755-CANDIDATE-20261022-1134JST-C3
- 検証箇所
- 1KqhJtiSb2S84rWmeYVwKcT_76dBwZ_B0ZZuAWQqH0rQ/EA_REVISION_LEDGER#ea_id=EA-755&revision_id=EA-755-RESEARCH-20261021-R1&candidate_id=EA755-CANDIDATE-20261022-1134JST-C3 · EA-755-RESEARCH-20261021-R1
- 適用範囲
- —
- 出典・来歴
- CURRENT_CANONICAL_APPROVAL_READBACK
- 限界
- 監査状態と来歴の記録です。外部根拠の最新性や本文の全主張を追加保証しません。
EA-755-CURRENT-BODY-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACK現行本文の収録照合
- 裏付ける内容
- 公開生成入力の本文SHA-256が、監査済み候補に結び付いたハッシュと一致しています。
- 確認日
- 2026-10-22
- 出典・実験ID
- BODY-SHA256:a581b757fcd6e3e8d14ca59fbfe1a25e7a5acb488d6676c44e83aac5610a62e9
- 検証箇所
- content/staging/EA-755.md · a581b757fcd6e3e8d14ca59fbfe1a25e7a5acb488d6676c44e83aac5610a62e9 · EA-755-RESEARCH-20261021-R1
- 適用範囲
- —
- 出典・来歴
- CURRENT_APPROVED_BODY_HASH_MATCH
- 限界
- 本文の同一性の検査です。外部システムの挙動や全主張の真偽を実証したものではありません。
- 出典ID
- EA755-CANDIDATE-20261022-1134JST-C3, SRC-EA-755-URL-F8F3C1CBB630, SRC-EA-755-URL-F76CB2488D37, SRC-EA-755-URL-BD2312AAD388, SRC-EA-755-URL-1A2DD1AD22AF, SRC-EA-755-URL-2A1735B40525, SRC-EA-755-URL-4D6F9B1AB3B2, BODY-SHA256:a581b757fcd6e3e8d14ca59fbfe1a25e7a5acb488d6676c44e83aac5610a62e9
- 追跡中のUNKNOWN ID
- EA-755-UNKNOWN-01
- 再確認のきっかけ
- 正式な 改訂版/publication 状態 change · 本文 成果物 hash change · 出典 現行性 change · new contradiction or 実装 結果の照合
機械検査: 通過 — 機械検査の結果です。情報の正確性や実行の承認を保証するものではありません。
同じ記事IDの機械可読データです。