Prism 6.0 User's Guide

Entering Prism

To enter Prism, log into a system running Sun HPC ClusterTools 3.0 and issue the prism command just as you would any program. For example, issuing the prism command at your Solaris prompt,

% prism

starts Prism on your login node in a Sun HPC System. Prism executes from /opt/SUNWhpc/bin.

Prism performs the functions of the bsub command without requiring you to specify bsub when launching Prism. In other words, it is unnecessary (and redundant) to launch Prism as an argument to bsub, since Prism invokes bsub internally. Launching Prism as an argument to bsub causes too many instances of Prism to be launched. For complete information on bsub, see the LSF Batch User's Guide.

You can specify other options on the prism command line. For example, you can specify the -C option to bring up Prism in commands-only mode, or the -CX option (from an Xterm) to bring it up in commands-only mode, but be able to send the output of certain commands to X windows.

Unless you specify additional arguments, such as -C for the non-graphical commands-only mode of Prism, when Prism starts you see the main window shown in Figure 1-1 in Chapter 1, The Prism Environment.

Prism Options

This section describes several aspects of using Prism's commands from the Solaris command line.

Loading Programs

If you specify the name of an executable (single process) program on the command line, that program is automatically loaded into Prism. For example,

% prism primes.x 

When you execute the program, it will execute on the node on which Prism is running.

If you are loading a message-passing program, you must specify a number of processes to run, even when the message-passing program runs on a single process. Use the -n option to specify the number of processes. For example,

% prism -n 4 primes.x

See " Methods of Specifying MP Prism Options", for more information about launching MP Prism. See " Loading a Program", for more information about loading a program.

Attaching to a Process

You can also attach to a process or message-passing job that is currently running. However, Prism must run on the same system on which the process is running (or the same cluster on which the job is running).

See " Attaching to a Running Process" for more information about attaching to and detaching from a running serial process or a message-passing job.

Working With a Core File

You can associate a core file with a program. Add the name of the core file after the name of the executable program.

See " Associating a Core File With a Loaded Program" for more information about core files.

Specifying Commands-Only Prism

Use the -C option to bring up Prism in commands-only mode. This allows you to run Prism on a terminal with no graphics capability.

Use the -CX option to bring up a commands-only Prism that lets you redirect the output of certain Prism commands to X windows.

See Appendix A, Commands-Only Prism for information about commands-only Prism.

Specifying X Toolkit Options

You can include most standard X toolkit command-line options when you issue the prism command; for example, you can use the -geometry option to change the size of the main Prism window. See your X documentation for information on these options. Also, note these limitations:

X toolkit options are ignored if you use -C to run Prism in commands-only mode.

Specifying Input and Output Files

You can use the form

% prism < input-file

to specify a file from which Prism is to read and execute commands upon startup. Similarly, use the form

% prism > log-file

to specify a file to which Prism commands and their output are to be logged.

If you have created a .prisminit initialization file, Prism automatically executes the commands in the file when it starts up. See " Initializing Prism" for information on .prisminit.

To enter MP Prism, issue the prism command with the -n option, specifying the number of client MP Prism processes you want to start. Use the value 0 to specify that you want to run on all available nodes, one process per node.

Methods of Specifying MP Prism Options

The major differences between starting Prism to work on a serial program and starting MP Prism are:

  1. You must specify a number of processes to run, even when the message-passing program runs on a single process. Use the -n option to specify the number of processes.

  2. You are actually starting multiple Prism processes, in a client/server model:

You can specify where you want both Host Prism and the message-passing processes (along with their associated MP Prism processes) to run. You can do this either explicitly or by using defaults.

Specifying Where Host Prism Is to Run

If you simply issue the prism command with the -n argument and an integer value, MP Prism starts Host Prism on the node to which you are logged in. For example:

% prism -n 4

See "Entering Prism" for more information on starting Prism, and see the Sun MPI 4.0 Programming and Reference Guide for more information on starting Sun HPC programs in general.

Specifying MP Prism Command-line Options

If you are in MP Prism, you can also use the Prism options listed below to specify where you want the message-passing processes and their associated MP Prism processes to run.

% prism -n 4 -W a.x

starts four processes, regardless of the number of processors.

% prism -n 4 -W -bsubargs '-m argos' a.x

Here, you requested four processes to be launched on host argos, wrapping if necessary.

% prism -n 4 -W -mprunargs '-p delos' a.x

Here, you requested four processes to be launched on partition delos, wrapping if necessary.


Note -

If the bsub option itself uses quotation marks, refer to the documentation for your shell program for the syntax for handling quotes.


Specifying Environment-Specific Options After Launching Prism

Sun HPC ClusterTools 3.0 supports two run-time environments, Platform Computing's Load Sharing Facility (LSF), and the Cluster Runtime Environment (CRE). Prism runs on both environments. If you want to determine which environment is in effect, execute the script /opt/SUNWhpc/etc/hpc_rte from a shell prompt. For example:

% hpc_rte
lsf

Once you have entered Prism, you can issue environment-specific commands to specify any bsub (when using the LSF environment) or mprun (when using the CRE environment) options that you want to apply to your message-passing program.

Prism stores these options, then applies them when you start up a multiprocess program. Specifying the setting of a bsub option via the bsubargs command, or an mprun option via the mprunargs command, overrides the setting of the same option you have established via the prism command line. If it is an option that has otherwise not been specified, it is added to the existing settings.


Note -

The strings given to bsubargs or mprunargs should not contain the -I, -Ip, or -n flags, because Prism internally generates values for them, and the results will be undefined.


Using bsubargs

To specify a preferred host by name after you have entered Prism in the LSF environment, use the bsubargs command. For example:

(prism all) bsubargs -m argos

To remove any existing bsub options you have specified, issue the command

(prism all) bsubargs off

Within Prism, this removes options you have set via the command line.

Issuing the bsubargs command with no options shows the current bsub options.


Note -

The bsubargs command accepts a single string argument. Since this argument is issued within Prism, using the shell-specific syntax appropriate for the -bsubargs option causes errors. Also, each time that you issue the bsubargs command, the previously specified bsub options are replaced. To keep a list of options in effect, you must specify the entire list whenever you change any item in that list.


Using mprunargs

To specify a preferred partition by name after you have entered Prism in the CRE environment, use the mprunargs command. For example:

(prism all) bsubargs -p delos

To remove any existing mprun options you have specified, issue the command

(prism all) mprunargs off

Within Prism, this removes options you have set via the command line.

Issuing the mprunargs command with no options shows the current mprun options.


Note -

The mprunargs command accepts a single string argument. Since this argument is issued within Prism, using the shell-specific syntax appropriate for the -mprunargs option causes errors.