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.

F–Troubleshooting<br />

<strong>QLogic</strong> MPI Troubleshooting<br />

Using MPI.mod Files<br />

MPI.mod (or mpi.mod) are the Fortran 90/Fortran 95 mpi modules files. These<br />

files contain the Fortran 90/Fortran 95 interface to the platform-specific MPI<br />

library. The module file is invoked by ‘USE MPI’ or ‘use mpi’ in your application. If<br />

the application has an argument list that does not match what mpi.mod expects,<br />

errors such as this can occur:<br />

$ mpif90 -O3 -OPT:fast_math -c communicate.F<br />

call mpi_recv(nrecv,1,mpi_integer,rpart(nswap),0,<br />

^<br />

pathf95-389 pathf90: ERROR BORDERS, File = communicate.F, Line =<br />

407, Column = 18<br />

No specific match can be found for the generic subprogram call<br />

"MPI_RECV".<br />

If it is necessary to use a non-standard argument list, create your own MPI<br />

module file and compile the application with it, rather than using the standard MPI<br />

module file that is shipped in the mpi-devel-* RPM.<br />

The default search path for the module file is:<br />

/usr/include<br />

To include your own MPI.mod rather than the standard version, use<br />

-I/your/search/directory, which causes /your/search/directory to<br />

be checked before /usr/include. For example:<br />

$ mpif90 -I/your/search/directory myprogram.f90<br />

Usage for Fortran 95 will be similar to the example for Fortran 90.<br />

Extending MPI Modules<br />

MPI implementations provide procedures that accept an argument having any<br />

data type, any precision, and any rank. However, it is not practical for an MPI<br />

module to enumerate every possible combination of type, kind, and rank.<br />

Therefore, the strict type checking required by Fortran 90 may generate errors.<br />

For example, if the MPI module tells the compiler that mpi_bcast can operate on<br />

an integer but does not also say that it can operate on a character string, you may<br />

see a message similar to the following:<br />

pathf95: ERROR INPUT, File = input.F, Line = 32, Column = 14<br />

No specific match can be found for the generic subprogram call<br />

"MPI_BCAST".<br />

F-20 D000046-005 B

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

Saved successfully!

Ooh no, something went wrong!