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édenteProchaine révisionLes deux révisions suivantes | ||
documentation:tools:cp2kmkl [2015/04/29 12:28] – [Etape de configuration] cicaluga | documentation:tools:cp2kmkl [2020/06/25 12:33] – suppression, as requested ltaulell | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Installations optimisées de CP2K ====== | ||
- | {{INLINETOC}} | ||
- | ===== Version la plus récénte compilée avec compilateurs Intel et MKL sur les systèmes Debian ===== | ||
- | |||
- | Il s'agit de la version du dépôt de développement CP2K (la plus complète au niveau des fonctionnalités). | ||
- | |||
- | L' | ||
- | |||
- | ==== Environnement de travail ==== | ||
- | |||
- | Il faut d' | ||
- | |||
- | <code bash> | ||
- | $ source / | ||
- | $ source / | ||
- | $ module use / | ||
- | $ module load Base/psmn | ||
- | $ module load openmpi/ | ||
- | </ | ||
- | |||
- | ==== Download CP2K ==== | ||
- | |||
- | <code bash> | ||
- | $ svn checkout svn:// | ||
- | | ||
- | ... | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | ==== Etape de " | ||
- | |||
- | <code bash> | ||
- | $ cd cp2k-devel-cic/ | ||
- | </ | ||
- | |||
- | Modifier le fichier de configuration Linux-x86-64-intel-MKL.popt comme suit, afin de prendre correctement en compte les composantes BLAS, LAPACK et FFT de MKL (avec l' | ||
- | |||
- | <code bash> | ||
- | $ cat Linux-x86-64-intel-MKL.popt | ||
- | # | ||
- | # | ||
- | CC = cc | ||
- | CPP = | ||
- | FC = mpif90 | ||
- | LD = mpif90 | ||
- | AR = ar -r | ||
- | |||
- | MKLROOT=/ | ||
- | INTEL_LIB = $(MKLROOT)/ | ||
- | LIBXC_DIR = / | ||
- | |||
- | CPPFLAGS = | ||
- | DFLAGS | ||
- | | ||
- | CFLAGS | ||
- | |||
- | FCFLAGS | ||
- | | ||
- | FCFLAGS2 | ||
- | | ||
- | FCFLAGS3 | ||
- | | ||
- | |||
- | LDFLAGS | ||
- | |||
- | LIBS = $(INTEL_LIB)/ | ||
- | -L${INTEL_LIB} -lmkl_blas95_lp64 \ | ||
- | -L${INTEL_LIB} -lmkl_lapack95_lp64 \ | ||
- | -Wl, | ||
- | $(INTEL_LIB)/ | ||
- | $(INTEL_LIB)/ | ||
- | $(INTEL_LIB)/ | ||
- | -lpthread -lm \ | ||
- | -L$(LIBXC_DIR)/ | ||
- | |||
- | |||
- | OBJECTS_ARCHITECTURE = machine_intel.o | ||
- | |||
- | graphcon.o: graphcon.F | ||
- | $(FC) -c $(FCFLAGS2) $< | ||
- | |||
- | qs_vxc_atom.o: | ||
- | $(FC) -c $(FCFLAGS2) $< | ||
- | </ | ||
- | |||
- | ==== Etape de " | ||
- | |||
- | <code bash> | ||
- | $ cd ../ | ||
- | $ make -j 4 ARCH=Linux-x86-64-intel-MKL VERSION=popt | ||
- | </ | ||
- | |||
- | Cette étape peut durer quelques dizaines de minutes (un café bien mérité est possible ...). | ||
- | |||
- | Le binaire est ainsi généré : $HOME/ | ||
- | |||
- | ==== Test de l' | ||
- | |||
- | On peut lancer un test rapide fourni dans CP2K directement sur le serveur de compilation : | ||
- | |||
- | <code bash> | ||
- | $ cd ../ | ||
- | $ mpirun -np 2 $HOME/ | ||
- | </ | ||
- | |||
- | Regarder par exemple le temps total (2.9 s pour le cas présent) | ||
- | |||
- | ==== Test en conditions de production ==== | ||
- | |||
- | Plusieurs jobs ont été exécutés sur des configurations fournies par des utilisateurs PSMN en utilisant les queues de production E5-2670. Les résultats ont montré un gain du temps de calcul par un facteur entre 5 et 6 par rapport aux installations génériques. |