Table of Contents |
---|
- This page describes releasing IMAS AL and IMAS libs when new DD version (x.y.z) occurs
- There is no one script / mechanism that could be used to install the whole "ecosystem"
- Some scripts, used for installation of libraries has been developed, however they are not "full automatic" and still requires many improvements/development (to be changed to Makefiles??)
IMAS AL
Releasing Release new version of IMAS AL (described on other pages)
...
Check, in which dir imasenv modules are stored
Code Block ~>module show imasenv ------------------------------------------------------------------- /path/to/imasenv/a.b.c/:
cd /path/to/imasenv/
cp -r a.b.c x.y.z-alpha
- Assumption:
a.b.c
is (so far) the latest version of imasenv - Version
x.y.z
will be (until all libraries will be ready) marked as -alpha to warn the users that it is "under construction"
- Assumption:
cd x.y.z-alpha
Contents of
x.y.z-alpha
dir:Code Block x.y.z-alpha>ls -la drwxr-xr-x gcc drwxr-xr-x intel lrwxr-xr-x rc -> intel/17.0/rc # link to default module imasenv/x.y.z/rc -rw-r--r-- .version # definition of default compiler of imasenv/x.y.z
wwwCode Block x.y.z-alpha>cat .version #%Module###################################################################### # Default version set ModulesVersion intel
- Updating of imasenv module content
all files x.y.z-alpha/<compiler>/<version>/rc (e.g. 3.26.0-alpha/gcc/7.3.0/rc) needs to be updated (rc is always the first published version, tagged on user demand)}}
- open these file using any editor
updating IMAS AL versions
Code Block set imas_version x.y.z set al_version a.b.c
- Update all "submodules" versions (if needed/requested)
imasenv
module is updated, but when loading, it reports several errors - no lib compiled for new DD versions are available - to compile them - see next point
Updating of IMAS libraries
DD dependent vs independent libraries
- There are two kinds of IMAS libraries:
- DD independent: BLAS, LAPACK, INTERPOS, XMLLIB .
- DD dependent: GGD, LIBBDS, AMNS
- BLAS/LAPACK have to be installed only if there are no system-wide ones available
- DD independent libraries don't have to be re-installed after DD update but only if users requests a new version
- DD dependent libraries needs to be re-installed after every DD update/change
Installation scripts
- Fetching scripts
git clone https://<GW user login>@gforge-next.eufus.eu/git/imasscripts
Content of the cloned repo (branch master)
Code Block imasscripts>ls -la drwxr-xr-x 2 g2bpalak g2itmdev 4096 Jan 24 11:39 amns drwxr-xr-x 3 g2bpalak g2itmdev 4096 Jan 24 11:40 blas drwxr-xr-x 2 g2bpalak g2itmdev 4096 Jan 24 11:43 ggd drwxr-xr-x 2 g2bpalak g2itmdev 4096 Jan 24 11:39 interpos drwxr-xr-x 3 g2bpalak g2itmdev 4096 Jan 24 11:40 lapack drwxr-xr-x 2 g2bpalak g2itmdev 4096 Jan 24 11:43 libbds drwxr-xr-x 2 g2bpalak g2itmdev 4096 Jan 24 11:43 xmllib
- Script structure
Code Block |
---|
#!/bin/sh
#REPO
GIT_REPO="ssh://git@git.iter.org/imex/amns.git"
#VERSION/TAG
AMNS_VERSION="1.3.0"
#setting installation dir
export INSTALL_DIR=$IMAS_HOME/extra/amns/$AMNS_VERSION/$IMASENV_COMP_VENDOR/$IMASENV_COMP_VERSION/imas/$IMAS_VERSION
#FETCHing sources from GIT/SVN
....
#CLEANING (in case of any left overs)
......
# CONFIGURING (if using autotools)
....
#COMPILATION AND INSTALLATION |
Library compilation/installation.
- Set compiler:
module load imasenv/x.y.z-alpha/<compiler vendor>/<compiler version> e.g.
imasenv/3.26.0-alpha/intel/17.0- pls ignore all errors related to libraries that are not compiled yet
- Set a proper version/tag
- Check which version of given lib is the latest one
edit
build.sh
to set<LIBRARY>_VERSION="a.b.c" (e.g AMNS_VERSION="1.3.0")
- run ./
build.sh
- Usually after installation there are still few manual steps required (to be automatised in future) - see next point
IMASViz
TBD
THE END
Renaming imasenv/x.y.z-alpha to imasenv/x.y.z
Code Block |
---|
mv /path/to/imasenv/x.y.z-alpha /path/to/imasenv/x.y.z |
Info | ||
---|---|---|
| ||
This work has been carried out within the framework of the EUROfusion Consortium and has received funding from the Euratom research and training programme 2014-2018 under grant agreement No 633053.The scientific work is published for the realization of the international project co-financed by Polish Ministry of Science and Higher Education in 2019 and 2020 from financial resources of the program entitled "PMW"; Agreement No. 5040/H2020/Euratom/2019/2 and 5142/H2020-Euratom/2020/2”. |