Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
documentation:tools:software:abinit [2015/01/06 13:27] – modification externe 127.0.0.1 | documentation:tools:software:abinit [2021/06/22 08:26] (Version actuelle) – [Abinit] cicaluga | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Abinit ====== | ====== Abinit ====== | ||
- | ^ Version | + | * ABINIT is a software suite to calculate the optical, mechanical, vibrational, |
- | | 6.12.3 | gnu-4.6.3 | Infiniband | + | |
- | | 6.12.3 | + | |
- | | 7.2.1 | gnu-4.7.2 | + | |
- | | 7.6.4 | gnu-4.7.2 | + | |
+ | ^ Version | ||
- | Pour utiliser les modulefiles, | + | | |
+ | | 8.6.3 | openmpi-3.0.0-gcc-7.2.0-fftw-3.3.6-mkl-2017.4 | ||
+ | | 8.10.3 | ||
+ | | 9.4.1 | openmpi-3.0.0-gcc-7.2.0-fftw-3.3.6-mkl-2017.4 | ||
- | {{INLINETOC}} | + | |
+ | |||
+ | Pour utiliser les modules, consulter [[documentation: | ||
===== Site officiel ===== | ===== Site officiel ===== | ||
Ligne 19: | Ligne 21: | ||
====== Script de soumission (exemple) ====== | ====== Script de soumission (exemple) ====== | ||
- | * Pour les files d' | ||
'' | '' | ||
<code bash parexemple.sh> | <code bash parexemple.sh> | ||
+ | |||
#!/bin/bash | #!/bin/bash | ||
- | ### shell du job: | ||
#$ -S /bin/bash | #$ -S /bin/bash | ||
- | ### nom du job: | + | # |
- | #$ -N pouet | + | #$ -N Test_13_5000K_snps3000 |
- | ### files d' | + | #$ -q E5_test |
- | #$ -q E5-2670deb64Z | + | #$ -pe test_debian 32 |
- | ### parallel environnement & nslots | + | # |
- | #$ -pe mpi16_debian 48 | + | ### charger |
- | ### charge | + | |
#$ -cwd | #$ -cwd | ||
- | ### exporte | + | ### exporter |
#$ -V | #$ -V | ||
+ | ### mails en debut et fin d' | ||
+ | #$ -m be | ||
+ | HOSTFILE=${TMPDIR}/ | ||
+ | cd ${SGE_O_WORKDIR} | ||
+ | # | ||
+ | ### configurer l' | ||
+ | module purge | ||
+ | module load ABINIT/ | ||
+ | PREFIX="/ | ||
+ | MPIRUN=" | ||
+ | # | ||
+ | $MPIRUN -v -x LD_LIBRARY_PATH -hostfile ${HOSTFILE} -np ${NSLOTS} abinit < a13_5000K_snps3000.files > a13_5000K_snps3000.log | ||
+ | # fin | ||
- | HOMEDIR=$SGE_O_WORKDIR | + | </ |
- | ## charge l' | + | ====== Tutoriel ABINIT " |
- | source / | + | |
- | module use / | + | |
- | module load Base/psmn | + | |
- | module load Abinit/ | + | |
- | HOSTFILE=$TMPDIR/machines | + | Plusieurs tutoriels sont proposés par ABINIT dans le répertoire share/abinit-test de chaque installation. |
+ | On peut suivre tous ces tutoriels, ci-dessous sont présentées les étapes pour suivre le tutoriel " | ||
- | cd $HOMEDIR | ||
- | mpirun -np $NSLOTS -hostfile $HOSTFILE abinit-mpi < in.file > out.log | + | * Rapatriement du tutoriel dans le compte utilisateur |
- | </code> | + | < |
- | ====== Doc admin-sys PSMN ====== | + | $ mkdir -p ~/ |
- | ===== build -mnative abinit 7.2.1 / openmpi | + | $ cp -a / |
- | :!: pose problème avec les librairies netcdf pré-installées sur l'OS | + | $ cp / |
- | < | ||
- | apt-get purge libnetcdf-dev netcdf-dbg libetsf-io-dev libhdf4-alt-dev libnetcdf-dev netcdf-dbg | ||
</ | </ | ||
+ | |||
+ | * Définition de l' | ||
<code bash> | <code bash> | ||
- | make clean | + | $ cd ~/Tests/tests_ABINIT/tutoparal_ABINIT-8.10.3/Input |
- | source /usr/local/modeles/set_debian7-clean.sh | + | $ module load ABINIT/8.10.3/openmpi-3.0.0-gcc-7.2.0-fftw-3.3.6-mkl-2017.4 |
- | source | + | |
- | ./ | + | |
- | make mj4 | + | |
</ | </ | ||
- | <note warning> | + | * Exécution de l' |
- | ===== build -mnative abinit 7.2.1 / openmpi 1.6.4 / gcc 4.7.2 / Debian7 ===== | + | |
- | :!: pose problème avec les librairies netcdf pré-installées sur l'OS | + | < |
- | + | $ mpirun | |
- | < | + | |
- | apt-get purge libnetcdf-dev netcdf-dbg libetsf-io-dev libhdf4-alt-dev libnetcdf-dev netcdf-dbg | + | |
</ | </ | ||
+ | * Exécution du calcul DFPT | ||
+ | |||
<code bash> | <code bash> | ||
- | make clean | + | $ cp tdfpt_01.o_WFK tdfpt_02.i_WFK |
- | source / | + | $ cp tdfpt_01.o_WFK tdfpt_02.i_WFQ |
- | source / | + | $ mpirun |
- | ./configure --prefix=/ | + | |
- | make mj4 | + | |
</ | </ | ||
- | <note warning> | + | A la fin de l' |
- | ===== build -mgeneric sse4a abinit 7.2.1 / full Debian7 (openmpi 1.4.5 / gcc 4.7.2 + libs) ===== | + | |
- | :!: pose problème avec les libetsf-io pré-installées sur l'OS | ||
- | <code> | + | <note> Les étapes précédents correspondent au premier cas test du tutoriel ; le second cas test peut être lancé de la même manière, mais étant donné le temps CPU important requis (plusieurs heures de calcul), il est préconisé de le lancer en mode Batch cf. ci-dessous </ |
- | apt-get purge etsf-io libetsf-io-dev | + | < |
- | </code> | + | |
- | <code bash> | + | * Lancement en mode Batch |
- | make clean | + | |
- | source / | + | |
- | OMPI_CC=/ | + | |
- | make mj4 | + | |
- | </ | + | |
- | <note tip> | + | Les étapes précédentes étant exécutées en mode Interactif, mais pour plus de rapidité et pour poursuivre les calculs en mode production, ces étapes sont à exécuter en mode Batch (soumission aux queues SGE), en soumettant un script de soumission classique ABINIT, comme suit : |
- | cible ''/ | + | |
- | modèle + module-env OK.</ | + | |
- | ===== build -mgeneric sse4a abinit 7.6.4 / full Debian7 (openmpi 1.4.5 / gcc 4.7.2 + libs) ===== | ||
- | |||
- | * build sequentiel | ||
<code bash> | <code bash> | ||
- | mkdir tmp-seq | ||
- | cd tmp-seq | ||
- | source / | ||
- | CFLAGS=" | + | $ qsub script_abinit |
- | make mj4 | + | où script_abinit contient : |
- | </ | + | |
- | * build openmpi | + | $ cat script_abinit |
+ | # | ||
+ | # | ||
+ | #$ -N Test # Job name | ||
+ | # | ||
+ | #### For testing | ||
+ | ####$ -q E5_test | ||
+ | #$ -q h48-E5-2670deb128 | ||
+ | ####$ -pe test_debian 32 | ||
+ | #$ -pe mpi16_debian 16 | ||
+ | ### charger l' | ||
+ | #$ -cwd | ||
+ | ### exporter les variables d' | ||
+ | #$ -V | ||
+ | ### mails en debut et fin d' | ||
+ | #$ -m be | ||
+ | HOSTFILE=${TMPDIR}/ | ||
+ | cd ${SGE_O_WORKDIR}/ | ||
+ | ### configurer l' | ||
+ | module purge | ||
+ | module load ABINIT/ | ||
+ | # | ||
+ | ### au besoin, forcer l'env OpenMPI | ||
+ | PREFIX="/ | ||
+ | MPIRUN=" | ||
+ | ## | ||
+ | ## | ||
+ | NSLOTS=4 | ||
+ | ###### First test | ||
+ | ## | ||
+ | $MPIRUN -v -x LD_LIBRARY_PATH -hostfile ${HOSTFILE} -np ${NSLOTS} abinit < tdfpt_01.files > tdfpt_01.log | ||
+ | cp tdfpt_01.o_WFK tdfpt_02.i_WFK | ||
+ | cp tdfpt_01.o_WFK tdfpt_02.i_WFQ | ||
+ | ## Test case, step 2 (DFPT calculation) | ||
+ | $MPIRUN -v -x LD_LIBRARY_PATH -hostfile ${HOSTFILE} -np ${NSLOTS} abinit < tdfpt_02.files > tdfpt_02.log | ||
+ | ## | ||
+ | ## | ||
+ | ###### Second test | ||
+ | ## | ||
+ | $MPIRUN -v -x LD_LIBRARY_PATH -hostfile ${HOSTFILE} -np ${NSLOTS} abinit < tdfpt_03.files > tdfpt_03.log | ||
+ | cp tdfpt_03.o_WFK tdfpt_04.i_WFK | ||
+ | cp tdfpt_03.o_WFK tdfpt_04.i_WFQ | ||
+ | ## Test case, step 2 (DFPT calculation) | ||
+ | $MPIRUN -v -x LD_LIBRARY_PATH -hostfile ${HOSTFILE} -np ${NSLOTS} abinit < tdfpt_04.files > tdfpt_04.log | ||
+ | # | ||
- | <code bash> | ||
- | mkdir tmp-mpi | ||
- | cd tmp-mpi | ||
- | source / | ||
- | OMPI_CC=/ | + | # fin |
- | + | ||
- | make mj4 | + | |
</ | </ | ||
- | <note tip> | + | |
- | cible ''/ | + |