- Package Installation
- sudo yum groupinstall -y 'Development Tools'
- sudo yum install -y openmpi openmpi-devel openmpi-devel.x86_64 qt-devel
- sudo yum install -y cc gcc-c++ bison ncurses-devel tix.x86_64 glibc-devel flex zlib-devel libXt-devel binutils-devel
- sudo yum install -y gcc44 gcc44-c++ zlib-devel
- yum upgrade -y
- Check your OS architecture to forcefully load Open-MPI into the environment
- uname -m
- If 32 bit:
- mpi-selector --system --set openmpi-1.4-gcc-i386
- If 64 bit:
- mpi-selector --system --set openmpi-1.4-gcc-x86_64
- In my case, "openmpi-1.4-gcc-x86_64" is not listed by executing "mpi-selector --list". To register openmpi-1.4-gcc-x86_64:
- mpi-selector --register openmpi-1.4-gcc-x86_64 --source-dir /usr/lib64/openmpi/1.4-gcc/etc
- Log out and log in again. If you did step 1 and 2 as root, at this time log in as a regular user.
- Download and unpack
- cd ~
- mkdir OpenFOAM
- cd OpenFOAM
- wget "http://downloads.sourceforge.net/foam/OpenFOAM-2.1.1.tgz?use_mirror=mesh" -O OpenFOAM-2.1.1.tgz
- wget "http://downloads.sourceforge.net/foam/ThirdParty-2.1.1.tgz?use_mirror=mesh" -O ThirdParty-2.1.1.tgz
- tar xzf OpenFOAM-2.1.1.tgz
- tar xzf ThirdParty-2.1.1.tgz
- For X86 #here you can change 4 to the number of cores you've got
- source $HOME/OpenFOAM/OpenFOAM-2.1.1/etc/bashrc WM_NCOMPPROCS=4 WM_COMPILER=Gcc44 WM_MPLIB=SYSTEMOPENMPI
- export WM_CC='gcc44'
- export WM_CXX='g++44'
- echo "source $HOME/OpenFOAM/OpenFOAM-2.1.1/etc/bashrc $FOAM_SETTINGS" >> $HOME/.bashrc
- echo "export WM_CC='gcc44'; export WM_CXX='g++44'" >> $HOME/.bashrc
- sed -i -e 's=gcc=$(WM_CC)=' OpenFOAM-2.1.1/wmake/rules/linux64Gcc44/c
- sed -i -e 's=g++=$(WM_CXX)=' OpenFOAM-2.1.1/wmake/rules/linux64Gcc44/c++
- Now let's build OpenFOAM. It usually takes 30 minutes to 6 hours.
- #Go into OpenFOAM's main source folder
- cd OpenFOAM-2.1.1
- # This next command will take a while... somewhere between 30 minutes to 3-6 hours.
- ./Allwmake > make.log 2>&1
- #Run it a second time for getting a summary of the installation
- ./Allwmake > make.log 2>&1
Preliminary
OpenFOAM uses libmpi.so.1. If this is not found in /usr/lib64/openmpi/1.4-gcc/lib, then do followings
- Log in as root
- cd /usr/lib64/openmpi/1.4-gcc/lib
- ln -s libmpi.so libmpi.so.1
This is to make a symbolic link from libmpi.so to libmpi.so.1, which should be done all the nodes if OpenFoam will be run in parallel.
Related links:
http://wiki.hpc.ufl.edu/doc/From_mpi-selector_to_environment_modules
http://na-inet.jp/na/pccluster/centos_x86_64-en.html
No comments:
Post a Comment