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 | ||
| developpement:activites:integration:lammps4wheezy [2013/05/23 09:48] – [Téléchargement & préparation] equemene | developpement:activites:integration:lammps4wheezy [2013/11/11 03:25] (Version actuelle) – equemene | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| * [[developpement: | * [[developpement: | ||
| - | ====== Installation de LAMMPS sur Debian Wheezy ====== | + | ====== Installation de LAMMPS |
| + | |||
| + | <note important> | ||
| Lammps est disponible en [[http:// | Lammps est disponible en [[http:// | ||
| Lammps est également disponible dans sa [[http:// | Lammps est également disponible dans sa [[http:// | ||
| - | |||
| - | Il peut cependant être nécessaire de le recompiler soi-même pour dans le cadre d' | ||
| ===== Préparation du système ===== | ===== Préparation du système ===== | ||
| < | < | ||
| - | apt-get install gfortran g++ libquadmath0 libblas3 liblapack3 libgfortran3 liblapack-dev | + | apt-get install |
| </ | </ | ||
| + | |||
| ===== Téléchargement | ===== Téléchargement | ||
| <note important> | <note important> | ||
| + | Alors, à l' | ||
| + | |||
| + | Par la récupération de l' | ||
| - Récupération de la [[http:// | - Récupération de la [[http:// | ||
| wget -m -nd http:// | wget -m -nd http:// | ||
| - Ouverture de l' | - Ouverture de l' | ||
| - | tar xvf / | + | tar xzf / |
| - | - Changement des droits : < | + | - Changement des droits : < |
| - | - Etablissement d'un lien générique : < | + | - Etablissement d'un lien générique : < |
| - | - Passer dans l'archive | + | ln -sf $(tar tzf / |
| + | |||
| + | |||
| + | Par la récupération de l' | ||
| + | - Récupération de l'arbre SVN sur le site de Sandia | ||
| + | svn co svn://svn.icms.temple.edu/ | ||
| + | - Etablissement d'un lien générique : < | ||
| + | ln -sf lammps-$(date " | ||
| + | |||
| + | La suite, c'est commun : | ||
| + | - Passer dans l' | ||
| - Paramétrer une variable de racine pour Lammps : < | - Paramétrer une variable de racine pour Lammps : < | ||
| - Préparer le MPI local :< | - Préparer le MPI local :< | ||
| Ligne 30: | Ligne 44: | ||
| make | make | ||
| </ | </ | ||
| - | |||
| ===== Préparation des librairies connexes | ===== Préparation des librairies connexes | ||
| - | - Préparer les librairies complémentaires :< | + | - Compilation de la librairie MEAM:< |
| - | # Compilation de la librairie MEAM | + | |
| cd $LAMMPSROOT/ | cd $LAMMPSROOT/ | ||
| make -f Makefile.gfortran clean | make -f Makefile.gfortran clean | ||
| make -f Makefile.gfortran | make -f Makefile.gfortran | ||
| mv Makefile.lammps Makefile.lammps.intel | mv Makefile.lammps Makefile.lammps.intel | ||
| - | ln -s Makefile.lammps.gfortran Makefile.lammps | + | ln -s Makefile.lammps.gfortran Makefile.lammps</ |
| - | + | | |
| - | # Compilation de la librairie | + | |
| cd $LAMMPSROOT/ | cd $LAMMPSROOT/ | ||
| make -f Makefile.g++ clean | make -f Makefile.g++ clean | ||
| - | make -f Makefile.g++ | + | make -f Makefile.g++</ |
| - | + | | |
| - | # Compilation de la librairie POEMS | + | |
| cd $LAMMPSROOT/ | cd $LAMMPSROOT/ | ||
| make -f Makefile.g++ clean | make -f Makefile.g++ clean | ||
| - | make -f Makefile.g++ | + | make -f Makefile.g++</ |
| - | + | | |
| - | # Compilation de la librairie REAX | + | |
| cd $LAMMPSROOT/ | cd $LAMMPSROOT/ | ||
| make -f Makefile.gfortran clean | make -f Makefile.gfortran clean | ||
| make -f Makefile.gfortran | make -f Makefile.gfortran | ||
| mv Makefile.lammps Makefile.lammps.intel | mv Makefile.lammps Makefile.lammps.intel | ||
| - | ln -s Makefile.lammps.gfortran Makefile.lammps | + | ln -s Makefile.lammps.gfortran Makefile.lammps |
| - | + | | |
| - | # Compilation de la librairie AWPMD | + | sed -i " |
| - | cd $LAMMPSROOT/ | + | |
| make -f Makefile.openmpi clean | make -f Makefile.openmpi clean | ||
| make -f Makefile.openmpi | make -f Makefile.openmpi | ||
| - | |||
| </ | </ | ||
| - | - Compiler les éléments indispensables pour exécuter les exemples :< | + | |
| + | ===== Activation des modules ===== | ||
| + | |||
| + | Compiler les éléments indispensables pour exécuter les exemples :< | ||
| # activation de tous les modules | # activation de tous les modules | ||
| make yes-all | make yes-all | ||
| # suspension d'un module très specifique | # suspension d'un module très specifique | ||
| - | make no-gpu | ||
| make no-user-cuda | make no-user-cuda | ||
| - | # suspension | + | # suspension |
| make no-voronoi | make no-voronoi | ||
| make no-user-reaxc | make no-user-reaxc | ||
| make no-kim | make no-kim | ||
| + | make no-user-omp | ||
| + | make no-gpu | ||
| </ | </ | ||
| Ligne 81: | Ligne 92: | ||
| < | < | ||
| - | |||
| cd $LAMMPSROOT/ | cd $LAMMPSROOT/ | ||
| sed -e ' | sed -e ' | ||
| Ligne 88: | Ligne 98: | ||
| </ | </ | ||
| - | === Compilation | + | === Compilation |
| < | < | ||
| cd $LAMMPSROOT/ | cd $LAMMPSROOT/ | ||
| + | make yes-asphere | ||
| + | make yes-kspace | ||
| # lancer la compilation | # lancer la compilation | ||
| make serial | make serial | ||
| </ | </ | ||
| - | Si la compilation est réussie, un exécutable | + | Si la compilation est réussie, un exécutable '' |
| ===== Compilation avec FFTW ===== | ===== Compilation avec FFTW ===== | ||
| - | Installation préliminaire | + | === Installation préliminaire |
| < | < | ||
| sudo apt-get install -y fftw3 fftw-dev | sudo apt-get install -y fftw3 fftw-dev | ||
| </ | </ | ||
| - | Importation du Makefile [[http://www.cbp.ens-lyon.fr/emmanuel.quemener/software/ | + | |
| - | cp Makefile.serial Makefile.fftw | + | === Preparation de la librairie ATC couplée |
| + | |||
| + | < | ||
| + | cd $LAMMPSROOT/lib/atc | ||
| + | sed -e 's/\-O\ \-g/\-O\ \-g \-fpermissive/' -i~ Makefile.serial | ||
| + | make -f Makefile.serial clean | ||
| + | make -f Makefile.serial | ||
| + | </code> | ||
| + | |||
| + | === Préparation du Makefile === | ||
| + | |||
| + | < | ||
| + | cp Makefile.serial Makefile.cuda_fftw | ||
| sed -i " | sed -i " | ||
| sed -i " | sed -i " | ||
| + | cd $LAMMPSROOT/ | ||
| + | make yes-asphere | ||
| + | make yes-kspace | ||
| </ | </ | ||
| - | Compilation | + | === Compilation |
| - | < | + | |
| - | make fftw</ | + | < |
| + | # lancer la compilation | ||
| + | make fftw | ||
| + | </ | ||
| + | |||
| + | Si la compilation est réussie, un exécutable '' | ||
| - | Si la compilation est réussie, un exécutable statique '' | ||
| ===== Compilation avec FFTW et OpenMPI ===== | ===== Compilation avec FFTW et OpenMPI ===== | ||
| - | Installation préliminaire | + | === Installation préliminaire |
| < | < | ||
| sudo apt-get install -y libopenmpi-dev openmpi-bin libopenmpi1.3 openmpi-common | sudo apt-get install -y libopenmpi-dev openmpi-bin libopenmpi1.3 openmpi-common | ||
| - | sudo apt-get install -y fftw3 fftw-dev | + | sudo apt-get install -y libfftw3-3 |
| </ | </ | ||
| - | Importation | + | === Préparation |
| + | |||
| + | < | ||
| cd $LAMMPSROOT/ | cd $LAMMPSROOT/ | ||
| cp Makefile.serial Makefile.mpic++ | cp Makefile.serial Makefile.mpic++ | ||
| sed -i " | sed -i " | ||
| sed -i " | sed -i " | ||
| - | |||
| make -f Makefile.mpic++ clean | make -f Makefile.mpic++ clean | ||
| make -f Makefile.mpic++ | make -f Makefile.mpic++ | ||
| </ | </ | ||
| - | Importation | + | === Préparation |
| - | sed -i "s/\-lfftw/ | + | |
| - | Compilation | + | < |
| + | sed -i "s/mpic++/mpic++.openmpi/ | ||
| + | sed -i "s/FFT_INC\ =/FFT_INC\ =\ -DFFT_FFTW3/g" Makefile.openmpi | ||
| + | sed -i "s/FFT_LIB\ =/FFT_LIB\ =\ -lfftw3/ | ||
| + | cd $LAMMPSROOT/ | ||
| + | make yes-asphere | ||
| + | make yes-kspace | ||
| + | </ | ||
| + | |||
| + | === Compilation | ||
| + | |||
| < | < | ||
| - | make openmpi</ | + | make -j 4 openmpi</ |
| + | |||
| + | Si la compilation est réussie, un exécutable '' | ||
| - | Si la compilation est réussie, un exécutable statique '' | ||
| ===== Vérification de fonctionnement ===== | ===== Vérification de fonctionnement ===== | ||