应用程序调整
在花费大量的努力改善程序性能之前,使用本节中的技术有助于确定其性能可以改进到何种程度,并找到优化与调整将在程序的哪些方面带来最大益处。
通常,优化过程包括下面几个步骤:
- 某些调整涉及更改源代码,例如,对语句和表达式重新排序。 这种方法称为手动调整。
- 对于 FORTRAN 和 C 程序,优化预处理器可用来调整并在编译源代码之前对其另行转换。 这些预处理器的输出是经过优化的 FORTRAN 或 C 源代码。
- FORTRAN 或 C++ 编译器将源代码转换成一种中间语言。
- 代码生成器将中间代码转换成机器语言。 代码生成器可以优化最终的可执行代码而使其加速,这取决于所选的编译器选项。 首先通过手动调整或预处理,您可以增加这一步中执行的优化条件的数量。
有两种因素影响速度增加:
- 应用于程序的个别部分的优化条件数量
- 程序的那些部分在运行时的使用频率
如果单个例程执行大多数工作的话,加速该例程可能会使程序运行速度显著加快,另一方面,如果该例程极少调用并且无论如何都不会占用很长时间,那么它可能对总体性能不会有太大的改进。 在评估性能技术和数据时请牢记这一点,这样您便可以将精力集中在对您的工作最有价值的技术上。
有关这些方法的广泛讨论,请参阅 Optimization and Tuning Guide for XL Fortran, XL C and XL C++。另请参阅 高效程序设计和实现 以获取其他提示和技巧。