Chapter 6 |
6
|
Using Parallel Compiler Directives
|
6.1
|
OpenMP Fortran API Compiler Directives
|
6.1.1
|
Compiler Command Line Option
|
6.1.2
|
Format for OpenMP Fortran API Directives
|
6.1.2.1
|
Directive Prefixes
|
6.1.2.2
|
Conditional Compilation Prefixes
|
6.1.3
|
Directive Summary Descriptions
|
6.1.4
|
The Parallel Processing Thread Model
|
6.1.5
|
Controlling the Data Environment
|
6.1.5.1
|
Privitizing Named Common Blocks
|
6.1.5.2
|
Controlling Data Scope Attributes
|
6.1.6
|
Parallel Region Construct
|
6.1.7
|
Worksharing Constructs
|
6.1.7.1
|
DO and END DO directives
|
6.1.7.2
|
SECTIONS, SECTION, and END SECTIONS Directives
|
6.1.7.3
|
SINGLE and END SINGLE Directives
|
6.1.8
|
Combined Parallel/Worksharing Constructs
|
6.1.8.1
|
PARALLEL DO and END PARALLEL DO Directives
|
6.1.8.2
|
PARALLEL SECTIONS and END PARALLEL SECTIONS Directives
|
6.1.9
|
Synchronization Constructs
|
6.1.9.1
|
ATOMIC Directive
|
6.1.9.2
|
BARRIER Directive
|
6.1.9.3
|
CRITICAL Directive
|
6.1.9.4
|
FLUSH Directive
|
6.1.9.5
|
MASTER Directive
|
6.1.9.6
|
ORDERED Directive
|
6.2
|
DIGITAL Fortran Parallel Compiler Directives
|
6.2.1
|
Compiler Command Line Option
|
6.2.2
|
Format for DIGITAL Fortran Parallel Directives
|
6.2.2.1
|
Directive Prefixes
|
6.2.3
|
Directive Summary Descriptions
|
6.2.4
|
The Parallel Processing Thread Model
|
6.2.5
|
Controlling the Data Environment
|
6.2.5.1
|
Privitizing Named Common Blocks
|
6.2.5.2
|
Controlling Data Scope Attributes
|
6.2.6
|
Parallel Region Construct
|
6.2.7
|
Worksharing Constructs
|
6.2.7.1
|
PDO and END PDO Directives
|
6.2.7.2
|
PSECTIONS, SECTION, and END PSECTIONS Directives
|
6.2.7.3
|
SINGLE PROCESS and END SINGLE PROCESS Directives
|
6.2.8
|
Combined Parallel/Worksharing Constructs
|
6.2.8.1
|
PARALLEL DO and END PARALLEL DO Directives
|
6.2.8.2
|
PARALLEL SECTIONS and END PARALLEL SECTIONS Directives
|
6.2.9
|
Synchronization Constructs
|
6.2.9.1
|
BARRIER Directive
|
6.2.9.2
|
CRITICAL SECTION and END CRITICAL SECTION Directives
|
6.2.10
|
Specifying a Default Chunk Size
|
6.2.11
|
Specifying a Default Schedule Type
|
6.3
|
Decomposing Loops for Parallel Processing
|
6.3.1
|
Directed Decomposition
|
6.3.1.1
|
Resolving Dependences Manually
|
6.3.1.2
|
Coding Restrictions
|
6.3.1.3
|
Manual Optimization
|
6.3.1.4
|
Adjusting the Run-Time Environment
|
6.4
|
Calls to Programs Written in Other Languages
|
6.5
|
Compiling, Linking, and Running Parallelized Programs
|
6.6
|
Debugging Parallelized Programs
|
6.6.1
|
Parallel Regions
|
6.6.2
|
Shared Variables
|
Chapter 7 |
7
|
DIGITAL Fortran 90 Input/Output (I/O)
|
7.1
|
Logical I/O Units
|
7.2
|
Types of I/O Statements
|
7.3
|
Forms of I/O Statements
|
7.4
|
Types of Files and File Characteristics
|
7.4.1
|
File Organizations
|
7.4.2
|
Internal Files and Scratch Files
|
7.4.3
|
Record Types, Record Overhead, and Maximum Record Length
|
7.4.3.1
|
Portability Considerations of Record Types
|
7.4.3.2
|
Record Overhead
|
7.4.3.3
|
Maximum Record Length
|
7.4.4
|
Other File Characteristics
|
7.5
|
File Operations: OPEN, INQUIRE, CLOSE Statements
|
7.5.1
|
Opening Files: The OPEN Statement
|
7.5.1.1
|
Using Preconnected Standard I/O Files
|
7.5.1.2
|
OPEN Statement Specifiers
|
7.5.1.3
|
Methods to Specify the Unit, File Name, and Directory
|
7.5.1.4
|
Accessing Files: Implied and Explicit File and Pathnames
|
7.5.1.5
|
How DIGITAL Fortran 90 Applies a Default Pathname and File Name
|
7.5.1.6
|
Coding File Locations in an OPEN Statement
|
7.5.1.7
|
Using Environment Variables
|
7.5.2
|
Obtaining File Information: The INQUIRE Statement
|
7.5.2.1
|
Inquiry by Unit
|
7.5.2.2
|
Inquiry by File Name
|
7.5.2.3
|
Inquiry by Output Item List
|
7.5.3
|
Closing a File: The CLOSE Statement
|
7.6
|
Record Operations
|
7.6.1
|
Record I/O Statement Specifiers
|
7.6.2
|
Record Access Modes and File Sharing
|
7.6.2.1
|
Sequential Access
|
7.6.2.2
|
Direct Access
|
7.6.2.3
|
Limitations of Record Access by File Organization and Record Type
|
7.6.2.4
|
File Sharing
|
7.6.3
|
Specifying the Initial Record Position
|
7.6.4
|
Advancing and Nonadvancing Record I/O
|
7.6.5
|
Record Transfer
|
7.6.5.1
|
Input Record Transfer
|
7.6.5.2
|
Output Record Transfer
|
7.7
|
User-Supplied OPEN Procedures: the USEROPEN Specifier
|
7.7.1
|
Restrictions of Called USEROPEN Functions
|
7.7.2
|
Example USEROPEN Program and Function
|
7.8
|
Format of DIGITAL Fortran 90 Record Types
|
7.8.1
|
Fixed-Length Records
|
7.8.2
|
Variable-Length Records
|
7.8.3
|
Segmented Records
|
7.8.4
|
Stream File Data
|
7.8.5
|
Stream_CR and Stream_LF Records
|