next up previous contents
Next: Libraries Up: HPF_CRAFT Functional Summary Previous: Barrier Removal

Serial Regions

It is often useful to enter a region where only one task is executing. This is particularly useful for certain types of I/O. To facilitate this, two directives are provided. In addition, one may optionally attach a COPY clause to the END MASTER directive which specifies the private data items whose values should be broadcast to all processors. The syntax of this directive is:

!HPF$ MASTER

sequential region

...

!HPF$ END MASTER [, COPY( var_1 [, var_2, ..., var_n ])]

where var is SYMMETRIC private data to be copied to the same named private data on other processors.

If a routine is called within a serial region, the routine executes serially; there is no way to get back to parallel execution within the routine. All explicitly mapped data is accessible from within routines called in a serial region, but a routine called from within a serial region cannot allocate explicitly mapped data or remap data. All processors must participate in the invocation of the serial region. Transfer of control into or out of a serial region is not permitted.