SGI Techpubs Library

IRIX 6.4  »  Books  »  Developer  »  
C Language Reference Manual
(document number: 007-0701-130 / published: 1999-05-21)    table of contents  |  additional info  |  download
find in page

Chapter 13. The Auto-Parallelizing Option (APO)


Note: APO is licensed and sold separately from the MIPSpro C/C++ compilers. APO features in your code are ignored unless you are licensed for this product. For sales and licensing information, contact your sales representative.

The Auto-Parallelizing Option (APO) enables the MIPSpro C/C++ compilers to optimize parallel codes and enhances performance on multiprocessor systems. APO is controlled with command line options and source directives.

APO is integrated into the compiler; it is not a source-to-source preprocessor. Although run-time performance suffers slightly on single-processor systems, parallelized programs can be created and debugged with APO enabled.

Parallelization is the process of analyzing sequential programs for parallelism and restructuring them to run efficiently on multiprocessor systems. The goal is to minimize the overall computation time by distributing the computational workload among the available processors. Parallelization can be automatic or manual.

During automatic parallelization, the compiler analyzes and restructures the program with little or no intervention by you. With APO, the compiler automatically generates code that splits the processing of loops among multiple processors. An alternative is manual parallelization , in which you perform the parallelization using compiler directives and other programming techniques.

APO integrates automatic parallelization with other compiler optimizations, such as interprocedural analysis (IPA), optimizations for single processors, and loop nest optimization (LNO). In addition, run-time and compile-time performance is improved.

For details on using APO command line options and source directives, see the MIPSpro C and C++ Pragmas manual.

C Language Reference Manual
(document number: 007-0701-130 / published: 1999-05-21)    table of contents  |  additional info  |  download

    Front Matter
    New Features
    About This Manual
    Chapter 1. An Overview of ANSI C
    Chapter 2. C Language Changes
    Chapter 3. Lexical Conventions
    Chapter 4. Meaning of Identifiers
    Chapter 5. Operator Conversions
    Chapter 6. Expressions and Operators
    Chapter 7. Declarations
    Chapter 8. Statements
    Chapter 9. External Definitions
    Chapter 10. Multiprocessing Directives
    Chapter 11. Multiprocessing Advanced Features
    Chapter 12. Parallel Programming on Origin Servers
    Chapter 13. The Auto-Parallelizing Option (APO)
    Appendix A. Implementation-Defined Behavior
    Appendix B. lint-style Comments
    Appendix C. Built-in Functions


home/search | what's new | help