Compaq Fortran supplies parallel directives that you can use for compatibility with older programs that were written for parallel execution.
This section describes the following parallel directives:
Synchronizes all the threads in a team.
Sets a default chunksize to adjust the number of iterations assigned to a thread.
Copies the values of listed data objects from the master thread to PRIVATE data objects of the same name in slave threads.
Restricts access to a block of code to only one thread at a time.
Specifies the availability of named common blocks.
Sets a default run-time scheduling type.
Defines a parallel region.
Defines a parallel region that contains a single DO directive.
Defines a parallel region that contains a single SECTIONS directive.
Specifies that the iterations of the immediately following DO loop must be executed in parallel.
Specifies that the iterations of the immediately following DO loop must be executed in parallel.
Specifies a block of code to be divided among threads in a team (a worksharing area).
Specifies a block of code to be executed by only one thread in a team.
Makes named common blocks private to a thread but global within the thread.
The Compaq Fortran parallel directives can be grouped into the categories shown in Table 15-4.
Category | Description |
---|---|
Parallel region | Defines a parallel region: PARALLEL |
Work-sharing | Divide the execution of the enclosed block of code among the members of the team that encounter it: PDO, PSECTIONS, SINGLE PROCESS |
Combined parallel work-sharing | Shortcut for denoting a parallel region that contains only one work-sharing construct: PARALLEL DO and PARALLEL SECTIONS |
Synchronization | Provide various aspects of synchronization; for example, access to a block of code, or execution order of statements within a block of code: BARRIER and CRITICAL SECTION |
Data Environment | Control the data environment during the execution of parallel constructs: COPYIN, INSTANCE, TASKCOMMON |
Execution Defaults | Specify a default chunk or schedule type: CHUNK and MP_SCHEDTYPE |
For details on how to use these directives, see your user manual.