此面板包含了改进和报告有关编译对象的性能的选项。
有关 *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
伪指令明确标注的函数,所有满足指定的阈值限制的函数都是自动嵌入的候选项。下列两个控件指定了阈值限制:
- 嵌入函数的最大大小
- 指定可以是自动嵌入候选项的函数的最大大小。嵌入器将测量“抽象代码单元”(Abstract
Code
Unit)中的大小,它的大小与函数中的可执行代码相当。可选择下列某一个值填入该字段中:
- *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.