Next: Active Processor Sets
Up: HPF Approved Extensions
Previous: Characteristics of Procedures
Modern parallel machines achieve their best performance if operations
are performed by many processors with each processor accessing its own
data. As such, the highest-performing programs will be those for
which the computation partitioning and data mapping work in synergy.
Three approved extensions provide the means to exploit this symmetry:
- The ON directive partitions computations among the
processors of a parallel machine (much as the DISTRIBUTE
directive partitions the data among the processors).
- The RESIDENT directive asserts that certain data
accesses do not require interprocessor data movement for their
implementation.
- The TASK_REGION construct provides the means to create
independent coarse-grain tasks, each of which can itself execute a
data-parallel (or nested task-parallel) computation.
All three constructs are related to the concept of active
processors, introduced in
Section 9.1 below. By assigning
computations to processors, the ON directive
(Section 9.2) defines the active processors. The
RESIDENT directive (Section 9.3)
uses this set and the information given by mapping directives in its
assertions of locality. Finally, the TASK_REGION construct
(Section 9.4) builds its tasks from active
processor sets.