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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

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

Performance Tuning<br />

Job Blocking in Case of Temporary InfiniBand Link Failures<br />

By default, as controlled by mpirun’s quiescence parameter -q, an MPI job is<br />

killed for quiescence in the event of an InfiniBand link failure (or unplugged cable).<br />

This quiescence timeout occurs under one of the following conditions:<br />

• A remote rank’s process cannot reply to out-of-band process checks.<br />

• MPI is inactive on the InfiniBand link for more than 15 minutes.<br />

To keep remote process checks but disable triggering quiescence for temporary<br />

InfiniBand link failures, use the -disable-mpi-progress-check option with a<br />

nonzero -q option. To disable quiescence triggering altogether, use -q 0. No<br />

matter how these options are used, link failures (temporary or other) are always<br />

logged to syslog.<br />

If the link is down when the job starts and you want the job to continue blocking<br />

until the link comes up, use the -t -1 option.<br />

Performance Tuning<br />

CPU Affinity<br />

These methods may be used at runtime. Performance settings that are typically<br />

set by the system administrator are listed in “Performance Settings and<br />

Management Tips” on page 3-25.<br />

InfiniPath attempts to run each node program with CPU affinity set to a separate<br />

logical processor, up to the number of available logical processors. If CPU affinity<br />

is already set (with sched_setaffinity() or with the taskset utility), then<br />

InfiniPath will not change the setting.<br />

Use the taskset utility with mpirun to specify the mapping of MPI processes to<br />

logical processors. This combination makes the best use of available memory<br />

bandwidth or cache locality when running on dual-core Symmetric<br />

MultiProcessing (SMP) cluster nodes.<br />

The following example uses the NASA Advanced Supercomputing (NAS) Parallel<br />

Benchmark’s Multi-Grid (MG) benchmark and the -c option to taskset.<br />

$ mpirun -np 4 -ppn 2 -m $hosts taskset -c 0,2 bin/mg.B.4<br />

$ mpirun -np 4 -ppn 2 -m $hosts taskset -c 1,3 bin/mg.B.4<br />

The first command forces the programs to run on CPUs (or cores) 0 and 2. The<br />

second command forces the programs to run on CPUs 1 and 3. See the taskset<br />

man page for more information on usage.<br />

To turn off CPU affinity, set the environment variable IPATH_NO_CPUAFFINITY.<br />

This environment variable is propagated to node programs by mpirun.<br />

D000046-005 B 4-23

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

Saved successfully!

Ooh no, something went wrong!