はじめに
この実験では、Linux でアクティブな CPU 周波数スケーリングガバナーを確認する方法を学びます。主に 2 つの方法を探ります。1 つは cpufreq-info コマンドを使用する方法、もう 1 つは /sys/devices/system/cpu 内のシステムファイルを調べる方法です。
まず、必要なツールをインストールし、次に cpufreq-info を使用して現在のガバナーと利用可能なオプションを特定します。その後、/sys ファイルシステム内の関連ファイルを調べることで、この情報を検証します。最後に、cat /proc/cpuinfo を使用して、CPU の詳細情報をさらに深く理解します。この実験を通じて、CPU の電力管理設定を理解し検証する知識を身につけることができます。
cpufreq-info でガバナーを確認する
このステップでは、cpufreq-info コマンドを使用して CPU 周波数スケーリングガバナーを確認する方法を探ります。CPU ガバナーは、システム負荷に基づいて CPU がどのように速度(周波数)を調整するかを決定します。異なるガバナーは、パフォーマンスまたは省電力を優先します。
まず、cpufreq-info コマンドを含む cpufrequtils パッケージをインストールする必要があります。これには apt を使用します。
まだ開いていない場合は、ターミナルを開きます。デスクトップの左側にある Xfce Terminal アイコンを見つけることができます。
以下のコマンドを入力して、パッケージをインストールします。
sudo apt update
sudo apt install cpufrequtils -y
sudo apt update コマンドは、利用可能なパッケージのリストを更新し、sudo apt install cpufrequtils -y は cpufrequtils パッケージをインストールします。-y フラグは、確認を求めずに自動的にインストールを承認します。
インストールが完了したら、cpufreq-info を使用してガバナーを確認できます。
以下のコマンドを入力して、Enter キーを押します。
cpufreq-info
次のような出力が表示されます(正確な詳細はシステムによって異なります)。
analysing CPU 0:
driver: intel_pstate
cpufreq usage: 0.00%
...
available governors: performance powersave
current policy: frequency 2.30 GHz, turbo boost 3.80 GHz
...
current CPU frequency: 2.30 GHz (asserted by call to hardware)
...
available governors: と current policy: と書かれた行を探します。これにより、利用可能なガバナーと現在アクティブなガバナーがわかります。一般的なガバナーには、performance(速度を優先)と powersave(省エネを優先)があります。
CPU ガバナーを理解することは、システムのパフォーマンスと電力消費を最適化するために重要です。
Continue をクリックして、次のステップに進みます。
/sys/devices/system/cpu でガバナーを確認する
前のステップでは、cpufreq-info を使用して CPU ガバナーを確認しました。Linux は /sys ファイルシステムを通じてシステム情報を公開しています。このファイルシステムは、カーネルのデータ構造を見ることができる窓口となります。
CPU ガバナーに関する情報は /sys/devices/system/cpu ディレクトリにあります。このディレクトリには、各 CPU コアのサブディレクトリ(例:cpu0、cpu1 など)が含まれています。
最初の CPU コア cpu0 のディレクトリに移動しましょう。cd コマンドを使用してディレクトリを変更します。
以下のコマンドを入力して Enter キーを押します。
cd /sys/devices/system/cpu/cpu0/cpufreq
これで /sys/devices/system/cpu/cpu0/cpufreq ディレクトリに移動したので、ファイルを一覧表示して利用可能な情報を確認します。ls コマンドを使用します。
ls
scaling_governor を含むファイルのリストが表示されます。このファイルには、このコアで現在アクティブな CPU ガバナーの名前が含まれています。
scaling_governor ファイルの内容を表示するには、cat コマンドを使用します。
以下のコマンドを入力して Enter キーを押します。
cat scaling_governor
出力は現在のガバナーの名前になります。例えば:
powersave
これにより、システムの観点からガバナーの設定が確認できます。
このディレクトリ内の他のファイルを探索することで、CPU 周波数設定に関する詳細情報を見つけることができます。たとえば、scaling_available_governors を見ると、このコアで利用可能なすべてのガバナーがわかります。
/sys の探索が終わったら、cd を使用してホームディレクトリまたは ~/project に戻すことを忘れないでください。
cd ~/project
Continue をクリックして次に進みます。
cat /proc/cpuinfo で CPU の詳細を確認する
/sys に加えて、Linux は /proc ファイルシステムを通じてシステム情報を提供します。これは、プロセスやその他のシステム情報に関する詳細を提供する別の仮想ファイルシステムです。
/proc/cpuinfo ファイルには、システム内の CPU の詳細情報が含まれています。cat コマンドを使用してその内容を表示しましょう。
ホームディレクトリまたは ~/project にいることを確認してください。そうでない場合は、cd ~/project を使用してそこに移動します。
以下のコマンドを入力して Enter キーを押します。
cat /proc/cpuinfo
各 CPU コアに関する詳細を提供する大量の出力が表示されます。出力は次のようになります(詳細は異なります)。
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
stepping : 9
microcode : 0x...
cpu MHz : 2808.000
cache size : 6144 KB
...
/proc/cpuinfo で見つけることができるいくつかの重要な情報には、以下のようなものがあります。
processor: CPU コアのインデックス(0 から始まります)。model name: CPU の完全な名前と速度。cpu MHz: CPU コアの現在の速度(MHz)。cache size: CPU のキャッシュサイズ。
出力をスクロールして、すべての CPU コアの情報を確認することができます。このファイルは、システムの CPU のハードウェア仕様を理解するための貴重な情報源です。
Continue をクリックして、この実験を完了します。
まとめ
この実験では、Linux でアクティブな CPU ガバナーを確認する方法を学びました。まず、sudo apt update と sudo apt install cpufrequtils -y を使用して cpufrequtils パッケージをインストールしました。インストール後、cpufreq-info コマンドを使用して、performance や powersave などの利用可能なガバナーと現在アクティブなガバナーを含む、詳細な CPU 周波数情報を表示しました。
次に、ガバナーを検証する代替方法を探索しました。これには、カーネル情報へのプログラム的なインターフェースを提供する /sys/devices/system/cpu ディレクトリ内のシステムファイルを調べる作業が含まれていました。最後に、cat /proc/cpuinfo を使用して一般的な CPU の詳細を表示しました。このコマンドは直接ガバナーを表示しませんが、CPU 自体に関するコンテキストを提供します。CPU ガバナーを理解することは、システムのパフォーマンスと電力効率を最適化するために重要です。



