| United States-English |
|
|
|
![]() |
Getting Started as an MPE/iX Programmer Programmer's Guide: HP 3000 Computer MPE/iX Computer SystemsChapter 5 Optimizing a Program |
|
Table of Contents
The Optimizer is a program that is an integrated part of an MPE/iX compiler. It is available to use with HP C/iX, HP COBOL II/XL, HP FORTRAN 77/iX, and HP Pascal/iX. When you compile a program, you can select an optimizer option that will use the MPE/iX Optimizer to improve the code. This chapter provides an overview of:
For detailed information on how each compiler optimizes and actions necessary when an optimized program fails, refer to the following manuals in the Language Series:
The MPE/iX Optimizer can help a program take full advantage of the 900 Series HP Precision Architecture (HP-PA) in the following ways:
Efficient instruction scheduling avoids hardware interlocks and eliminates branch delay slots, fully utilizing fast instruction cycle time of the 900 Series. Hardware interlock occurs when two pipelined instructions both require the same resource or when one instruction requires a result of a previous instruction that has not completed. With a graph of program flow to reveal instruction dependencies, instruction scheduling can attempt to avoid hardware interlocks. On the 900 Series, a branch does not take effect until the second machine cycle after the branch instruction. The instruction immediately after a branch instruction is called the delay slot. Even when you do not select optimization, the compiler tries to schedule a useful instruction in the delay slot. However, the MPE/iX Optimizer does a better job of branch delay scheduling and may be able to completely eliminate some branches. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||