Differences between revisions 1 and 8 (spanning 7 versions)
Revision 1 as of 2010-05-26 19:34:38
Size: 552
Editor: gtang
Comment:
Revision 8 as of 2010-05-27 22:06:37
Size: 1067
Editor: gtang
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
First of all, you need a mpi package to compile a mpi version of EMAN(make3d).
We use mpich1.2.7.
'''Question: How can I use mpi version of make3d?'''

'''Answer:'''

First of all, you need a mpi package to compile a mpi version of EMAN(make3d). We use mpich1.2.7. You need compile mpich1.2.7 as following:
Line 9: Line 13:
Note:
1. We need add a '-fPIC' here Otherwise in the process of compiling EMAN, you will get link error when link make3d to static mpich libraries.
Add following envoronmental viraibles to your .bashrc. Here I use Bash as a example, you can set those variables in CShell accordingly.

{{{
export MPIDIR=~/bin/mpich
export PATH=${MPIDIR}/bin:${PATH}
export LD_LIBRARY_PATH=${MPIDIR}/lib:${LD_LIBRARY_PATH}
}}}
source .bashrc

Then turn on ENABLE_MPI flag in ccmake step when compiling EMAN.

Note:

1. We need add a '-fPIC' option for static mpi libraries compilation. Otherwise in the process of compiling EMAN, you will get link error when link make3d to static mpich libraries.
Line 12: Line 29:

Question: How can I use mpi version of make3d?

Answer:

First of all, you need a mpi package to compile a mpi version of EMAN(make3d). We use mpich1.2.7. You need compile mpich1.2.7 as following:

$./configure -prefix=/usr/local -rsh=ssh
$make CXXFLAGS='-O2 -fPIC'
$su
$make install

Add following envoronmental viraibles to your .bashrc. Here I use Bash as a example, you can set those variables in CShell accordingly.

export MPIDIR=~/bin/mpich
export PATH=${MPIDIR}/bin:${PATH}
export LD_LIBRARY_PATH=${MPIDIR}/lib:${LD_LIBRARY_PATH}

source .bashrc

Then turn on ENABLE_MPI flag in ccmake step when compiling EMAN.

Note:

1. We need add a '-fPIC' option for static mpi libraries compilation. Otherwise in the process of compiling EMAN, you will get link error when link make3d to static mpich libraries.

2. We cannot link EMAN with shared pi libraries. The compilation will be OK, but we will get runtime error like:

p4_error: Child process exited while making connection to remote process on

EMAN1MpiMake3d (last edited 2010-05-27 22:06:37 by gtang)