MIPSpro™ 7 Fortran 90 Commands and Directives Reference Manual

Document Number: 007-3696-003

Front Matter

| List of Figures | List of Tables |


Table of Contents

New Features

About This Manual
Related MIPSpro 7 Fortran 90 Publications
MIPSpro 7 Fortran 90 Messages
MIPSpro 7 Fortran 90 Man Pages
Related Fortran Publications
Related Publications
Obtaining Publications
Conventions
Reader Comments

1. Introduction
The f90(1) Command
The MIPSpro 7 Fortran 90 Programming Environment

2. Invoking MIPSpro 7 Fortran 90
-64, -n32
-alignn
-ansi
-apo, -apokeep, -apolist
-auto_use module_name,module_name ...
-c
-C, -check_bounds
-chunk=integer
-cif
-coln
-cord
-cpp
-cray_mp
-dn
-Dvar=def,var=def...
-DEBUG:...
-default64
-E
-extend_source
-fbfile
-fixedform
-flist
-FLIST:...
-freeform
-ftpp
-fullwarn
-Gnum
-gdebug_lvl
-help
-in
-Idir
-ignore_suffix
-INLINE:...
-ipa
-IPA:...
-keep
-KPIC
-llibrary
-Ldirectory
-LANG:...
-LIST:...
-listing
-LNO:...
-macro_expand
-MDupdatefile
-mipsn
-mp
-MP:...
-mplist
-mp_schedtype=mode
-noappend
-nocpp
-noextend_source
-nostdinc
-oout_file
-Olevel
-OPT:...
-P
-pad_char_literals
-pfa, -pfakeep, -pfalist
-rprocessor
-rreal_spec
-S
-static
-static_threadprivate
-TARG:...
-TENV:...
-u
-Uvar
-version
-warg
-Wl,opt,arg,opt,arg...
-woffnum
-xdirlist
--
file.suffix90file.suffix90...

3. General Directives
Using Directives
LNO Directives
Argument Aliasing Directives (ASSERT ARGUMENTALIASING and ASSERT NOARGUMENTALIASING)
Symbol Storage Directives
Inlining and IPA Directives (INLINE, NOINLINE, IPA, and NOIPA)

4. OpenMP Fortran API Multiprocessing Directives
Using Directives
Conditional Compilation
Parallel Region Constructs (PARALLEL and END PARALLEL Directives)
Work-sharing Constructs
Combined Parallel Work-sharing Constructs
Synchronization Constructs
Data Environment Constructs
Directive Binding
Directive Nesting
Analyzing Data Dependencies for Multiprocessing
Work Quantum
Cache Effects and Optimization

5. Parallel Processing on Origin Series Systems
Performance Tuning on Origin Series Systems
Directives for Performance Tuning
Using the Data Distribution Directives
Examples

6. CF90 Directives
Using Directives
Check Array Bounds: BOUNDS and NOBOUNDS
Specify Source Form: FREE and FIXED
Create Identification String: ID
Disregard Dummy Argument Type, Kind, and Rank: IGNORE_TKR
Ignore Vector Dependencies: IVDEP
External Name Mapping Directive: NAME
Inhibit Loop Interchange: NOINTERCHANGE
Determine Register Storage: NOSIDEEFFECTS
Designate a Nest to Task: PREFERTASK
Tasking Directives: TASK and NOTASK
Unroll Loops: UNROLL and NOUNROLL

7. Source Preprocessing
General Rules
Directives
Predefined Macros
Command Line Options

8. Interlanguage Calling
External and Public Names
Correspondence of Fortran and C Data Types
How Fortran Passes Arguments
Calling Fortran from C
Calling C from Fortran
Calling Assembly Language from Fortran

9. The Auto-Parallelizing Option (APO)
f90(1) Command Line Options That Affect APO
Files
Running Your Program
Troubleshooting Incomplete Optimizations
Compiler Directives

A. Libraries
Miscellaneous Library Routines
Library Functions
Compatibility with sproc(2)

B. Debugging and Profiling Multiprocessed Programs
Setting Up Your Environment
Profiling a Parallel Fortran Program
Debugging Parallel Fortran

C. Autotasking Directives (Outmoded)
Using Directives
Concurrent Blocks: CASE and ENDCASE
Declare Lack of Side Effects: CNCALL
Mark Parallel Loop: DOALL
Mark Parallel Loop: DOPARALLEL and ENDDO
Critical Region: GUARD and ENDGUARD
Specify Maximum Number of CPUs for a Parallel Region: NUMCPUS
Mark Parallel Region: PARALLEL and ENDPARALLEL
Declare an Array with No Repeated Values: PERMUTATION
Examples

D. Multiprocessing Directives (Outmoded)
Migrating to OpenMP
Using Directives
Loop-level Multiprocessing Directives
Local Common Blocks
PCF Directives