IBM Power Systems 775 Manual page 126

For aix and linux hpc solution
Table of Contents

Advertisement

XLPGASOPTS
The PGAS runtime options affect debugging, performance, and program requirements. You
specify these runtime options with the XLPGASOPTS environment variable. You also specify
the runtime options on the command line with the prefix –xlpgas. This environment variable
must be set before you run an application. The syntax of the environment variable is shown in
Figure 2-4.
Figure 2-4 Environment variable syntax for XLPGASOPTS
The XLPGASOPTS environment variable accepts multiple colon-separated options.
An individual option also accepts an argument. The runtime_option_name is an option and
option_setting is an argument that is accepted by that option. The runtime_option_name is
one of the following options:
stackcheck=num | nostackcheck
stacksize=num
bind=auto | none | file=filename
Parameters
If the application is compiled by using -qupc=stackcheck, stackcheck=num | nostackcheck
controls the stack threshold checking at run time. In this parameter, num represents the stack
check threshold in terms of a percentage of the total stack size.
If a thread exceeds its stack check threshold for the first time, the executable file issues a
warning message on that thread. The stack check warning message is displayed only once
for one thread, even if the stack check threshold of the thread is exceeded more than once.
The default value for num is 80%. If any thread exceeds its local stack size, the executable file
issues a message and immediately stops the execution of the application when possible.
If the application is compiled by using -qupc=stackcheck, nostackcheck prevents the issuing
of the runtime warning messages when the stack check threshold is exceeded. The option
nostackcheck only turns off the warnings, it does not stop the stack overflow message or
program termination.
Important: The option stackcheck=num takes effect only when you specify
-qupc=stackcheck at compile time.
To remove the instrumentation of -qupc=stackcheck, you must recompile the program without
specifying -qupc=stackcheck or recompile the program with -qupc=nostackcheck. Therefore,
stacksize=num specifies the minimal amount of space in bytes (num) that is allocated to the
stack that is used by a thread. If the requested stack size is too small, the operating system
overrides the requested stack size with the minimal stack size that it allows. If you do not
specify the option, the default stack size for each thread is at least 16 MB.
To get the actual stack size for a thread, use the function size_t xlupc_stacksize(). This
function is declared in the header file upc.h unless XLUPC_NO_EXT is defined before
including upc.h. XLUPC_NO_EXT, which is a macro that removes any IBM UPC extensions.
When this function is called, it returns the actual stack size that is allocated for the current
thread. Therefore, bind=auto | none | file=filename specifies whether and how threads bind to
112
IBM Power Systems 775 for AIX and Linux HPC Solution

Advertisement

Table of Contents
loading

Table of Contents