C H A P T E R  9

Troubleshooting

This chapter discusses ways in which you can recognize and avoid potential difficulties when using the Prism environment. It is organized into the following sections:


Avoid Using the -xs Compiler Option

Loading code compiled with the -xs option can require long load times. The Prism environment does not require that you compile code with the -xs option.


Keep .o Files after Compilation

If you have not used -xs during compiling, do not move or delete the .o files of the program that you want to load into the Prism environment. If you move or delete .o files, the Prism environment can find no debugging information for the functions in those files, even though the final executable was compiled with the -g option.


Expect a Pause After Issuing the First run Command

The multiprocess mode of the Prism environment (MP Prism) may pause for an unexpectedly long time after you issue the run command. During this pause, the user interface is unresponsive. This pause is unavoidable and is due to the delay caused while loading either the LSF or CRE environment. The run command goes to completion.


Monitor Your Use of Color Resources

The Prism environment may issue messages indicating that it needs additional color resources. For example,

Can't allocate color for snow2

When that happens, shut down any unnecessary color applications and try again.

To reduce the likelihood of exhausting color resources, you can launch the Prism environment with the -install argument. This creates a private colormap for the Prism environment at startup.


Expect Only Stopped Processes to Be Displayed in the Where Graph

The Prism environment does not show all processes in the Where graph. The Where graph shows only the stacks of stopped processes.


Use Only the MP Mode of the Prism Environment to Load MPI Programs

Attempting to use the scalar mode of the Prism environment to run an MPI program can cause the Prism environment to abort the process and issue messages such as the following:

[unknown MPI_COMM_WORLD unknown] ERROR in MPI_Init: 
unclassified error: RTE_Init_lib: 
Job must be submitted to CRE: No such job
Aborting.

To run an MPI program, you must launch the MP mode of the Prism environment. You launch it by specifying a number of processes to run. Use the -n option to specify the number of processes. For example,

% prism -n 4 a.out

launches the MP mode of the Prism environment and loads a.out.


Verify That /opt/SUNWlsf/bin Is in Your PATH

If LSF is your default runtime environment and if the directory containing LSF executables is not set in your PATH variable, attempting to launch the MP mode of the Prism environment will fail. For example,

hpc-450-3 44 =>prism -n 0 &  
   [1] 26614
hpc-450-3 45 =>/opt/SUNWhpc/bin/prism: bsub: not found
   [1]    Exit 1               prism -n 0


MP Prism Environment Freezes on Startup

If you attempt to run the message-passing Prism environment in the background without specifying the -n flag to mprun, the Prism process hangs.

Once hung, you can either kill the Prism process manually from another terminal window using the mpkill command or put the Prism process in the foreground in your shell with the fg command, thereby releasing it from the freeze.

To run an MP Prism process in the background, add the -n flag to the mprun command line.

For example,

% mprun -n -np 4 prism &