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.suffix90 file.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