Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

2.2. PowerTOP

Red Hat Enterprise Linux 7 にティックレスカーネルの導入により、CPU はアイドル状態により迅速に入り、電力消費を削減し、電源管理を改善できます。PowerTOP ツールは、CPU を頻繁にウェイクアップするカーネルおよびユーザー空間アプリケーションの特定のコンポーネントを識別します。powertop は、本リリースで多くのアプリケーションが調整される監査を実行するために開発中に使用され、不要な CPU ウェイクを 10 倍減します。
Red Hat Enterprise Linux 7 には、PowerTOP のバージョン 2.x が同梱されています。このバージョンは、1.x コードベースの完全な書き換えです。タブベースのユーザーインターフェイスがより明確になり、カーネル perf インフラストラクチャーを使用してより正確なデータを提供します。システムデバイスの電源動作が追跡され、目次に表示されるため、問題はすぐに特定できます。より実験的な方法として、2.x コードベースには電力予測エンジンが含まれており、個々のデバイスやプロセスが消費している量を示すことができます。図2.1「操作の powertop」を参照してください。
PowerTOP をインストールするには、root で次のコマンドを実行します。
~]# yum install powertop
PowerTOP を実行するには、root で次のコマンドを実行します。
~]# powertop
Power top は、システムの総電力使用量の見積もりを提供し、各プロセス、デバイス、カーネル作業、タイマー、および割り込みハンドラーに対する個々の電力使用量を表示できます。このタスクでは、ラップトップはバッテリー電源で実行する必要があります。電力予測エンジンを調整するには、root で次のコマンドを実行します。
~]# powertop --calibrate
キャリブレーションには時間がかかります。このプロセスはさまざまなテストを実行し、明るさのレベルとスイッチデバイスのオン/オフを循環します。プロセスが終了し、キャリブレーション中にマシンと対話しないでください。調整プロセスが完了すると、PowerTOP は通常どおり起動します。データを収集するために約 1 時間実行します。十分なデータが収集されると、電力予測の図が最初の列に表示されます。
ラップトップでコマンドを実行すると、利用可能なすべてのデータが提供されるようにバッテリー電源で実行する必要があります。
実行中、PowerTOP はシステムから統計を収集します。Overview タブでは、ウェイクアップを CPU に最も頻繁に送信するか、最も電力を消費するコンポーネントの一覧を表示できます( 図2.1「操作の powertop」を参照してください)。隣接する列には、電力予測、リソースの使用方法、1 秒あたりのウェイクアップ、プロセス、デバイス、タイマーなどのコンポーネントの分類、コンポーネントの説明が表示されます。1 秒あたりのウェイクアップは、サービスまたはデバイス、およびカーネルのドライバーが効率的に実行されていることを示します。ウェイクアップが少ないと、消費電力が少なくなります。コンポーネントは、電力使用率をどの程度まで最適化できるかによって順序付けられます。
ドライバーコンポーネントのチューニングには通常、本書の対象外のカーネルの変更が必要です。ただし、ウェイクアップを送信するユーザーランドプロセスは、より簡単に管理できます。まず、このサービスまたはアプリケーションがこのシステムで稼働する必要があるかどうかを判断します。そうでない場合は、単に非アクティブにします。古い System V サービスを永続的にオフにするには、次のコマンドを実行します。
~]# systemctl disable servicename.service
プロセスの詳細は、root で次のコマンドを実行します。
~]# ps -awux | grep processname
~]# strace -p processid
トレースが繰り返されるような場合には、おそらくビジーループになります。このようなバグを修正するには、通常、そのコンポーネントでコードを変更する必要があります。
図2.1「操作の powertop」 にあるように、該当する場合は、合計電力消費と残りのバッテリーライフサイクルが表示されます。以下は、1 秒あたりの総ウェイクアップ、1 秒あたりの GPU 操作、および 1 秒あたりの仮想ファイルシステム操作を含む短いサマリーです。残りの画面には、プロセス、割り込み、デバイス、その他のリソースの一覧があります。適切に調整すると、最初の列にリストされているすべての項目に対する電力消費予測も表示されます。
Tab キーおよび Shift+ Tab キーを使用してタブ間を循環させます。Idle stats タブでは、すべてのプロセッサーおよびコアに C-states の使用が表示されます。Frequency stats タブでは、すべてのプロセッサーおよびコアに Turbo モード(該当する場合)を含む P 状態の使用が表示されます。CPU が C 状態または P 状態が高いほど、より優れています(C4C3よりも高くなります)。これは、CPU 使用率がどの程度最適化されているかを示します。システムがアイドル状態である間は、最大 C 状態または P 状態で常駐が 90% 以上になることが理想的です。
Device Stats タブは Overview タブと同様の情報を提供しますが、デバイス専用です。
Tunables タブには、消費電力を削減するためにシステムを最適化するための提案が含まれています。up キーおよび down キーを使用して提案を移動し、Enter キーを使用して提案のオン/オフを切り替えます。

図2.1 操作の powertop

操作の powertop
--html オプションを指定して PowerTOP を実行することにより、HTML レポートを生成することもできます。htmlfile.html パラメーターを、出力ファイルに必要な名前に置き換えます。
~]# powertop --html=htmlfile.html
デフォルトでは、PowerTOP は 20 秒間隔で測定し、--time オプションを使用して変更できます。
~]# powertop --html=htmlfile.html --time=seconds
PowerTOP の詳細は、 PowerTOP のホームページ を参照し てください。
powertop は、turbostat ユーティリティーと併用することもできます。これは、Intel 64 プロセッサーでのプロセッサートポロジー、周波数、アイドル電力状態の統計、温度、および電力使用量に関する情報を表示するレポートツールです。turbostat ユーティリティーの詳細は、turbostat(8)の man ページを参照するか、Performance Tuning Guide を参照してください。