IBM i のレスポンスタイムの内訳
他のコンピューターでも基本はほぼ同じと思いますが、IBM i の特徴(いいところ)は、下記のようなサーバー内部のレスポンスタイムの内訳がパフォーマンスデータを取ると明確に識別できるところです。
活動状態は実質コンピューターが処理をしている時間なので、サーバーのスペックや処理負荷である程度予測や推測が容易なもの(と言っても精緻にするのは難しいわけですが)といえます。
対して待機状態は分析してみないと分からない、本来は想定していない、というような属性を持っていることが多いと思います。待機状態の割合が増えると「あれ~、もっと速いはずなのになんでこんなに遅いの~??」となってしまう事が多いですね。
IBM i の待機アカウンティング一覧
IBM i の特徴(特許だそうです♪)にこの待機状態をカテゴリで分類して個々の処理時間として統計情報化できる機能があります。待機アカウンティング と呼びます。
こちらに待機アカウンティング一覧が記載されています。
このページの中に待機アカウンティングの明細32が記載されています。
実際の処理の中ではここ記載されている待機状態を詳しく分析することで、パフォーマンスが(予想より)遅い状態を分析し、改善案を検討できるようになります。
現場で、パフォーマンスが期待値に達しない場合、インフラなのか、アプリコード単体なのか、アプリコードを複数実行した際のボトルネックなのか、、それ以外のトラブルなのか、、が識別できないことは(IBM i ということでなく一般的に)相当発生しているように思います。IBM i 待機アカウンティングはその理由を客観的に認識する方法として有効だと思います。
意外とここまでできるプラットフォームは少ないのではないでしょうか。
待機の分析サンプル
Q.
待機アカウンティング は IBM Navigator for i や ACS を使えばグラフィカルに表示して確認することができるのでしょうか?
A.
収集サービス *MGTCOLオブジェクトをパフォーマンスデータに展開して(CRTPFRDTAコマンド)、Navigator for i で表示するだけです。
サンプルを記載します。
この例ですとあまり種類が多くないですが、ディスパッチされたCPU時間(赤)、CPUキューイング(紫)、ディスク・ページ不在(オレンジ)があることが分かります。