ボトルネックの検出

システムの側面のうち、最もユーザーの関心が高いのは、CPU とメモリーの使用量です。

大規模なチューニングを行った後であっても、CPU のパワーが足りずにワークロードを処理できない可能性があります。このような場合は、CPU のアップグレードが必要です。 同様に、チューニングを行ってもメモリーが不足する環境でプログラムが稼働している場合は、メモリー・サイズを増やす必要があります。

いくつかある要因のうちのいずれかが原因でパフォーマンス上の問題が発生した可能性がある場合、複数の領域を調べてそれぞれの要因を取り除く必要があります。 まず、システムを抑制しているリソースを判別します。
  • CPU
  • メモリー
  • 入出力 (I/O)
これを行うには、vmstat コマンドを使用します。 vmstat コマンドを実行すると、これらの 3 つの領域のアクティビティーの詳細を示すコンパクトなレポートが生成されます。
> vmstat 1 10  
outputs:
kthr     memory             page              faults        cpu     
----- ----------- ------------------------ ------------ -----------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa 
 0  0 189898   612   0   0   0   3   11   0 178  606 424  6  1 92  1
 1  0 189898   611   0   1   0   0    0   0 114 4573 122 96  4  0  0
 1  0 189898   611   0   0   0   0    0   0 115  420 102 99  0  0  0
 1  0 189898   611   0   0   0   0    0   0 115  425  91 99  0  0  0
 1  0 189898   611   0   0   0   0    0   0 114  428  90 99  0  0  0
 1  0 189898   610   0   1   0   0    0   0 117  333 102 97  3  0  0
 1  0 189898   610   0   0   0   0    0   0 114  433  91 99  1  0  0
 1  0 189898   610   0   0   0   0    0   0 114  429  94 99  1  0  0
 1  0 189898   610   0   0   0   0    0   0 115  437  94 99  0  0  0
 1  0 189898   609   0   1   0   0    0   0 116  340  99 98  2  0  0

上記の例は、CPU 制約があるシステムを示しています。 これは、ユーザー (us) とシステム (sy) の CPU 値の合計が 100 に等しいか 100 に近いことから分かります。 メモリー制約があるシステムでは、ページイン (pi) およびページアウト (po) の値がかなり大きくなります。 ディスク入出力制約があるシステムでは、入出力の待機率 (wa) が 10% を超えます。 vmstat について詳しくは、 AIX デバッグ・コマンドを参照してください。