cannam@95: cannam@95: cannam@95: FFTW MPI Installation - FFTW 3.3.3 cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95: cannam@95:
cannam@95: cannam@95:

cannam@95: Next: , cannam@95: Previous: Distributed-memory FFTW with MPI, cannam@95: Up: Distributed-memory FFTW with MPI cannam@95:


cannam@95:
cannam@95: cannam@95:

6.1 FFTW MPI Installation

cannam@95: cannam@95:

All of the FFTW MPI code is located in the mpi subdirectory of cannam@95: the FFTW package. On Unix systems, the FFTW MPI libraries and header cannam@95: files are automatically configured, compiled, and installed along with cannam@95: the uniprocessor FFTW libraries simply by including cannam@95: --enable-mpi in the flags to the configure script cannam@95: (see Installation on Unix). cannam@95: cannam@95: cannam@95:

Any implementation of the MPI standard, version 1 or later, should cannam@95: work with FFTW. The configure script will attempt to cannam@95: automatically detect how to compile and link code using your MPI cannam@95: implementation. In some cases, especially if you have multiple cannam@95: different MPI implementations installed or have an unusual MPI cannam@95: software package, you may need to provide this information explicitly. cannam@95: cannam@95:

Most commonly, one compiles MPI code by invoking a special compiler cannam@95: command, typically mpicc for C code. The configure cannam@95: script knows the most common names for this command, but you can cannam@95: specify the MPI compilation command explicitly by setting the cannam@95: MPICC variable, as in ‘./configure MPICC=mpicc ...’. cannam@95: cannam@95: cannam@95:

If, instead of a special compiler command, you need to link a certain cannam@95: library, you can specify the link command via the MPILIBS cannam@95: variable, as in ‘./configure MPILIBS=-lmpi ...’. Note that if cannam@95: your MPI library is installed in a non-standard location (one the cannam@95: compiler does not know about by default), you may also have to specify cannam@95: the location of the library and header files via LDFLAGS and cannam@95: CPPFLAGS variables, respectively, as in ‘./configure cannam@95: LDFLAGS=-L/path/to/mpi/libs CPPFLAGS=-I/path/to/mpi/include ...’. cannam@95: cannam@95: cannam@95: cannam@95: