Discussion:
[Beowulf] Openfoam advice
Faraz Hussain
2018-03-15 14:02:50 UTC
Permalink
I know OpenFOAM is probably one of the most challenging and intricate
softwares to build and run.. I have been tasked with installing it on
a system to test how long some benchmark models run on 100 -> 1000
cores. My questions are:

1) Can I build this as a user, i.e non-root?
2) Can I build it with no GUI support, i.e no paraview?
3) What are some good benchmarks I can run that will scale to 1000 cores?

Thanks!

_______________________________________________
Beowulf mailing list, ***@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.
fabricio
2018-03-15 14:16:46 UTC
Permalink
Post by Faraz Hussain
I know OpenFOAM is probably one of the most challenging and intricate
softwares to build and run.. I have been tasked with installing it on a
system to test how long some benchmark models run on 100 -> 1000 cores.
1) Can I build this as a user, i.e non-root?
Yes.
Post by Faraz Hussain
2) Can I build it with no GUI support, i.e no paraview?
Yes.
Post by Faraz Hussain
3) What are some good benchmarks I can run that will scale to 1000 cores?
Haven't run on this # of cores, maybe somebody else can help you.


[ ]'s
_______________________________________________
Beowulf mailing list, ***@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) vi
Benson Muite
2018-03-15 15:02:01 UTC
Permalink
Hi Faraz,

Last looked at OpenFOAM 4-X
https://github.com/OpenFOAM/OpenFOAM-4.x
Though development has migrated to
https://develop.openfoam.com/Development/OpenFOAM-plus

Steps I used in a bash build script for 4-X on a cluster with OpenMPI,
qt, zlib and cmake already installed are below. Scaling for OpenFOAM
depends significantly on what is being simulated.

Regards,
Benson

#!/bin/bash

cd $HOME
module purge
module load qt-4.8.6
module load openmpi-2.1.0
module load zlib-1.2.6
module load cmake-2.8.12.2

mkdir OpenFOAM8
cd OpenFOAM8
git clone https://github.com/OpenFOAM/OpenFOAM-4.x.git
git clone https://github.com/OpenFOAM/ThirdParty-4.x.git

mkdir gmp
cd gmp
wget "https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz" -O gmp-6.1.2.tar.xz
tar -xvf gmp-6.1.2.tar.xz
cd gmp-6.1.2
./configure --prefix=$HOME/OpenFOAM7/gmp/install
make
make check
make install
cd ..
cd ..

mkdir mpfr
cd mpfr
wget www.mpfr.org/mpfr-current/mpfr-3.1.5.tar.gz
tar -xvf mpfr-3.1.5.tar.gz
cd mpfr-3.1.5
./configure --with-gmp=$HOME/OpenFOAM8/gmp-6.1.2/install
--prefix=$HOME/OpenFOAM
8/mpfr/install
make
make install
cd ..
cd ..

mkdir flex
cd flex
wget
"http://sourceforge.net/projects/flex/files/latest/download?source=typ_redi
rect" -O flex-2.6.0.tar.gz
tar -xvf flex-2.6.0.tar.gz
cd flex-2.6.0
./configure --prefix=$HOME/OpenFOAM8/flex/install
make
make install

cd ..
cd ..
cd OpenFOAM-4.x
export MPI_ARCH_PATH=/storage/software/openmpi-2.1.0/
export WM_COMPILE_OPTION=-I/storage/software/openmpi-2.1.0/include
export FOAM_INST_DIR=$HOME/OpenFOAM8
export WM_CC=mpicc; export WM_CXX=mpicxx
export WM_COMPILE_OPTION=-I$HOME/OpenFOAM8/flex/install/include
foamDotFile=$FOAM_INST_DIR/OpenFOAM-4.x/etc/bashrc
[ -f $foamDotFile ] && . $foamDotFile
source etc/bashrc WM_NCOMPPROCS=1024 WM_MPLIB=SYSTEMOPENMPI
export PATH=$PATH:$HOME/OpenFOAM8/flex/install/bin
export
C_INCLUDE_PATH=/storage/software/openmpi-2.1.0/include:$HOME/OpenFOAM8/fl
ex/install/include
export
CPLUS_INCLUDE_PATH=/storage/software/openmpi-2.1.0/include:$HOME/OpenFOAM
8/flex/install/include
export
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib64:$HOME/OpenFOAM8/gmp/install/lib:$
HOME/OpenFOAM8/flex/install/lib
export
LIBRARY_PATH=/storage/software/zlib-1.2.6/lib:$HOME/OpenFOAM8/gmp/install
/lib:$HOME/OpenFOAM8/flex/install/lib
export
C_INCLUDE_PATH=$C_INCLUDE_PATH:/storage/software/zlib-1.2.6/include:$HOME
/OpenFOAM8/gmp/install/include
export
CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/storage/software/zlib-1.2.6/inclu
de:$HOME/OpenFOAM8/gmp/install

cd ..
cd ThirdParty-4.x
wget
"http://sourceforge.net/projects/boost/files/boost/1.57.0/boost_1_57_0.tar.
gz/download" -O boost_1_57_0.tar.gz
tar -xvf boost_1_57_0.tar.gz
mv boost_1_57_0 boost-system
./Allwmake

cd ..
cd OpenFOAM-4.x
./Allwmake
Post by fabricio
Post by Faraz Hussain
I know OpenFOAM is probably one of the most challenging and intricate
softwares to build and run.. I have been tasked with installing it on
a system to test how long some benchmark models run on 100 -> 1000
1) Can I build this as a user, i.e non-root?
Yes.
Post by Faraz Hussain
2) Can I build it with no GUI support, i.e no paraview?
Yes.
Post by Faraz Hussain
3) What are some good benchmarks I can run that will scale to 1000 cores?
Haven't run on this # of cores, maybe somebody else can help you.
[ ]'s
_______________________________________________
To change your subscription (digest mode or unsubscribe) visit
http://www.beowulf.org/mailman/listinfo/beowulf
_______________________________________________
Beowulf mailing list, ***@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) vis
Peter Kjellström
2018-03-15 17:48:14 UTC
Permalink
On Thu, 15 Mar 2018 08:02:50 -0600
Post by Faraz Hussain
I know OpenFOAM is probably one of the most challenging and
intricate softwares to build and run.. I have been tasked with
installing it on a system to test how long some benchmark models run
First I'd like to point you to the fact that both easybuild and spack
(semi-auto-build-install-hpc-software tools) have support for
OpenFOAM. This may be a good place to start if you don't have Foam
specific knowledge or a lot of time.

Disclaimer, I've not tried to install foam with either myself.
Post by Faraz Hussain
1) Can I build this as a user, i.e non-root?
Yes of course.
Post by Faraz Hussain
2) Can I build it with no GUI support, i.e no paraview?
Yes
Post by Faraz Hussain
3) What are some good benchmarks I can run that will scale to 1000 cores?
This is almost a broken question. That is, one cannot generally say
OpenFOAM will scale well between 100 and 1000 cores. But on the other
hand one can certainly make a case that scales well.

That is, it's rather pointless without a case that has a useful
connection to what the requestor is hoping to do.

/Peter K
_______________________________________________
Beowulf mailing list, ***@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo
Faraz Hussain
2018-03-16 17:15:00 UTC
Permalink
I was hoping there was some representative CFD model that everyone
could use to evaluate performance. My background is in FEA so am
familiar with matrix decomposition and iterative solvers. I would
guess OpenFOAM implements some kind of iterative solver? So any large
mesh would suit to test performance.
Post by Peter Kjellström
This is almost a broken question. That is, one cannot generally say
OpenFOAM will scale well between 100 and 1000 cores. But on the other
hand one can certainly make a case that scales well.
_______________________________________________
Beowulf mailing list, ***@beowulf.org sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beo
Continue reading on narkive:
Loading...