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 />

NOTE:<br />

In rare cases, setting contexts automatically on DDR and QDR InfiniBand<br />

Adapters can lead to sub-optimal performance where one or more<br />

TrueScale hardware contexts have been disabled and a job is run that<br />

requires software context sharing. Since the algorithm ensures that there is<br />

at least one TrueScale context per online CPU, this case occurs only if the<br />

CPUs are over-subscribed with processes (which is not normally<br />

recommended). In this case, it is best to override the default to use as many<br />

TrueScale contexts as are available, which minimizes the amount of<br />

software context sharing required.<br />

Enabling and Disabling <strong>Software</strong> Context Sharing<br />

By default, context sharing is enabled; it can also be specifically disabled.<br />

Context Sharing Enabled: The MPI library provides PSM the local process<br />

layout so that TrueScale contexts available on each node can be shared if<br />

necessary; for example, when running more node programs than contexts. All<br />

PSM jobs assume that they can make use of all available TrueScale contexts to<br />

satisfy the job requirement and try to give a context to each process.<br />

When context sharing is enabled on a system with multiple <strong>QLogic</strong> adapter<br />

(TrueScale) boards (units) and the IPATH_UNIT environment variable is set, the<br />

number of TrueScale contexts made available to MPI jobs is restricted to the<br />

number of contexts available on that unit. When multiple TrueScale devices are<br />

present, it restricts the use to a specific TrueScale unit. By default, all configured<br />

units are used in round robin order.<br />

Context Sharing Disabled: Each node program tries to obtain exclusive access<br />

to an TrueScale hardware context. If no hardware contexts are available, the job<br />

aborts.<br />

To explicitly disable context sharing, set this environment variable in one of the<br />

two following ways:<br />

PSM_SHAREDCONTEXTS=0<br />

PSM_SHAREDCONTEXTS=NO<br />

The default value of PSM_SHAREDCONTEXTS is 1 (enabled).<br />

Restricting TrueScale Hardware Contexts<br />

in a Batch Environment<br />

If required for resource sharing between multiple jobs in batch systems, you can<br />

restrict the number of TrueScale hardware contexts that are made available on<br />

each node of an MPI job by setting that number in the<br />

PSM_SHAREDCONTEXTS_MAX environment variable.<br />

D000046-005 B 4-13

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

Saved successfully!

Ooh no, something went wrong!