Hello,

On 09/03/15 16:52, Nick Papior wrote:
When you change environment, that is change between OpenMPI and Intel MPI, or
compiler, it is recommended that you recompile everything.

use mpi

is a module, you cannot mix these between compilers/environments, sadly the
Fortran specification does not enforce a strict module format which is why this
is necessary.

this is sensible because the ISO Fortran standard also does not enforce the memory layout of descriptors that get passed around in a Fortran program, so having a module from one compiler work in another cannot work unless a common ABI for arguments is agreed upon (like it was for Fortran 77, where the SysV ABI is pretty consistently used).

Because Fortran modules (introduced in Fortran 90) supply more semantics than the Fortran 77 mpif.h it's often useful to 'use mpi' than 'include "mpif.h"'.

2015-09-03 14:43 GMT+00:00 Diego Avesani <diego.aves...@gmail.com
<mailto:diego.aves...@gmail.com>>:

    Dear Jeff, Dear all,
    I normaly use "USE MPI"

    This is the answar fro intel HPC forum:

    /If you are switching between intel and openmpi you must remember not to mix
    environment.  You might use modules to manage this.  As the data types
    encodings differ, you must take care that all objects are built against the
    same headers./

    Could someone explain me what are these modules and how I can use them?

This refers to the 'modules' software package[1] (different from Fortran modules) which simplifies having multiple versions of the same and different software packages with the same commands around.

It's typically used in server environments where an upgrade for all users/dependent software packages is non-trivial.

Regards, Thomas

[1] http://modules.sourceforge.net/


Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to