.IMS

.IMSには、IMSサブシステムで使用するすべてのモジュールが含まれます。IMS Full Function(DFSxxxxx)、IMS Fast Path(DBFxxxxx)、DBRC(DSPxxxxx)などのモジュールが含まれます。IRLM(DXRxxxxx)モジュールがローカル/グローバル ロッキングで使用されている場合は、.DB2IRLMセクションにモジュールが表示されます。

IMSモジュールが、ジョブ全体でCPUの25~90%を使用することは珍しくなく、特に不適切なことでもありません。アプリケーション コードを適切に調整すると、データベースの呼び出しパターンも適正に調整されます。また、データベース バッファー プールを適切に調整すると、CPU使用のほとんどが.IMS内で示されるはずです。

IMSによるCPU使用率が25%未満の場合、特にBMPまたはバッチ環境の場合には、CPUがジョブの他の部分で非効率的に使用されている可能性があります。

ヒント

IMS環境では、パフォーマンス向上対策は標準のIMSパフォーマンス チューニングと同時に行う必要があります。iStrobeによって、IMSパフォーマンス向上対策が可能なタイミングがわかります。

IMSバッチ環境では、資源要求分布レポートはIMSログ(IEFRDERとIEFRDER2)とRECONデータセットの活動を示します。

モジュール別待ち時間レポートは、IMSモジュールの待ち時間、またはIMSが使用しているSVCの待ち時間を示します。

データセット特性レポートは、OSAMデータベースとVSAMデータベースおよびVSAMバッファーの入出力を示します。これにより、データベース バッファー プールと呼び出しパターンのパフォーマンスを向上させる必要があるかどうかがわかります。STEPLIBデータセットの入出力も示されます。IMSメッセージ領域内のSTEPLIBのパフォーマンス分析は、IMSのパフォーマンスを向上させるための重要な活動です。

入出力装置レポートには、同一のDASDボリューム上に使用頻度の高いデータベースとデータセットが多すぎるために競合が発生したことも示されます。

資源別入出力使用レポートには、データベースの入出力活動が集中して発生したことがシリンダー レベルで示されます。

プログラムCPU使用レポートに、IMS呼び出し活動モジュールでCPUが使用されていることが示される場合は、データベース呼び出しパターンとデータベース バッファーを調査してください。これについては、個々のモジュールの説明で解説します。IMSバッチ環境では、IMS DBMONITORとデータベース コール トレース(DFSVSAMP制御カード内でDLITRACE LOG=YES,COMPを指定)を使用します。BMPまたはMPP環境では、IMS DCMONITORとデータベース コール トレース(データベースのコールには/TRACE SET ON PSB xxxxxxxx COMP、データ通信のコールには/TRACE SET ON PGM xxxxxxxx)を使用します。IMS DCMONITORからのIMSASAP II TRACEレポートは分析に役立ちます。

前述の例はすべて、パフォーマンスを最大限に向上させるために調べる必要があるIMSパフォーマンス分析領域を、iStrobeを使用して特定する方法を示しています。

IMSモジュールでCPU処理時間が非常に長くかかっている場合や、特定のIMSモジュールの動作を調べたい場合は、対象モジュールの詳細を指定してパフォーマンス プロファイルを再作成し、CPUの使用状況を分析します。続いてIMSモジュールをコンパイルし、CPU使用領域にオフセットを合わせます。

参考資料

『Strobe解析と分析ユーザー・ガイド』