Technical data
#pragma Directives [3]
when used in conjunction with the vector or
chunksize arguments) will be performed by the
master processor after all the other iterations (or
partitions) have been completed. This argument
ensures that all private and value variables
with values that are set inside the loop will have
the values produced by the final loop iteration
when the loop is exited; this is not ensured
by default. The savelast argument has no
parameters. This argument can be used only with
stand-alone task loops (see Section 3.8.4, page 70).
3.9 Multi-streaming Processor (MSP) Directives (Cray SV1 series systems only)
The following subsections describe the multi-streaming processor (MSP)
optimization directives.
Note: The MSP is an optional feature. To determine whether MSP is enabled
on your system, enter the sysconf(1) command at your system prompt. The
HARDWARE output field contains the NMSP= field that shows the number of
MSPs configured. For more information, see the sysconf(1) man page.
The MSP directives work with the -h streamn command line option to
determine whether parts of your program are optimized for the MSP. The level of
streaming must be greater than 0 in order for these directives to be recognized.
For more information on the -h streamn command line option, see Section
2.9.1, page 18.
The MSP #pragma directives are as follows:
• #pragma nostream (see the following section)
• #pragma preferstream (see Section 3.9.2, page 86)
3.9.1 #pragma nostream Directive (Cray SV1 series Systems Only)
Scope: Local
The #pragma nostream directive directs the compiler to not perform MSP
optimizations on the loop that immediately follows the directive. It overrides any
other MSP-related directives as well as the -h streamn command line option.
The format of this directive is as follows:
S–2179–36 85










