ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
マニュアルページセクション 1M: システム管理コマンド Oracle Solaris 11 Information Library (日本語) |
- プロセッサグループの使用状況統計の報告
pgstat [-A] [-C] [-p] [-s key | -S key] [-t number] [-T u | d] [-v] [-r string] [-R string] [-P pg ...] [-c processor_id... ] [interval [count]]
pgstat -h
pgstat はプロセッサグループ (PG) に関する使用状況統計を表示します。PG とは、共通の特性でひとまとめにした CPU のセットです。
PG は、オペレーティングシステムで、実行パイプラインやキャッシュなど、パフォーマンスに関連したハードウェアを共有する CPU を表すために使用されます。これらの PG は、マシンのプロセッサトポロジをモデル化した階層に編成されます。この階層では、それぞれの CPU (ストランド) に、その CPU ともっとも多くのハードウェアを共有している CPU を表すリーフ PG が割り当てられます。ルート PG に到達するまでリーフ PG を上位にさかのぼっていくにつれ、その CPU と共有するハードウェアの数は少なくなっていきます。ルート PG は、システム内のすべての CPU を含み、相互に共有するハードウェアがもっとも少ない CPU のグループを表します (PG 階層の例については、後述の「使用例」を参照してください)。
マシンに、パフォーマンス関連のハードウェアの共有関係がない場合、pgstat は、システム内のすべての CPU を含むルート PG のみを表示します。
デフォルトで、pgstat は次の操作を行います。
1 秒間の間隔にわたって、PG 階層内の全 PG のハードウェア使用状況およびソフトウェア使用状況を測定します。
PG の使用状況を深さ優先順で表示し、PG がどのように相互に関連しているかをインデントを使用してわかりやすく示します。
一定間隔の時間が経過するごとに、それぞれの PG について、ID、共有関係、ハードウェア負荷、ソフトウェア負荷、およびオンラインの CPU を表示します。
間隔および回数を引数として与えることにより、サンプリング間隔の秒数と、指定した PG の使用状況を測定および表示する回数を指定できます。
オプションを指定することで、出力をさらに調整し、特定の方法で出力を整理し、関心のある PG を指定できます (詳細は、後述の「オプション」を参照)。
指定した PG の使用状況がサポートされていない場合にはハイフン (「-」) が表示され、使用状況を利用できない場合には疑問符 (?) が表示されます。ハードウェア使用状況の測定に CPU ハードウェアパフォーマンスカウンタが必要なシステムでは、attributes(5)、cputrack(1)、dtrace(1M) のほか、libcpc(3LIB) を使用するほかのアプリケーションなど、cpc(3CPC) コンシューマによってカウンタが使用されているために使用状況を利用できない場合があります。
次のオプションがサポートされています。
複数の間隔にわたって pgstat を実行している場合に、使用状況データの要約を表示します。
指定した CPU を含む PG に関する使用状況を表示します。CPU は、CPU ID のコンマ区切りのリストとして指定できます。ハイフン (「-」) を使用すると、連続した範囲の CPU ID を指定できます (たとえば 0-3)。
各 PG 内の CPU ごとの使用状況を表示します。
簡単なヘルプメッセージを表示し、終了ステータス 0 で終了します。
PG に対応する物理的関係を表示します。PG に、システム全体、プロセッサコア、またはチップと同じ CPU がある場合、それぞれ system、core、または chip が、PG の共有関係のあとに角括弧 (「[]」) で囲まれて表示されます。
指定した PG の使用状況を表示します。複数の PG は、PG ID のコンマ区切りのリストとして指定できます。ハイフン(「-」) を使用すると、連続した範囲の PG ID を指定できます (たとえば 0-3)。
指定された文字列のいずれかに一致した共有関係名を持つ PG に関する使用状況のみを表示します。文字列は、完全な関係名でも、1 つ以上の関係名の一部でも構いません。文字列の照合では大文字と小文字は区別されません。
複数の -r オプションを入力できますが、この場合、指定された文字列のいずれかが含まれる関係名を持つすべての PG に一致することになります。
指定された名前以外の共有関係名を持つ PG に関する情報のみを表示します。
文字列の照合は、前述の -r オプションの説明と同じです。複数の -R オプションを入力できます。
指定されたキーで、出力行を降順にソートします。指定されたキーは、次のいずれかになります。
PG ID の順にソートします。
ハードウェア使用状況の順にソートします。
ソフトウェア使用状況の順にソートします。
ユーザー時間の順にソートします。
システム時間の順にソートします。
アイドル時間の順にソートします。
PG ツリーをルートからリーフに下っていく順番で、深さ優先でソートします (デフォルト)。
PG ツリーをルートからリーフに下っていく順番で、幅優先でソートします。
指定されたキーで、出力行を昇順にソートします。使用可能なキー値は、-s オプションの場合と同じです。
指定された整数値に対応する PG の最上位番号を表示します。
サンプリング間隔ごとのタイムスタンプを、UNIX 時間 (time(2) を参照) で表示するか、date(1) で使用される標準の日付形式で表示します。
ハードウェアの使用状況および容量、ソフトウェアのユーザー時間、システム時間、アイドル時間など、各 PG に関する追加情報を表示します。
pgstat は、次に示す列の見出しをその意味と一緒に表示します。
プロセッサグループ ID。
PG の共有関係。
パーセント単位でのハードウェア負荷 (間隔あたりの UTIL/CAP として計算)。
PG の共有ハードウェアコンポーネントの、時間間隔あたりのハードウェア使用状況。これは大きな数値になる可能性があるので、K、M、B、および T が、それぞれ 1000、100 万、10 億、1 兆を示すために使用されます。
PG の共有ハードウェアコンポーネントの、時間間隔あたりのおおよその最大使用状況見込み。これは大きな数値になる可能性があるので、K、M、B、および T が、それぞれ 1000、100 万、10 億、1 兆を示すために使用されます。
パーセント単位でのソフトウェア負荷 ((USR + SYS) / (USR + SYS + IDLE) で計算)。
PG 内の CPU でソフトウェアスレッドがユーザーモードで実行していた時間の、時間間隔に対するパーセント。
PG 内の CPU でソフトウェアスレッドがシステムモードで実行していた時間の、時間間隔に対するパーセント。
PG 内の CPU でソフトウェアスレッドが実行していなかった時間の、時間間隔に対するパーセント。
PG 内の CPU の CPU ID。
次の例では、システムには、8 つのコアと 32 のストランドを備えた 1 つの UltraSPARC T1 プロセッサチップが搭載されています。
例 1 指定した期間での使用状況を表示する
次のコマンドは、直前の 2 秒間にわたるすべての PG の使用状況を表示します。
$ pgstat 1 2 PG RELATIONSHIP HW SW CPUS 0 System - 0.4% 0-31 3 Data_Pipe_to_memory - 0.4% 0-31 2 Floating_Point_Unit 0% 0.4% 0-31 1 Integer_Pipeline 0% 0% 0-3 4 Integer_Pipeline 0% 0% 4-7 5 Integer_Pipeline 0% 0% 8-11 6 Integer_Pipeline 0% 0.2% 12-15 7 Integer_Pipeline 0% 0% 16-19 8 Integer_Pipeline 2.8% 2.7% 20-23 9 Integer_Pipeline 0.1% 0.2% 24-27 10 Integer_Pipeline 0% 0% 28-31 PG RELATIONSHIP HW SW CPUS 0 System - 0.4% 0-31 3 Data_Pipe_to_memory - 0.4% 0-31 2 Floating_Point_Unit 0% 0.4% 0-31 1 Integer_Pipeline 0% 0.2% 0-3 4 Integer_Pipeline 0% 0% 4-7 5 Integer_Pipeline 0% 0% 8-11 6 Integer_Pipeline 0% 0% 12-15 7 Integer_Pipeline 0% 0% 16-19 8 Integer_Pipeline 3.1% 2.5% 20-23 9 Integer_Pipeline 0% 0% 24-27 10 Integer_Pipeline 0% 0.2% 28-31
例 2 整数パイプラインに関する情報を表示する
次のコマンドは、直前の 2 秒間にわたりもっとも頻繁に使用された 2 つの整数パイプラインに関する詳細を表示します。
$ pgstat -v -t 2 -r 'Integer_Pipeline' 1 2 PG RELATIONSHIP HW UTIL CAP SW USR SYS IDLE CPUS 1 Integer_Pipeline 0.2% 2.2M 1.4B 0.2% 0.0% 0.2% 99.8% 0-3 4 Integer_Pipeline 13.1% 181M 1.4B 14.9% 0.0% 14.9% 85.1% 4-7 PG RELATIONSHIP HW UTIL CAP SW USR SYS IDLE CPUS 1 Integer_Pipeline 0.2% 1.9M 1.2B 0.2% 0.0% 0.2% 99.8% 0-3 4 Integer_Pipeline 13.1% 163M 1.2B 14.9% 0.0% 14.9% 85.1% 4-7
例 3 指定した期間でのコアの使用状況を表示する
次のコマンドは、直前の 2 秒間にわたるコアの使用状況に関する情報を表示します。
$ pgstat -A 60 2 PG RELATIONSHIP HW SW CPUS 0 System - 56.9% 0-31 3 Data_Pipe_to_memory - 56.9% 0-31 2 Floating_Point_Unit 0.0% 56.9% 0-31 1 Integer_Pipeline 36.7% 58.7% 0-3 4 Integer_Pipeline 41.9% 58.3% 4-7 5 Integer_Pipeline 31.0% 58.0% 8-11 6 Integer_Pipeline 30.7% 57.9% 12-15 7 Integer_Pipeline 30.1% 55.8% 16-19 8 Integer_Pipeline 40.2% 54.8% 20-23 9 Integer_Pipeline 35.0% 56.0% 24-27 10 Integer_Pipeline 40.3% 55.8% 28-31 PG RELATIONSHIP HW SW CPUS 0 System - 10.7% 0-31 3 Data_Pipe_to_memory - 10.7% 0-31 2 Floating_Point_Unit 0.0% 10.7% 0-31 1 Integer_Pipeline 9.0% 10.7% 0-3 4 Integer_Pipeline 9.6% 10.8% 4-7 5 Integer_Pipeline 8.6% 9.9% 8-11 6 Integer_Pipeline 10.5% 11.9% 12-15 7 Integer_Pipeline 9.1% 10.4% 16-19 8 Integer_Pipeline 9.6% 10.9% 20-23 9 Integer_Pipeline 8.9% 10.0% 24-27 10 Integer_Pipeline 9.5% 10.7% 28-31 SUMMARY: UTILIZATION OVER 120 SECONDS ------HARDWARE------ ------SOFTWARE------ PG RELATIONSHIP MIN AVG MAX MIN AVG MAX CPUS 0 System - - - 10.7% 10.7% 56.9% 0-31 3 Data_Pipe_to_memory - - - 10.7% 10.7% 56.9% 0-31 2 Floating_Point_Unit 0.0% 0.0% 0.0% 10.7% 10.7% 56.9% 0-31 1 Integer_Pipeline 9.0% 8.5% 36.7% 10.7% 10.7% 58.7% 0-3 4 Integer_Pipeline 9.6% 9.1% 41.9% 10.8% 10.8% 58.3% 4-7 5 Integer_Pipeline 8.6% 8.1% 31.0% 9.9% 9.9% 58.0% 8-11 6 Integer_Pipeline 10.5% 10.0% 30.7% 11.9% 11.9% 57.9% 12-15 7 Integer_Pipeline 9.1% 8.6% 30.1% 10.4% 10.4% 55.8% 16-19 8 Integer_Pipeline 9.6% 9.1% 40.2% 10.9% 10.9% 54.8% 20-23 9 Integer_Pipeline 8.9% 8.4% 35.0% 10.0% 10.0% 56.0% 24-27 10 Integer_Pipeline 9.5% 8.9% 40.3% 10.7% 10.7% 55.8% 28-31
次の終了値が返されます。
正常終了。
システムから PG 情報を取得できません。
指定された間隔、回数、またはすべての CPU、PG、および共有関係が無効です。
構文が正しくない。
属性についての詳細は、attributes(5) を参照してください。
|
コマンド行オプションおよび出力は「不確実」です。
cputrack(1), attributes(5), dtrace(1M), pginfo(1M), cpc(3CPC), libcpc(3LIB), attributes(5)