Parallel Programming Guide for HP-UX Systems

MPI
Running
Chapter 232
+E2 Sets -1 as the value of.TRUE. and 0 as the value for FALSE. when returning
logical values from HP MPI routines called within Fortran 77 applications.
D Dumps shared memory configuration information. Use this option to get
shared memory values that are useful when you want to set the
MPI_SHMCNTL flag.
E[on|off] Function parameter error checking is turned off by default. It can be turned
on by setting MPI_FLAGS=Eon.
T Prints the user and system times for each MPI rank.
z Enables zero-buffering mode. Set this flag to convert MPI_Send and
MPI_Rsend calls in your code to MPI_Ssend, without rewriting your code.
MP_GANG MP_GANG enables gang scheduling on HP-UX systems only. Gang scheduling
improves the latency for synchronization by ensuring that all runable processes in a gang are
scheduled simultaneously. Processes waiting at a barrier, for example, do not have to wait for
processes that are not currently scheduled. This proves most beneficial for applications with
frequent synchronization operations. Applications with infrequent synchronization, however,
may perform better if gang scheduling is disabled.
Process priorities for gangs are managed identically to timeshare policies. The timeshare
priority scheduler determines when to schedule a gang for execution. While it is likely that
scheduling a gang will preempt one or more higher priority timeshare processes, the
gang-schedule policy is fair overall. In addition, gangs are scheduled for a single time slice,
which is the same for all processes in the system.
MPI processes are allocated statically at the beginning of execution. As an MPI process
creates new threads, they are all added to the same gang if MP_GANG is enabled.
The MP_GANG syntax is as follows:
[ON|OFF]
where
ON Enables gang scheduling.
OFF Disables gang scheduling.
For multihost configurations, you need to set MP_GANG for each appfile entry. Refer to the -e
option in “Creating an appfile” on page 42.
You can also use the HP-UX utility mpsched(1) to enable gang scheduling. Refer to the HP-UX
gang_sched(7) and mpsched(1) manpages for more information.
MPI_GLOBMEMSIZE MPI_GLOBMEMSIZE specifies the amount of shared memory allocated
for all processes in an HP MPI application. The MPI_GLOBMEMSIZE syntax is as follows: