Product specifications
Table Of Contents
- Table of Contents
- 1 Introduction
- 2 Feature Overview
- 3 Step-by-Step Cluster Setup and MPI Usage Checklists
- 4 InfiniPath Cluster Setup and Administration
- Introduction
- Installed Layout
- Memory Footprint
- BIOS Settings
- InfiniPath and OpenFabrics Driver Overview
- OpenFabrics Drivers and Services Configuration and Startup
- Other Configuration: Changing the MTU Size
- Managing the InfiniPath Driver
- More Information on Configuring and Loading Drivers
- Performance Settings and Management Tips
- Host Environment Setup for MPI
- Checking Cluster and Software Status
- 5 Using QLogic MPI
- Introduction
- Getting Started with MPI
- QLogic MPI Details
- Use Wrapper Scripts for Compiling and Linking
- Configuring MPI Programs for QLogic MPI
- To Use Another Compiler
- Process Allocation
- mpihosts File Details
- Using mpirun
- Console I/O in MPI Programs
- Environment for Node Programs
- Environment Variables
- Running Multiple Versions of InfiniPath or MPI
- Job Blocking in Case of Temporary InfiniBand Link Failures
- Performance Tuning
- MPD
- QLogic MPI and Hybrid MPI/OpenMP Applications
- Debugging MPI Programs
- QLogic MPI Limitations
- 6 Using Other MPIs
- A mpirun Options Summary
- B Benchmark Programs
- C Integration with a Batch Queuing System
- D Troubleshooting
- Using LEDs to Check the State of the Adapter
- BIOS Settings
- Kernel and Initialization Issues
- OpenFabrics and InfiniPath Issues
- Stop OpenSM Before Stopping/Restarting InfiniPath
- Manual Shutdown or Restart May Hang if NFS in Use
- Load and Configure IPoIB Before Loading SDP
- Set $IBPATH for OpenFabrics Scripts
- ifconfig Does Not Display Hardware Address Properly on RHEL4
- SDP Module Not Loading
- ibsrpdm Command Hangs when Two Host Channel Adapters are Installed but Only Unit 1 is Connected to the Switch
- Outdated ipath_ether Configuration Setup Generates Error
- System Administration Troubleshooting
- Performance Issues
- QLogic MPI Troubleshooting
- Mixed Releases of MPI RPMs
- Missing mpirun Executable
- Resolving Hostname with Multi-Homed Head Node
- Cross-Compilation Issues
- Compiler/Linker Mismatch
- Compiler Cannot Find Include, Module, or Library Files
- Problem with Shell Special Characters and Wrapper Scripts
- Run Time Errors with Different MPI Implementations
- Process Limitation with ssh
- Number of Processes Exceeds ulimit for Number of Open Files
- Using MPI.mod Files
- Extending MPI Modules
- Lock Enough Memory on Nodes When Using a Batch Queuing System
- Error Creating Shared Memory Object
- gdb Gets SIG32 Signal Under mpirun -debug with the PSM Receive Progress Thread Enabled
- General Error Messages
- Error Messages Generated by mpirun
- MPI Stats
- E Write Combining
- F Useful Programs and Files
- G Recommended Reading
- Glossary
- Index

5–Using QLogic MPI
QLogic MPI Details
IB6054601-00 H 5-15
A
In the absence of both the -m option and the MPIHOSTS environment
variable, mpirun uses the file ./mpihosts, if it exists.
If none of these three methods of specifying the hosts file are used, mpirun
looks for the file ~/.mpihosts.
If you are working in the context of a batch queuing system, it may provide a job
submission script that generates an appropriate mpihosts file.
Using mpirun
The script mpirun is a front end program that starts a parallel MPI job on a set of
nodes in an InfiniPath cluster. mpirun may be run on any i386 or x86_64
machine inside or outside the cluster, as long as it is on a supported Linux
distribution, and has TCP connectivity to all InfiniPath cluster machines to be used
in a job.
The script starts, monitors, and terminates the node programs. mpirun uses ssh
(secure shell) to log in to individual cluster machines, and prints any messages
that the node program prints on stdout or stderr on the terminal from which
mpirun is invoked.
The general syntax is:
$ mpirun [mpirun_options...] program-name [program options]
program-name is usually the pathname to the executable MPI program. When
the MPI program resides in the current directory and the current directory is not in
your search path, then program-name
must begin with ‘./’, for example:
./program-name
Unless you want to run only one instance of the program, use the -np option, for
example:
$ mpirun -np n [other options] program-name
This option spawns n instances of program-name. These instances are called
node programs.
NOTE:
The mpi-frontend-* RPM needs to be installed on all nodes that will be
using mpirun. Alternatively, you can use the mpirun option
-distributed=off, which requires that only the mpi-frontend RPM be
installed on the node where mpirun is invoked. Using -distributed=off
can have a negative impact on mpirun’s performance when running
large-scale jobs. More specifically, this option increases the memory usage
on the host from which mpirun is started and will slow down the job startup,
since it will spawn MPI processes serially.