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

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

Configuring MPI Programs for <strong>QLogic</strong> MPI<br />

When configuring an MPI program (generating header files and/or Makefiles) for<br />

<strong>QLogic</strong> MPI, you usually need to specify mpicc, mpicxx, and so on as the<br />

compiler, rather than gcc, g++, etc.<br />

Specifying the compiler is typically done with commands similar to the following,<br />

assuming that you are using sh or bash as the shell:<br />

$ export CC=mpicc<br />

$ export CXX=mpicxx<br />

$ export F77=mpif77<br />

$ export F90=mpif90<br />

$ export F95=mpif95<br />

The shell variables will vary with the program being configured, but these<br />

examples show frequently used variable names. If you use csh, use commands<br />

similar to the following:<br />

$ setenv CC mpicc<br />

You may need to pass arguments to configure directly, for example:<br />

$ ./configure -cc=mpicc -fc=mpif77 -c++=mpicxx<br />

-c++linker=mpicxx<br />

You may also need to edit a Makefile to achieve this result, adding lines similar to:<br />

CC=mpicc<br />

F77=mpif77<br />

F90=mpif90<br />

F95=mpif95<br />

CXX=mpicxx<br />

In some cases, the configuration process may specify the linker. <strong>QLogic</strong><br />

recommends that the linker be specified as mpicc, mpif90, etc. in these cases.<br />

This specification automatically includes the correct flags and libraries, rather than<br />

trying to configure to pass the flags and libraries explicitly. For example:<br />

LD=mpicc<br />

LD=mpif90<br />

These scripts pass appropriate options to the various compiler passes to include<br />

header files, required libraries, etc. While the same effect can be achieved by<br />

passing the arguments explicitly as flags, the required arguments may vary from<br />

release to release, so it is good practice to use the provided scripts.<br />

4-8 D000046-005 B

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

Saved successfully!

Ooh no, something went wrong!