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 in Operation」
PowerTOP をインストールするには、root で以下のコマンドを実行します。
~]# yum install powertop
PowerTOP を実行するには、root で次のコマンドを実行します。
~]# powertop
PowerTOP は、システムの総電力使用量の推定値を提供し、各プロセス、デバイス、カーネル作業、タイマー、および割り込みハンドラーの個々の電力使用量を表示します。ラップトップは、このタスク中のバッテリー電源で実行する必要があります。電力予測エンジンを調整するには、root で以下を実行します。
~]# powertop --calibrate
調整には時間がかかります。プロセスは、さまざまなテストを実行しますが、明るさのレベルやデバイスのオンとオフを切り替えることができます。プロセスは終了し、調整時にマシンと対話しないようにします。調整プロセスが完了すると、PowerTOP が通常どおり起動します。データを収集するために約 1 時間実行します。十分なデータが収集されると、電力予測マークが最初の列に表示されます。
ノートパソコンで実行している場合は、利用可能なすべてのデータが提示されるように、バッテリー電源で実行している必要があります。
PowerTOP は、実行中に、システムから統計を収集します。Overview タブでは、ウェイクアップを最も頻繁に CPU に送信するか、最も電力を消費するコンポーネントの一覧を表示できます 図2.1「powertop in Operation」)。隣接する列には、リソースの使用方法、毎秒のウェイクアップ、プロセス、デバイス、タイマーなどのコンポーネントの分類、およびコンポーネントの説明が表示されます。1 秒あたりのウェイクアップは、サービスまたはデバイス、ならびにカーネルのドライバーが効率的に実行されているかを示します。ウェイクアップが少ないほど、消費電力が少なくなります。コンポーネントは、電力使用率をどの程度まで最適化できるかによって順序付けられます。
ドライバーコンポーネントの調整には通常、カーネルの変更が必要になります。これについては、本書では扱いません。ただし、ウェイクアップを送信するユーザーランドプロセスはより簡単に管理されるプロセスです。まず、このシステムでこのサービスまたはアプリケーションを実行する必要があるかどうかを判断します。そうでない場合は、非アクティブにします。古い System V サービスを永続的にオフにするには、次のコマンドを実行します。
~]# systemctl disable servicename.service
プロセスの詳細は、root で以下のコマンドを実行します。
~]# ps -awux | grep processname
~]# strace -p processid
トレース自体が繰り返されるように見える場合は、おそらくビジーループとなります。このようなバグの修正には、通常、そのコンポーネントでコードの変更が必要になります。
図2.1「powertop in Operation」、電力消費と残りのバッテリーの寿命はそちらに表示されます(該当する場合)。以下は、1 秒あたりの合計ウェイクアップ、秒ごとの GPU 操作、および 1 秒あたりの仮想ファイルシステム操作の合計を特長とする簡単な概要です。残りの画面では、使用率に従ってソートされたプロセス、割り込み、デバイス、その他のリソースの一覧が表示されます。適切に調整すると、最初の列にリストされているすべての項目に対する電力消費予測も表示されます。
Tab Shift+Tab キーを使用してIdle stats タブで、すべてのプロセッサーおよびコアについて C-states を使用できます。Frequency stats タブで、Turbo モード(該当する場合)がすべてのプロセッサーおよびコアについて表示されます。CPU の C 状態または P 状態が高いままになるほど、適切なサイズ(C4 は C 3 より高)になります。これは、CPU 使用率がどの程度最適化されているかを示すのに適しています。システムがアイドル状態のときに、最高の C 状態または P 状態では 90% 以上が理想的であることが理想的です。
Device Stats タブは Overview タブと同様の情報を提供しますが、デバイス専用です。
Tunables タブには、低消費電力にシステムの最適化に関する提案が含まれています。up キーおよび down キーを使用して提案を移動し、Enter キーを使用して提案をオンとオフを切り替えます。

図2.1 powertop in Operation

powertop in Operation
--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 ページを参照するか、パフォーマンスチューニングガイド を参照してください