Research in compute resource management for cloud-native applications is dominated by the problem of setting optimal CPU limits -- a fundamental OS mechanism that strictly restricts a container's CPU usage to its specified CPU-limits . Rightsizing and autoscaling works have innovated on allocation/scaling policies assuming the ubiquity and necessity of CPU-limits . We question this. Practical experiences of cloud users indicate that CPU-limits harms application performance and costs more than it helps. These observations are in contradiction to the conventional wisdom presented in both academic research and industry best practices. We argue that this indiscriminate adoption of CPU-limits is driven by erroneous beliefs that CPU-limits is essential for operational and safety purposes. We provide empirical evidence making a case for eschewing CPU-limits completely from latency-sensitive applications. This prompts a fundamental rethinking of auto-scaling and billing paradigms and opens new research avenues. Finally, we highlight specific scenarios where CPU-limits can be beneficial if used in a well-reasoned way (e.g. background jobs).
- 論文ID: 2510.10747
- タイトル: CPU-Limits kill Performance: Time to rethink Resource Control
- 著者: Chirag Shetty (UIUC), Sarthak Chakraborty (UIUC), Hubertus Franke (IBM Research), Larisa Shwartz (IBM Research), Chandra Narayanaswami (IBM Research), Indranil Gupta (UIUC), Saurabh Jha (IBM Research)
- 分類: cs.DC (分散コンピューティング), cs.OS (オペレーティングシステム), cs.PF (性能)
- 発表時期: 2025年10月 (arXiv プレプリント)
- 論文リンク: https://arxiv.org/abs/2510.10747
本論文は、クラウドネイティブアプリケーションの計算リソース管理における中核的メカニズムであるCPU制限(CPU-Limits)に対して根本的な疑問を提起する。学術研究と業界実践の双方がCPU制限を必須と考えているにもかかわらず、著者らは実証的証拠を通じて、CPU制限が実際にはアプリケーション性能を損害し、コストを増加させることを示す。論文は、レイテンシ敏感型アプリケーションはCPU制限を完全に廃止すべきと主張しており、これには自動スケーリングと課金モデルの根本的な再考が必要であることを指摘する一方で、バックグラウンドタスクなどの特定のシナリオにおけるCPU制限の合理的な用途も示唆している。
コンテナ化されたマイクロサービスのCPUリソース管理は、クラウドコンピューティング分野の中核的課題である。現在の主流的アプローチは、CPU-Limits (c.limit)メカニズムを通じてコンテナのCPU使用量を厳密に制限することであり、このメカニズムはLinuxのcpu.cfs_quota_usに基づいて実装されている。しかし、著者らは実際の運用環境において理論と実践の間に顕著なギャップが存在することを観察している。
- 性能への影響: CPU制限によるスロットリングはアプリケーションレイテンシを急激に悪化させ、カスケード障害を引き起こす可能性がある
- コスト問題: スロットリングを回避するために設定されるセーフティマージンにより、25~45%のリソース過剰配置が発生する
- 運用の複雑性: DevOps担当者は複数の細粒度CPU制限間で複雑なトレードオフを行う必要がある
既存の自動スケーリング研究(FIRM、Cilantro、Autothrottleなど)は、すべてCPU制限の必要性という仮定に基づいており、制限値の最適化に焦点を当てているが、メカニズム自体に疑問を呈していない。著者らの分析により、これらの手法はCPU制限を削除すると機能しなくなることが明らかになった。
SRE(サイト信頼性エンジニア)への聞き取り調査とオンライン議論の調査を通じて、著者らは運用コミュニティがCPU制限について見解が分かれていることを発見した。多くの実務家はすでにパフォーマンス改善のためにCPU制限を削除し始めており、これは学術界の主流的見解と対照をなしている。
- 従来の観念への挑戦: レイテンシ敏感型アプリケーションにおけるCPU制限の必要性に対して、初めて体系的に疑問を呈し、十分な実証的証拠を提供する
- 性能分析: CPU制限がレイテンシ、信頼性、コストに及ぼす負の影響メカニズムを深く分析する
- 代替案の設計: CPU-Requests (c.req)のみを使用したリソース管理の実行可能性と利点を実証する
- 新パラダイムの提案: パフォーマンスベースの課金モデルと無制限の自動スケーリング設計を提案する
- プロトタイプ実装: YAAS(Yet Another AutoScaler)プロトタイプを構築し、51%のリソース削減を実現する
- 応用シナリオの区分: バックグラウンドタスクやCPUバウンドなどのシナリオにおけるCPU制限の合理的な使用ケースを明確に定義する
研究目標は、CPU制限を使用しない場合、CPU-Requestsとノード利用率の最適化を通じてより優れた性能-コストトレードオフを実現することにより、コンテナCPUリソース管理メカニズムを再設計することである。
著者らはCPU制限の様々な構成シナリオを体系的に分析するための決定木(図1)を構築した:
- limit = req: コスト増加をもたらし、25~45%のセーフティマージンが必要
- limit > req:
- 制限に到達しない場合、不要である
- 制限に到達する可能性がある場合、自動スケーリングが「ハング」するか、レイテンシが急激に悪化する
著者らは2つのレベルからCPU-Requestsのみの使用の充分性を証明した:
CFSスケジューラの保証: Linux CFSスケジューラは比例公平性保証を提供し、CPU-Requests r_iを持つPod P_iが総CPU Cのノード上で最低限 (r_i/Σr_j) × C のCPU時間を取得することを保証する。
オーケストレータゲーティング: Kubernetesなどのオーケストレータは、ノード上のすべてのコンテナのCPU-Requestsの合計がノード容量を超えないことを保証し、CPU-Requestsを絶対的な最小保証にする。
YAASは2つの主要な制御変数に基づいている:
- Overage (U-R): Podの実際の使用量と割り当て量の差
- ノード利用率 (N): Podが存在するノードの総CPU利用率
核心的戦略:
- overage ≥ 0を維持し、SLO違反が差し迫った場合のみリソースを増加させる
- Pod移行によるノード利用率の最適化
- 垂直および水平スケーリングの組み合わせ
DeathStarBenchから2つのマイクロサービスアプリケーションを使用:
- HotelReservation (HR): ホテル予約システム
- SocialNetwork (SN): ソーシャルネットワークアプリケーション
- プラットフォーム: Amazon EC2クラスタ
- 負荷パターン: 変動するリクエスト負荷、実際の本番環境をシミュレート
- 評価指標:
- エンドツーエンドのテール遅延(P99)
- CPU リソース使用量
- スケーリング回数と収束時間
- コスト効率
- 従来のCPU制限ベースのHPA (Horizontal Pod Autoscaler)
- 手動で最適化されたCPU制限構成
- 異なるセーフティマージン設定(20%~30%)
レイテンシへの影響:
- 1つのPod(全19個中)にのみCPU制限を設定することで、エンドツーエンドのテール遅延が5倍悪化する
- CPU制限は2つのメカニズムを通じて性能を損害する:単一リクエストのスロットリングとリクエスト間のキュー形成
コスト分析:
- スロットリングを回避するには25~45%のリソース過剰配置が必要
- CPU制限を単純に削除することで38%のリソース削減が可能
- YAASはさらに51%のリソース削減を実現する
スケーリング性能:
- 負荷が25%増加した場合、スケーリング閾値が60%から70%に上昇するとSLO満足時間が4倍増加する
- CPU制限が自動スケーリングの感度に及ぼす影響を示す
セーフティマージン分析: 異なるアプリケーションは異なるセーフティマージンを必要とする:
- nginx-thrift: 30%
- user-timeline-service: 45%
キュー形成メカニズム: 理論分析と実験検証を通じて、CPU制限がより低い負荷でキューを形成する方法を示し、CPU-Requestsはこの問題を生じさせないことを示す。
マルチテナント環境: 2つのアプリケーションが共存する場合、CPU-Requestsは準拠するアプリケーションをバースティングアプリケーションの影響から効果的に保護できるが、CPU制限は逆に性能を悪化させることを実験が示す。
カスケード障害: CPU制限による長いキューはPod内のメモリ超過を引き起こし、Podの再起動につながり、さらに他のPodが制限に達するか、リクエストがタイムアウトする可能性がある。
論文は最近のトップティア会議の自動スケーリング研究を体系的に分析し、それらがすべてCPU制限に依存していることを発見した:
- FIRM: 強化学習を使用してCPU制限を最適化
- Cilantro: オンラインフィードバックに基づいてリソース割り当てを調整
- Autothrottle: SLO目標を処理する双層アプローチ
- Ursa: 分析駆動型リソース管理
- Kubernetes QoS分類は重要なコンテナにCPU制限の設定を要求する
- クラウドサービスプロバイダ(GCP Autopilotなど)は自動的にCPU制限を適用する
- マルチテナント最佳実践はCPU制限の使用を推奨する
- CPU制限は有害: レイテンシ敏感型アプリケーションの場合、CPU制限は有害(スロットリングを引き起こす)であるか無用(到達しない)である
- CPU-Requestsは充分: 最新のオーケストレータとスケジューラの保証により、CPU-Requestsはリソース分離を提供するのに十分である
- 新しい設計空間: CPU制限の削除により、overageとノード利用率に基づく新しい最適化の次元が開かれる
- パラダイムシフトの必要性: 自動スケーリングと課金モデルの再設計が必要である
- 適用範囲: 主にレイテンシ敏感型アプリケーションを対象とし、バックグラウンドタスクなどのシナリオではCPU制限が依然として必要
- 実験規模: 実験は特定のマイクロサービスベンチマークに基づいており、より大規模な検証が必要
- 本番運用: プロトタイプYAASは本番環境での使用のためにさらなるエンジニアリングが必要
- エコシステム: オーケストレータ、監視、課金システムの協調的な変更が必要
- インテリジェントスケジューリング: マイクロアーキテクチャリソース(キャッシュ、メモリ帯域幅)の干渉認識スケジューリングの統合
- 性能ベース課金: リソース使用量ではなくSLO満足に基づく課金モデル
- 垂直スケーリング: CPU制限のない環境での垂直スケーリング最適化
- 多次元最適化: Pod スケーリングとノードスケーリングの共同最適化
- 破壊的観点: 領域内の基本的仮定に挑戦する勇気を持ち、重要な学術的価値を有する
- 実証が充分: 理論分析、実験検証、業界調査の多次元的支援により観点を支持する
- 実用的価値: 具体的な代替案とプロトタイプ実装を提供し、直接的な応用価値を有する
- 体系的分析: 性能、コスト、信頼性など複数の観点から問題を包括的に分析する
- バランスの取れた観点: CPU制限の濫用を批判する一方で、その合理的な使用ケースも指摘する
- 実験の限界: 実験は主に2つのマイクロサービスアプリケーションに基づいており、より広範なアプリケーションタイプの検証が不足している
- 本番検証: 大規模本番環境での長期検証データが不足している
- 互換性: 既存システムとツールチェーンの改造コストの分析が不十分
- セキュリティ考慮: CPU制限削除がもたらす可能性のあるセキュリティリスクについての議論が不十分
学術的影響:
- リソース管理分野のパラダイムシフトを引き起こす可能性がある
- 自動スケーリング研究に新しい設計思想を提供する
- 10年以上続く業界ベストプラクティスに挑戦する
業界への影響:
- クラウドサービスプロバイダにコスト最適化の新しい道を提供する
- Kubernetesなどのオーケストレータの将来設計に影響を与える可能性がある
- パフォーマンスベース課金モデルのイノベーションを推進する
直接適用可能:
- レイテンシ敏感型オンラインサービス
- コスト敏感型クラウドネイティブアプリケーション
- 高性能保証が必要なマイクロサービスアーキテクチャ
慎重に検討が必要:
- マルチテナント環境(追加の分離メカニズムが必要)
- バックグラウンドタスクを含む混合ワークロード
- リソース使用に厳密なコンプライアンス要件がある場合
論文は83の関連文献を引用しており、コンテナオーケストレーション、リソース管理、自動スケーリングなど複数の分野の重要な研究をカバーしている。主要な参考文献には以下が含まれる:
- Kubernetes公式ドキュメントとベストプラクティス
- 最近のトップティア会議の自動スケーリング研究(OSDI, NSDI, EuroSysなど)
- Linuxカーネルのスケジューリングと制御グループ関連ドキュメント
- 業界実践と事例研究
本論文は、その破壊的な観点と充分な実証分析により、クラウドネイティブリソース管理分野に重要な挑戦を提起している。CPU制限の完全な削除はエコシステムの広範な変革を必要とする可能性があるが、提供される洞察と代替案は当該分野の将来の発展に新しい方向性を示している。論文の価値は技術的貢献だけでなく、業界の既定観念に対する深い反思にある。