HP C Programmer's Guide (92434-90009)

112 Chapter4
Optimizing HP C Programs
Parallel Execution
the HP-UX kernel's shmmax (shared memory maximum) configuration parameter if
necessary.
Warning Messages
Warning: could not use requested number of processes.
Using 1 process. (Parallel Library 311)
The parallel runtime library could not start the requested number of processes for use in
executing the program. Possible causes include exceeding the system limit on the number
of forked processes or setting the environment variable MP_NUMBER_OF_THREADS to an
out-of-bounds value.
NOTE
Warning messages 312 through 315 can indicate an error in the parallel
runtime library. If you get one of these messages, report it to your local HP
service representative.
Warning: trouble establishing cleanup handler.
Use kill(1) and ipcrm(1) to clean up. (Parallel Library 312)
The parallel runtime library could not establish a signal handler used for cleaning up in
the event of a terminating signal such as SIGTERM; see
signal
(5). If the program does
not exit normally it could leave behind unused processes and shared memory segments.
Warning: trouble establishing SIGCHLD handler. Program could
wait forever. (Parallel Library 313)
The parallel runtime library could not establish a signal handler that monitors the
unexpected termination of the processes used for parallel execution. If one of the processes
dies unnoticed (for example, because of a floating-point exception), the program could wait
forever for the process to complete. In this case you would have to use
kill
(1) to terminate
the program.
Warning: trouble removing "
filename
", used for file I/O output from
parallelized loop. (Parallel Library 314)
The parallel runtime system could not remove a temporary file. Remove the file with
rm
(1)
if necessary.
Warning: trouble freeing shared memory. Use ipcrm(1) to clean up.
(Parallel Library 315)
The parallel runtime system had trouble freeing shared memory. Use
ipcs
(1) to find
shared memory segments that the program could have left behind and
ipcrm
(1) to remove
them.
Informational Messages
Note: using only 1 process because program contains call to "
routine
".
(Parallel Library 411)
When starting up, the parallel runtime library checks to see whether the program contains
calls to system routines that could cause incorrect parallel execution. If the program calls
any disallowed routines, the runtime system runs the program on a single processor. If you
want the program to execute on multiple processors, you must eliminate the call to
routine
.