27.12.2014 Views

QLogic OFED+ Host Software User Guide, Rev. B

QLogic OFED+ Host Software User Guide, Rev. B

QLogic OFED+ Host Software User Guide, Rev. B

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4–Running <strong>QLogic</strong> MPI on <strong>QLogic</strong> Adapters<br />

<strong>QLogic</strong> MPI Details<br />

• When mpirun is run from the same node as MPI rank 0, all input piped to<br />

the mpirun command is redirected to rank 0.<br />

• When mpirun is not run from the same node as MPI rank 0, or if the input<br />

must be redirected to all or specific MPI processes, the -stdin option can<br />

redirect a file as standard input to all nodes (or to a particular node) as<br />

specified by the -stdin-target option.<br />

Environment for Node Programs<br />

TrueScale-related environment variables are propagated to node programs.<br />

These include environment variables that begin with the prefix IPATH_, PSM_,<br />

MPI_ or LD_. Some other variables (such as HOME) are set or propagated by<br />

ssh(1).<br />

NOTE:<br />

The environment variable LD_BIND_NOW is not supported for <strong>QLogic</strong> MPI<br />

programs. Not all symbols referenced in the shared libraries can be resolved<br />

on all installations. (They provide a variety of compatible behaviors for<br />

different compilers, etc.) Therefore, the libraries are built to run in lazy<br />

binding mode; the dynamic linker evaluates and binds to symbols only when<br />

needed by the application in a given runtime environment.<br />

mpirun checks for these environment variables in the shell where it is invoked,<br />

and then propagates them correctly. The environment on each node is whatever it<br />

would be for the user’s login via ssh, unless you are using a Multi-Purpose<br />

Daemon (MPD) (see “MPD” on page 4-24).<br />

Environment variables are specified in descending order, as follows:<br />

1. Set in the default shell environment on a remote node, e.g., ~/.bashrc or<br />

equivalents.<br />

2. Set in -rcfile.<br />

3. Set the current shell environment for the mpirun command.<br />

4. If nothing has been set (none of the previous sets have been performed),<br />

the default value of the environment variable is used.<br />

As noted in the above list, using an mpirunrc file overrides any environment<br />

variables already set by the user. You can set environment variables for the node<br />

programs with the -rcfile option of mpirun with the following command:<br />

$ mpirun -np n -m mpihosts -rcfile mpirunrc program_name<br />

In the absence of this option, mpirun checks to see if a file called<br />

$HOME/.mpirunrc exists in the user's home directory. In either case, the file is<br />

sourced by the shell on each node when the node program starts.<br />

D000046-005 B 4-19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!