パフォーマンス上のヒント
- REXX プロシージャーを FASTREXX に適したものにする
- 可能なところはどこでも FASTREXX を使用して要件をコーディングする方法を探してください。*FASTREXX CHECK または *FASTREXX NORUN ステートメントを使用して、既存のプロシージャーが FASTREXX に適しているかどうか確認するため、これらのプロシージャーをテストすることができます。
- パフォーマンスが重要なジョブで DFSORT を使用する
- DFSORT 処理は、FASTREXX より効率的で、REXX よりはるかに効率的です。プロシージャー用の FASTREXX、REXX、および DFSORT からの選択を参照してください。
DFSORT と REXX ステートメントが混在の場合、最大の効率を得るには、以下に従います (該当する場合)。
- どちらでも同じ結果が得られる場合 REXX より優先して DFSORT を使用する。
- DFSORT INCLUDE または OMIT ステートメントを使用して、REXX の呼び出し回数を制限することによって、実行される REXX 処理の量を制限する。
- 複数出力ファイルを書き込む場合、REXX 書き込みステートメントではなく、DFSORT OUTFIL を使用する。
- 処理がより効率的になる場合には、データを通して 1 回のパスではなく 2 回のパスを使用できるように用意する。
- プロシージャーの REXX 部分を、可能な限り FASTREXX に適したものにする。
- REXX で EXIT を使用しない
- すべての REXX 処理を終了するには RETURN を使用します。EXIT ステートメントは使用しないでください。File Manager で使用される REXX で EXIT ステートメントを使用すると、CPU を過度に使用することになります。
- REXX コンパイラーでの実行
- コンパイルされた REXX は、インタープリットされた REXX よりも高速で実行します。しかし、File Manager はユーザーが File Manager 環境で実行するために準備した REXX を変更するため、事前にコンパイルした REXX コードを指定できません。この場合、REXX コンパイラー・ライブラリーの DD カードを準備することによって、実行する前に REXX をコンパイルするよう File Manager に指示します。このアプローチは、CPU の使用量と実行時間を少なくします。File Manager は、ユーザーが REXX コンパイラーが入っているデータ・セットを DD 名 FMNRXCMP に割り振ると、コンパイラーを実行します。例えば、バッチで、次の JCL DD ステートメントを使用します。
パネルからプロシージャーを実行する場合、コマンド行に TSO ALLOC コマンドを入力できます。例えば、次のようになります。//FMNRXCMP DD DSN=rexx.compiler.loadlib,DISP=SHR
TSO ALLOC DD(FMNRXCMP) DSN('rexx.compiler.loadlib') SHR
REXX コンパイラーは DFSORT 処理または FASTREXX 処理に影響を与えません。