Welcome to the forums. Please post in English or French.

You are not logged in.

#1 2013-04-19 10:08:32

jcugnoni
Member
Registered: 2007-12-05
Posts: 65

CAELinux 2013 - Code-Aster 11.3 MPI : build script & Deb packages

Dear Code-Aster community members,

after about one year without much work around CAELinux, I have finally restarted the development of the future CAELinux 2013 release which will be based on Xubuntu 12.04 64bit. So I thought that it was time to give you some updates.

To make my developments more portable and to allow for external contributions, I have started to develop Debian binary packages for all the custom compiled codes used in CAELinux, including Code-Aster 11.3 with MPI solvers.

As I am not experienced enough with the official Debian packaging approach, I have written a standalone automatic build script for Code-Aster 11.3 MPI with parallel MUMPS , FETI and PETSC solvers, using Gnu compilers with OpenBLAS for optimized performance. This script was written for Ubuntu 12.04 but it probably would not require much changes for any other Linux distribution.

The automatic build scripts are included in attachements. Please read the README files and comments for instructions and prerequisite.
The first script is used to build OpenBLAS and install it in /opt/openblas directory.
The second script (complicated and long) is used to build Code-Aster 11.3 using the GNU compilers, the system's OpenMPI library, and OpenBLAS (+ the common prerequisites). The sources of all additional libraries , in the correct versions, must be downloaded before running the scripts. I have used the following sources / version for my package:
xianyi-OpenBLAS-v0.2.6-0-g54e7b37.tar.gz, aster-full-src-11.3.0-3.noarch.tar.gz , ParMetis-3.2.0.tar.gz, scalapack_installer.tgz (v1.0.2), petsc-lite-3.3-p4.tar.gz. See README in the archive for more details.

I will try to write a wiki page on this site to document the whole process when I will find some time, in the meantime, if anybody is willing to do it, please feel free ;-)

If you want to do testing before the release of CAELinux 2013 (for any kind of Ubuntu 12.04 64 bit derivatives), the corresponding Debian packages (OpenBLAS + Code-Aster 11.3 MPI) are available in repository hosted by SourceForge:
see http://sourceforge.net/p/caelinux/home/ … velopment/  for more information on how to setup the repository.

Once the repository has been added, you can install code-aster-11.3-mpi with:

sudo apt-get install code-aster-11.3-mpi

If you prefer, you can directly download the two deb packages of code-aster-11.3-mpi and openblas from here :
http://sourceforge.net/projects/caelinu … ary-amd64/

And install them using dpkg :

sudo dpkg –i openblas*.deb code-aster-11.3-mpi*.deb

To make installation easier, I have also repackaged the official Salome-Meca-2013.1 LGPL binary in a Deb package but it is huge (1.3Gb). The goal is not to replace the official tar.gz distribution but just to allow for automatic updates for CAELinux 2013. I would have preferred being able to recompile everything from source, but I never managed to succeed integrating the additional modules. The command to install it is then :

sudo apt-get install SALOME-MECA-2013.1-LGPL

If you are interested in contributing or developing your own packages, please note that these packages were built "manually", first by compiling and installing the code in its final destination and then the binary package is built, mostly by copying files, using a small tool that I wrote (buildDeb.sh, also in the repository). At the present stage, the packages are not 100% Debian compliant (no authentication, no installed size) but can be installed or removed properly using apt-get , Synaptic or dpkg directly.

All these are currently under « beta » testing, so it may contain some bugs but feel free to test it and report issues here or on CAELinux forums.

I hope that you will like it and that i twill prove to be usefull to you !

Cheers

Joel Cugnoni

PS: also please note that Mumps & Code-Aster 11.3 are not compatible with parmetis v4.x and that the openblas library found in Ubuntu is not complete..


Attachments:
code-aster-build-11.3-mpi.tar, Size: 307.5 KiB, Downloads: 709

Offline

#2 2013-05-25 17:16:12

kengo
Member
Registered: 2012-01-27
Posts: 9
Website

Re: CAELinux 2013 - Code-Aster 11.3 MPI : build script & Deb packages

Hello

Compiler options of "Compile Scalapack" is not enough.

I think this is correct compiling.

./setup.py --lapacklib=$OPENBLAS_INST_DIR/lib/libopenblas.a --mpicc=mpicc --mpif90=mpif90 --mpiincdir=/usr/lib/openmpi/include  --ldflags_c=-fopenmp --ldflags_fc=-fopenmp --prefix=$LIB_INST_DIR/scalapack

I was not able to compile Scalapack without "fopenmp" options.


I wrote a method of building parallel MPI version of Code_Aster with OpenBLAS.
https://sites.google.com/site/codeaster … -heiretuka


bests

Offline

#3 2013-05-26 07:48:57

Yohplala
Member
Registered: 2008-12-17
Posts: 28

Re: CAELinux 2013 - Code-Aster 11.3 MPI : build script & Deb packages

Hi Joël,

I don't know if you are aware of Andrea effort regarding Code_Aster Debian packaging.
If your are interested in that effort, maybe you should contact him:

Code_Aster forum / last information
Debian Science packages
Code_Aster Debian package todo list
Code_Aster package changelog

Best regards,

Y

Last edited by Yohplala (2013-09-08 11:00:21)

Offline

#4 2013-06-05 10:54:09

Ewout
Member
Registered: 2013-04-18
Posts: 32

Re: CAELinux 2013 - Code-Aster 11.3 MPI : build script & Deb packages

I've installed Code_Aster MPI with Salome-Meca 2013.1 on a fresh Virtualbox with Ubuntu 12.04.
However when i launch astk via Salome-Meca i cannot select the MPI version of Code_Aster.

Is there an option to link ASTK (from Salome-Meca 2013.1) to Code_Aster MPI?

Offline

#5 2013-06-05 17:19:39

Thomas DE SOZA
Guru
From: EDF
Registered: 2007-11-23
Posts: 3,066

Re: CAELinux 2013 - Code-Aster 11.3 MPI : build script & Deb packages

Ewout wrote:

Is there an option to link ASTK (from Salome-Meca 2013.1) to Code_Aster MPI?

The directory for the settings of the ASTK included in Salomé-Méca is $HOME/.astkrc_salome20XX.Y
Just edit the prefs file inside it as you did for the standard ASTK.

TdS

Offline

#6 2013-07-29 10:47:12

Ewout
Member
Registered: 2013-04-18
Posts: 32

Re: CAELinux 2013 - Code-Aster 11.3 MPI : build script & Deb packages

Hello,

I am trying to compile Code_Aster 11.3 with the build script in the post above.
I made few changes to let the script run succesfull.

List of Changes:
Files:
Original: petsc-lite-3.3-p4.tar.gz
Changed: petsc-3.2-p7.tar.gz

Script:
Original:
./setup.py --lapacklib=$OPENBLAS_INST_DIR/lib/libopenblas.a --mpicc=mpicc --mpif90=mpif90 --mpiincdir=/usr/lib/openmpi/include --prefix=$LIB_INST_DIR/scalapack
Changed: (following the suggestion of Kengo)
./setup.py --lapacklib=$OPENBLAS_INST_DIR/lib/libopenblas.a --mpicc=mpicc --mpif90=mpif90 --mpiincdir=/usr/lib/openmpi/include  --ldflags_c=-fopenmp --ldflags_fc=-fopenmp --prefix=$LIB_INST_DIR/scalapack

Original:
sed -i 's/^.*mpi_get_procid_cmd.*:.*$/mpi_get_procid_cmd : echo $OMPI_COMM_WORLD_RANK:g' asrun
Changed:
sed -i 's/mpi_get_procid_cmd : echo $PMI_RANK/mpi_get_procid_cmd : echo $OMPI_COMM_WORLD_RANK/' asrun

However i want to use the ml preconditioner with Petsc, because i got the error mentioned in this topic:
http://www.code-aster.org/forum2/viewtopic.php?id=18526

So i tried to run the script with these modifications:

original:
./config/configure.py --with-mpi-dir=/usr/lib/openmpi/lib --with-blas-lapack-lib=$OPENBLAS_INST_DIR/lib/libopenblas.a --with-debugging=0 COPTFLAGS=-O3 FOPTFLAGS=-O3 --configModules=PETSc.Configure --optionsModule=PETSc.compilerOptions --with-x=0
Changed:
./config/configure.py --with-mpi-dir=/usr/lib/openmpi/lib --with-blas-lapack-lib=$OPENBLAS_INST_DIR/lib/libopenblas.a --with-debugging=0 COPTFLAGS=-O3 FOPTFLAGS=-O3 --configModules=PETSc.Configure --optionsModule=PETSc.compilerOptions --with-x=0 --download-ml=yes --download-hypre

The compilation of Petsc with the added ml and hypre libraries is succesfull, however the MPI-compilation of Code_Aster fails
What do i need to change in the build script to get a succesfull compilation of Code_Aster with Petsc and ML preconditioner?

(A screenshot with the compilation error and the buildscript i'm using is attached in the .zip file)

Last edited by Ewout (2013-07-29 12:36:06)


Attachments:
aster_compile.ZIP, Size: 133.84 KiB, Downloads: 547

Offline