Chris@10: Chris@10: Chris@10: MPI Initialization - FFTW 3.3.3 Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10: Chris@10:
Chris@10: Chris@10:

Chris@10: Next: , Chris@10: Previous: MPI Files and Data Types, Chris@10: Up: FFTW MPI Reference Chris@10:


Chris@10:
Chris@10: Chris@10:

6.12.2 MPI Initialization

Chris@10: Chris@10:

Before calling any other FFTW MPI (‘fftw_mpi_’) function, and Chris@10: before importing any wisdom for MPI problems, you must call: Chris@10: Chris@10:

Chris@10:

     void fftw_mpi_init(void);
Chris@10: 
Chris@10:

If FFTW threads support is used, however, fftw_mpi_init should Chris@10: be called after fftw_init_threads (see Combining MPI and Threads). Calling fftw_mpi_init additional times (before Chris@10: fftw_mpi_cleanup) has no effect. Chris@10: Chris@10:

If you want to deallocate all persistent data and reset FFTW to the Chris@10: pristine state it was in when you started your program, you can call: Chris@10: Chris@10:

Chris@10:

     void fftw_mpi_cleanup(void);
Chris@10: 
Chris@10:

(This calls fftw_cleanup, so you need not call the serial Chris@10: cleanup routine too, although it is safe to do so.) After calling Chris@10: fftw_mpi_cleanup, all existing plans become undefined, and you Chris@10: should not attempt to execute or destroy them. You must call Chris@10: fftw_mpi_init again after fftw_mpi_cleanup if you want Chris@10: to resume using the MPI FFTW routines. Chris@10: Chris@10: Chris@10: