On Nov 3, 2008, at 3:59 PM, PattiMichelle wrote:
I just found out I need to switch from mpich2 to openMPI for some
code I'm running. I noticed that it's available in an openSuSE repo
(I'm using openSuSE 11.0 x86_64 on a TYAN 32-processor Opteron 8000
system), but when I was using mpich2 I seemed to have better luck
compiling it from code. This is the line I used:
# $ F77=/path/to/g95 F90=/path/to/g95 ./configure --prefix=/some/
place/mpich2-install
Use FC=/path/to/g95 instead of F90. Better yet, but the F77 and FC
after the ./configure:
$ ./configure --prefix=/wherever FC=/path/to/g95 F77=/path/to/g95
But usually I left the "--prefix=" off and just let it install to
it's default... which is /usr/local/bin and that's nice because
it's already in the PATH and very usable.
That would be fine as well. But ensure that you install MPICH[2] and
Open MPI in two different prefixes -- we have a few executables and
libraries that are the same name, so if you install them into the same
location, they'll overwrite each other.
I guess my question is whether or not the defaults and configuration
syntax have stayed the same in openMPI. I also could use a
"quickstart" guide for a non-programming user (e.g., I think I have
to start a daemon before running parallelized programs).
Our mpirun/mpiexec is a little different than MPICH[2]'s -- you might
want to check out them man page. OMPI doesn't use user-started
daemons for most cases; you should just be able to "mpirun ..." right
out of the box. If you're not using a resource manager, you'll likely
need to supply a hostfile, but OMPI's mpirun should support the same
syntax as MPICH[2]'s hostfiles.
Your MPI apps should compile with Open MPI if you use our wrapper
compilers (mpicc, mpif90, etc.). Most well-written MPI apps will run
properly with multiple MPI implementations, but it's certainly
possible that you'll run into a few snags if you inadvertently coded
your app to some particular characteristics of MPICH[2]. The best way
to know is just to try running it and see what happens.
--
Jeff Squyres
Cisco Systems