この記事は、z/OSのパラメータを見直す シリーズです。
IEAOPTxx (SRM関連パラメータ)
設定値について
前の記事にも書いた通り、IEAOPTxxのパラメータの推奨値はデフォルト値です。
しかし、何らかの理由で過去に変更された設定値がそのままになっている場合は、チューニング、もしくはデフォルト値への変更を検討する事をお勧めします。
以下に、代表的なパラメータについて記載します。
CCCAWMT
値の範囲:
HIPERDISPATCH=NOの場合、1-499999の値はAWMをアクティブにし、500000-1000000の値はAWMを非アクティブにする。 AWM は、汎用プロセッサ(CP)および zIIPs でのみアクティブまたは非アクティブとなる。
HIPERDISPATCH=YESの場合、有効範囲は1600-3200。 その他の値はすべて、デフォルト値の 3200 にリセットされます。 AWM は常時アクティブで、オフにすることはできません。
デフォルト:
HIPERDISPATCH=NO の場合、デフォルトは 12000 (12 ms) です。 HIPERDISPATCH=YES の場合、デフォルトは 3200 (3.2 ms) です。
共用CPを使用する環境で、各LPARが処理待ち状態かどうかをCPがHW的にチェックする代わりに、SRMが必要な時にCPを要求する(処理待ちでない待機状態では要求しない)事で、CPのオーバーヘッドを低減する(他LPARが使用しているCPの邪魔をしない)機能が、AWM(代替待機管理)です。
過去のトラブル対応やチューニングの一環で、CCCAWMTにデフォルト以外の値が設定されている、もしくはHIPERDISPATHの設定状況と異なるデフォルト値が設定されている場合があります。
AWM機能自体はOS/390時代に登場したもので、当時とCPU性能やOSの機能が大きく異なる現在では、CCCAWMTがチューニング要素として考えられているという情報はありません。
デフォルト値以外の意味のありそうな値が設定されている場合は、経緯を調査する事をお勧めします。
CPENABLE
CPENABLE 設定のチューニングについて詳しくは、IBM Techdocsの「CPENABLE Recommendations for IBM Z and z/OS」を参照してください。
z/OS 3.2以降では「CPENABLE=SYSTEM」がデフォルトになりました。これにより、z/OSがCPUモデルに応じて適切な値を設定します。
Techdocsの資料にもある通り、CPENABLEは、I/O割り込み命令が複数CPの命令キャッシュを使用する事を避ける目的で実装されましたが、CPUキャッシュが大きくなりつつある現状では、個人的に効果には疑問符が付きます。コンピュータの一般論として、I/O周りはまだまだチューニングの余地がありますので、z/OS 3.2以降では「CPENABLE=SYSTEM」を設定する事をお勧めします。z/OS 3.1以前では、Techdocsに記載の通りの設定値としておくのが無難です。
HIPERDISPATCH
デフォルト: YES
HiperDispatch機能が登場したばかりの頃は、CP数が少ない場合は性能向上効果が限定的なため、現行踏襲とする意図で「HIPERDISPATCH=NO」を設定したシステムもあると思います。
現在では、CPU使用率の増減が大きい複数LPAR間で自動的にCP数を変更する目的や、IFAHONORPRIORITYやMT_ZIIP_MODE、zIIPブースト等、「HIPERDISPATCH=YES」が新機能の前提となるケースが増えてきました。
また、元々のCPUキャッシュ効率化の意味でも、CPUキャッシュの重要性が高まっている現状では、少しでもキャッシュ効率を高める方向に設定すべきと考えます。
CP数を固定したい等の要件が無ければ、デフォルトのYESを受け入れることをお勧めします。
RMPTTOM
値の範囲: 1000 から 999999 ミリ秒
デフォルト:
3000 (ユニプロセッサー速度が 100 MIPS を超えるシステムの場合)
1000 (ユニプロセッサー速度が 100 MIPS 以下のシステムの場合)
「MIPS」で語っているあたり、古いパラメータである事は想像に難くないと思います。
RMPTTOMは「SRM呼び出し時間間隔制御」を調整するものです。
(SRM呼び出し時間間隔の計算方法は、このあたりを熟読すれば分かるかもしれませんが、ここには記載しません。)
古いデフォルト値(1000等)を設定している場合は、CPU性能が高い事によりSRM呼び出し時間間隔が短くなりすぎて、余計なオーバーヘッドを発生させる可能性があります。
僅かなオーバーヘッド増加に気付くのは難しいのが実情ですが、塵も積もればなんとやら、0.1%のオーバーヘッドでも何年間も絶えず影響し続けたと考えれば、なかなかのものです。
個人的には、現状のデフォルト値でも最新のCPU性能に追いついていないと思っています。各ユーザーがチューニングを考えるものでも無いため、いずれはCPENABLEのように「=SYSTEM」が登場するか、パラメータ自体廃止される方向と予想しています。