このパネルには、コンパイル済みオブジェクトのパフォーマンスを改善および報告するオプションが入っています。
*CMDDFT 設定およびプッシュボタン・ヘルプの説明については、 ダイアログの一般ヘルプ を参照してください。
- パフォーマンス収集の使用可能化
- モジュールまたはプログラム中にパフォーマンス・データ測定コードを生成する必要があるかどうかを指定します。収集されたデータは、システムのパフォーマンス測定ツールによって使用し、アプリケーションのパフォーマンスをプロファイルできます。パフォーマンス測定コードを追加すると、オブジェクトが少し大きくなり、パフォーマンスに影響する可能性があります。
このフィールドでは次のいずれかの値を選択できます。
- *CMDDFT
- ユーザーのシステムに現在デフォルトとして設定されているパフォーマンス収集を参照します。
- *PEP
- パフォーマンス統計が収集されるのは、プログラム入り口プロシージャーの入り口点および出口点だけです。アプリケーションの全般的なパフォーマンス情報を収集したい場合には、この値を選択します。このサポートは、前に
TPST ツールで提供されたサポートと同じです。
- *ENTRYEXIT *NONLEAF
- パフォーマンス統計は、リーフ・プロシージャーでないすべてのプログラム・プロシージャーの入り口点および出口点で収集されます。これにはプログラム
PEP
ルーチンが入っています。アプリケーションで他のルーチンを呼び出すルーチンのパフォーマンス情報を収集したい場合には、この値を選択します。
- *ENTRYEXIT *ALLPRC
- パフォーマンス統計は、リーフ・プロシージャーを含むすべてのプログラム・プロシージャーの入り口点および出口点で収集されます。これにはプログラム
PEP
ルーチンが入っています。すべてのルーチンでパフォーマンス情報を収集したい場合、およびユーザーのアプリケーションによって呼び出されるすべてのプログラムが
*PEP 、 *ENTRYEXIT 、または *FULL
パフォーマンス・データ測定オプションでコンパイルされたことを知っている場合には、この値を選択します。ユーザーのアプリケーションがパフォーマンス測定に使用可能では
ない他のプログラムを呼び出すと、リソースが実際に使用される場所の判別を難しくさせるアプリケーションに対して、パフォーマンス測定ツールはリソースの使用を賦課します。
- *FULL *NONLEAF
- パフォーマンス統計は、リーフ・プロシージャーでないすべてのプロシージャーの入り口点および出口点で収集されます。また、外部プロシージャーに対する各呼び出しの前後にも統計が収集されます。
- *FULL *ALLPRC
- パフォーマンス統計は、リーフ・プロシージャーを含むすべてのプログラム・プロシージャーの入り口点および出口点で収集されます。また、外部プロシージャーに対する各呼び出しの前後にも統計が収集されます。ユーザーのアプリケーションが
*PEP 、 *ENTRYEXIT 、または *FULL
パフォーマンス・データ測定オプションのいずれかでコンパイルされていない他のプログラムを呼び出す場合には、この値を選択します。この値によって、これらのプログラムがパフォーマンス測定に使用不能の場合であっても、ユーザー・アプリケーションが使用するリソースと呼び出すプログラムが使用するリソースを区別できます。このオプションは最も高コストですが、アプリケーションの各種プログラムを選択的に分析できます。
- パフォーマンス・オプション
- 浮動小数点計算
- このチェック・ボックスを選択すると、コンパイラーは浮動小数点計算属性を設定して浮動小数点計算の
ANSI セマンティクスでコンパイルします。
このチェック・ボックスを選択
しない場合には、計算属性が設定されません。ユーザーのプログラムに浮動小数点計算がない場合にだけこれを使用してください。
- メモリー内のストリング
- このチェック・ボックスを選択すると、コンパイラーはストリングを読み取り専用メモリーに入れる場合があります。選択しない場合には、ストリングは書き込み可能メモリーに入れなければなりません。
- インライン・オプション
- このグループのオプションによって、コンパイラーがインライン関数呼び出しを試みる方法を定義できます。関数をインラインすると、呼び出しのシステム・オーバーヘッドが除去され、プログラム最適化の実行に役立てることができます。何回も呼び出される小さい関数はインラインのよい候補です。
- インライン
- このチェック・ボックスを選択すると、コンパイラーはコンパイル単位の関数をインラインしようと試みます。このオプションは、デバッグ・ビュー・リストを要求するためにデバッグ・オプション・パネル上のデバッガー・ビュー選択も使用する場合には無視されます。また、このチェック・ボックスを選択すると、次の制御も使用可能になります。
- 自動インライン
- このチェック・ボックスを選択しない場合には、 #pragma
inline
ディレクティブで明示的にマークされた関数だけがインラインするものと見なされます。
このチェック・ボックスを選択する場合には、関数がインラインする必要があるかどうかをインライナーが自動的に判別します。指定のしきい値限界に適合するすべての関数は、
#pragma noinline
ディレクティブで明示的にマークされたものを除いて、自動非インラインの候補です。次の
2 つの制御はしきい値限界を指定します。
- インライン関数の最大サイズ
- 自動インラインの候補である関数の最大サイズを指定します。インラインは、関数の実行可能コードに対するサイズのプロポーショナルである抽象コード単位のサイズを測ります。このフィールドでは次のいずれかの値を選択できます。
- *CMDDFT
- ユーザーのシステムに現在デフォルトとして設定されている最大サイズを参照します。
- 250
- しきい値サイズを 250 に指定します。
- *NOLIMIT
- プログラムの最大サイズとしてしきい値を定義します。
- 1-65535
- しきい値サイズを 1 〜 65535 に指定します。
- 関数の最大サイズ
- 自動インラインが停止する前に関数を大きくすることができる最大相対サイズを指定します。
- *CMDDFT
- ユーザーのシステムに現在デフォルトとして設定されている最大サイズ限界を参照します。
- *NOLIMIT
- プログラムの最大サイズとして限界を定義します。システム限界が見つかる可能性があります。
- 2000
- サイズ限界を 2000 に指定します。
- 1-65535
- サイズ限界を 1 〜 65535 に指定します。
- インライナー報告書
- このチェック・ボックスを選択すると、インライナー報告書が作成されます。
- *CMDDFT
- インライナー報告書は、ユーザー・システムのデフォルトとして現在設定されているインライナー設定に従って生成されます。
- *NO
- インライナー報告書は、生成されません。
- *YES
- インライナー報告書が生成されます。
- 注:
- インライナー報告書を表示するには、コンパイラー・リストの作成をコンパイラーに指示することも必要です。このようにするには、「リスト表示」コンパイラー・オプション・パネルの「ソース・リスト・オプション」チェック・ボックスを使用可能にしてください。
(C) Copyright IBM Corporation 1992, 2005. All Rights Reserved.