33.3.4. カーネルコマンドラインオプションを使用した C-状態の無効化


ホストのアプリケーションのレイテンシーが C-状態の影響を受けているかどうかをテストするには、カーネルコマンドラインオプションで消費状態(C-状態)を一時的に無効にします。

processor.max_cstate および intel_idle.max_cstate カーネルコマンドラインパラメーターは、使用可能な最大 C-状態 CPU コアを設定します。たとえば、パラメーターを 1 に設定すると、CPU は C1 より下の C-状態を要求しなくなります。

特定の状態をハードコーディングしないようにするには、より動的なソリューションの使用を検討してください。Disabling C-states by using a custom TuneD profile を参照してください。

前提条件

  • tuned サービスが実行されていないか、C-状態設定を更新しないように設定されています。

手順

  1. システムが使用するアイドル状態のドライバーを表示します。

    # cat /sys/devices/system/cpu/cpuidle/current_driver
    intel_idle

    ドライバーの詳細は、kernel-doc パッケージによって提供される /usr/share/doc/kernel-doc-<version>/Documentation/admin-guide/pm/cpuidle.rst ファイルを参照してください。

  2. ホストが intel_idle ドライバーを使用している場合は、intel_idle.max_cstate カーネルパラメーターを設定して、CPU コアが使用できる最高の C-状態を定義します。

    # grubby --update-kernel=ALL --args="intel_idle.max_cstate=0"

    intel_idle.max_cstate=0 を設定すると、intel_idle ドライバーが無効になります。その結果、カーネルは、EFI ファームウェアで設定された C-状態値を使用する acpi_idle ドライバーを使用します。このため、これらの C-状態設定をオーバーライドするには、processor.max_cstate も設定します。

  3. すべてのホストで、CPU ベンダーから独立して、CPU コアが使用できる最高の C-状態を設定します。

    # grubby --update-kernel=ALL --args="processor.max_cstate=0"
    重要

    intel_idle.max_cstate=0 に加えて processor.max_cstate=0 を設定すると、acpi_idle ドライバーは processor.max_cstate の値をオーバーライドして 1 に設定します。その結果、processor.max_cstate=0 intel_idle.max_cstate=0 の場合、カーネルが使用する最高の C-状態は C0 ではなく C1 になります。

  4. 変更を有効にするためにホストを再起動します。

    # reboot

検証

  1. 最大の C-状態を表示します。

    # cat /sys/module/processor/parameters/max_cstate
    1
  2. ホストが intel_idle ドライバーを使用している場合は、最大の C-状態を表示します。

    # cat /sys/module/intel_idle/parameters/max_cstate
    0
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る