There is also the package Lmod, which provides similar functionality to environment modules. It is maintained by TACC.
https://www.tacc.utexas.edu/research-development/tacc-projects/lmod but I think the current source code is at https://github.com/TACC/Lmod -- bennet On Thu, Sep 3, 2015 at 11:13 AM, Jeff Squyres (jsquyres) <jsquy...@cisco.com> wrote: > On Sep 3, 2015, at 10:43 AM, Diego Avesani <diego.aves...@gmail.com> wrote: >> >> 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. > > I think the source of the confusion here might well be an overload of the > word "modules". > > I think the word "module" in the phrase "You might use modules to manage > this" is referring to *environment modules*, not *Fortran modules*. I.e.: > http://modules.sourceforge.net/ > > Where you can do stuff like this: > > ----- > # Use Open MPI > $ module load openmpi > $ mpicc my_program.c > $ mpirun -np 4 a.out > > # Use __some_other_MPI__ > $ module load othermpi > $ mpicc my_program.c > $ mpirun -np 4 a.out > ----- > > Environment modules are typically used to set things like PATH, > LD_LIBRARY_PATH, and MANPATH. > > I think the poster on the Intel HPC forum was probably referring to you using > environment modules to switch your PATH / LD_LIBRARY_PATH / MANPATH between > Open MPI and Intel MPI. > >> As the data types encodings differ, you must take care that all objects are >> built against the same headers. > > Here, the poster is essentially saying that if you want to use Open MPI, you > have to compile and mpirun with Open MPI. And if you want to use Open MPI, > you have to (re)compile and mpirun with Intel MPI. > > In short: Open MPI and Intel MPI are not binary compatible, and their > mpirun's are not compatible, either. > > (note that this is an Open MPI mailing list; we can't answer questions about > Intel MPI here) > > My point with "use mpi" was that you should try replacing "include 'mpif.h'" > with "use mpi" in your Fortran blocks. Open MPI's "use mpi" implementation > will do a lot of compile-time type checking that "include 'mpif.h'" will not. > Hence, it help determine if you're passing an incorrect parameter to an MPI > subroutine, for example. > > -- > Jeff Squyres > jsquy...@cisco.com > For corporate legal information go to: > http://www.cisco.com/web/about/doing_business/legal/cri/ > > _______________________________________________ > users mailing list > us...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users > Link to this post: > http://www.open-mpi.org/community/lists/users/2015/09/27537.php