|
[Sponsors] |
February 25, 2009, 12:47 |
Hi all,
I'm used to work wi
|
#1 |
Member
Elisabet Mas de les Valls
Join Date: Mar 2009
Location: Barcelona, Spain
Posts: 64
Rep Power: 17 |
Hi all,
I'm used to work with OF using OpenMPI, but now I have access to a cluster that uses MPICH2. Hence, I guess some specific changes have to be done in both bashrc and settings.sh files. However, among the available options I only find MPICH, is it ok to keep MPICH but in settings.sh introduce the right MPICH2 version and location? Moreover, should I have something else in mind? That is, are there special treats for Pstream compilation with PMICH2? I have not been able to find the information I need in previous posts. Any information is welcome! Regards, elisabet |
|
February 26, 2009, 07:21 |
Still with this...
When com
|
#2 |
Member
Elisabet Mas de les Valls
Join Date: Mar 2009
Location: Barcelona, Spain
Posts: 64
Rep Power: 17 |
Still with this...
When compiling Pstream I get the following error: /usr/bin/ld: /shared/source/mpich2-1.0.6p1/lib/libmpich.a(allreduce.o): relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC /shared/source/mpich2-1.0.6p1/lib/libmpich.a: could not read symbols: Bad value collect2: ld returned 1 exit status I guess it has something to do with the rules in my mplibMPICH file, as stated in the wiki, but I don't know how to correct it. Any ideas? Regards, elisabet |
|
February 27, 2009, 01:54 |
I have a cluster running OF-1.
|
#3 |
Member
Martin Aunskjaer
Join Date: Mar 2009
Location: Denmark
Posts: 53
Rep Power: 17 |
I have a cluster running OF-1.5 in parallel using MPICH2. I had no problems rebuilding PStream. It's been a while since I did it, and I don't remember the exact steps. However, I did take notes. I don't have them at hand right now, but I will try to dig them out.
|
|
February 27, 2009, 04:33 |
That would be perfect!
Than
|
#4 |
Member
Elisabet Mas de les Valls
Join Date: Mar 2009
Location: Barcelona, Spain
Posts: 64
Rep Power: 17 |
That would be perfect!
Thanks Martin, elisabet |
|
February 27, 2009, 11:34 |
Turns out my notes are for OF-
|
#5 |
Member
Martin Aunskjaer
Join Date: Mar 2009
Location: Denmark
Posts: 53
Rep Power: 17 |
Turns out my notes are for OF-1.4.1. I had a quick look at OF-1.5.x. The names and contents of sources files is different, but this is what I believe you should do, assuming your shell is bash:
1) Open $WM_PROJECT_DIR/etc/bashrc Uncomment the line (put a # in front of it) : ${WM_LIB:=OPENMPI}; export WM_LIB and add this line : ${WM_LIB:=MPICH2}; export WM_LIB This will make MPICH2 the default MPI selection. 2) In $WM_PROJECT_DIR/etc/settings.sh find where all the MPI stuff is and add this (your paths and version may differ): MPICH2) export MPICH2_VERSION=1.0.5 export MPICH2_ARCH_PATH=/home/mar/mpich2-install export MPICH2_PATH=$MPICH2_ARCH_PATH export MPICH2_ROOT=$MPICH2_ARCH_PATH _foamAddLib $MPICH2_ARCH_PATH/lib _foamAddLib $MPICH2_ARCH_PATH/bin export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/mpich2-$MPI_VERSION 3) In $WM_PROJECT_DIR/wmake/rules/linuxGcc add the new file mplibMPICH2 with contents: PFLAGS = PINC = -I$(MPICH2_ARCH_PATH)/include PLIBS = -L$(MPICH2_ARCH_PATH)/lib This file tells the compiler and linker where to find the include files and MPICH2 libraries respectively. 4) In $WM_PROJECT_DIR/src/Pstream/Allwmake add MPICH2 to the case statement: ... | MPICH2 | ...) 5) In $WM_PROJECT_DIR/src/Pstream ./Allwmake Let me know if there are problems. Later this year I am planning on building a new cluster with OF running MPICH2-MX on top of OpenMX, so I have a vested interest in any observations you make. |
|
March 11, 2009, 12:16 |
Hi Martin,
Sorry for the de
|
#6 | ||
Member
Elisabet Mas de les Valls
Join Date: Mar 2009
Location: Barcelona, Spain
Posts: 64
Rep Power: 17 |
Hi Martin,
Sorry for the delay, I've been quite busy with other stuff. OF-1.5.x, with MPICH2, is now compiled in the cluster and works. The steps I carried out are: 1. In etc/bashrc Quote:
: ${WM_MPLIB:=MPICH}; export WM_MPLIB # I kept MPICH for simplicity, I'm too lazy... } 2. In etc/settings.sh (following the internal architecture of the cluster) Quote:
My old error related with fPIC was solved when I asked the cluster administrator to recompile MPICH2 in a shared way. Once this was changed, everything complied directly. 4. others I got a strange error when compiling decompositionAgglomeration that was solved, as suggested by the error message, changing the order of the include mpi.h in the top of the file decompositionAgglomeration/parMetisDecomp/parMetisDecomp.C. The error was related to redefinition of SEEK_SET, SEEK_CUR and SEEK_END in mpi.h Nowadays the code works perfectly in parallel using MPICH2. Thanks to everyone! Best regards, elisabet |
|||
August 26, 2009, 00:19 |
MPICH2 Configuration
|
#7 |
Senior Member
Daniel WEI (老魏)
Join Date: Mar 2009
Location: Beijing, China
Posts: 689
Blog Entries: 9
Rep Power: 21 |
This is how I configure the MPICH2:
Code:
./configure \ --without-mpe \ --disable-f77 \ --disable-f90 \ --disable-f90modules \ --disable-cxx \ --disable-mpedbg \ --disable-devdebug \ --disable-debug \ --enable-fast \ --enable-sharedlibs=gcc \ --with-device=ch3:nemesis \ -prefix=$MPI_ARCH_PATH
__________________
~ Daniel WEI ------------- Boeing Research & Technology - China Beijing, China |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
MPICH2 | Alfonso | FLUENT | 2 | March 13, 2009 12:48 |
OF15x sample utility does not accept component | elisabet | OpenFOAM Bugs | 2 | February 18, 2009 12:58 |
Problem compiling OF15x from git sources | lhcamilo | OpenFOAM Bugs | 5 | November 28, 2008 07:12 |
Problem compiling OF15x from git sources | lhcamilo | OpenFOAM Bugs | 1 | November 27, 2008 09:36 |
mpich2 build for hpf | taw | Main CFD Forum | 0 | April 6, 2008 04:34 |