Tests Ada
Tests sur ada la nouvelle machine de l'Idris
Série de simulations de 5 ans AMIP, ancienne/nouvelle physique sur ada, la nouvelle machine de l'Idris.
Le but est essentiellement de trouver les bonnes options de compilations à utiliser, puis de les tester sur un petit run, et de valider le comportement de la machine.
On utilise libIGCM et donc makelmdz_fcm
avec dans le arch.fcm, (en gros seule la ligne %PROD_FFLAGS va changer d'une
%COMPILER mpiifort %LINK mpiifort %AR ar %MAKE gmake %FPP_FLAGS -P -traditional %FPP_DEF NC_DOUBLE BLAS SGEMV=DGEMV SGEMM=DGEMM FFT_FFTW %BASE_FFLAGS -integer-size 32 -real-size 64 -align all %DEV_FFLAGS -p -g -O1 -fpe0 -traceback %DEBUG_FFLAGS -p -g -O0 -no-ftz -traceback -ftrapuv -fp-stack-check -check -fpe0 %MPI_FFLAGS %OMP_FFLAGS -openmp %BASE_LD -shared-intel -mcmodel=large -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread -L/smplocal/pub/FFTW/3.3.3/lib -lfftw3 %MPI_LD %OMP_LD -openmp
Liste des simulations:
Toutes les simulations ont tourné en MPI sur 32 processseurs
AMIPADA01
- ancienne physique
- options de compilation utilisée:
%PROD_FFLAGS -O3 -ip
- la simulation a tourné sans FFT
use_filtre_fft=n
dans run.def
- temps d'exécution par mois:
real CPU time (par proc) | elapsed |
570s | 9m30s |
- L'atlas des 5 ans de la simulation
AMIPADA02
- ancienne physique
- options de compilation utilisée:
%PROD_FFLAGS -O3 -ip -fp-model precise -axAVX,SSE4.2
- la simulation a tourné sans FFT
La simulation tourne mais les fichiers histoire sont remplis de Nan, certains champs ont l'air bon ....
AMIPADA03
- même que AMIPADA01
- nouvelle physique
- la simulation a tourné sans FFT
- temps d'exécution par mois:
real CPU time (par proc) | elapsed |
1345s | 20m |
- L'atlas des 5 ans de la simulation
AMIPADA04
- même que AMIPADA02
- nouvelle physique
- la simulation a tourné sans FFT
La simulation tourne mais les fichiers histoire sont remplis de Nan, certains champs ont l'air bon ....
AMIPADA10
- ancienne physique
- compilation en mode debug
- options de compilation utilisée:
%%DEBUG_FFLAGS -p -g -O0 -fpe-all=0 -traceback -ftrapuv -fp-stack-check -check all -debug -fp-model strict
- simulation sans FFT
La simulation plante sur
ERROR: 0031-250 task 16: Floating point exception
sans traceback (???)
AMIPADA11
- ancienne physique
- compilation en mode dev
- options de compilation utilisée:
%DEV_FFLAGS -p -g -O1 -fpe0 -traceback
- simulation sans FFT
La simulation plante sur
ERROR: 0031-250 task 6: Floating point exception forrtl: error (78): process killed (SIGTERM) Image PC Routine Line Source libpthread.so.0 00002B9F9152C245 Unknown Unknown Unknown libpoe.so 00002B9F961E5B22 Unknown Unknown Unknown libpthread.so.0 00002B9F915247F1 Unknown Unknown Unknown libc.so.6 00002B9F94AEA70D Unknown Unknown Unknown forrtl: error (78): process killed (SIGTERM) ...
AMIPADA12
- ancienne physique
- options de compilation utilisée:
%PROD_FFLAGS -O2 -ip -fp-model strict -axAVX,SSE4.2
- la simulation tourne sans FFT
- temps d'exécution par mois:
real CPU time (par proc) | elapsed |
de 570 à 690 s | ~ 11m30s |
- L'atlas des 5 ans de la simulation
AMIPADA13
- ancienne physique
- options de compilation utilisée:
%PROD_FFLAGS -O3 -ip -fp-model strict -axAVX,SSE4.2
- la simulation tourne sans FFT
- temps d'exécution par mois:
real CPU time (par proc) | elapsed |
de 580 à 620 s | ~10 min |
- L'atlas des 5 ans de la simulation
AMIPADA14
- nouvelle physique
- AMIPADA12 sans FFT
- temps d'exécution par mois:
real CPU time (par proc) | elapsed |
de 1218 à 1410 s | ~ 22 min |
- L'atlas des 5 ans de la simulation
AMIPADA15
- ancienne physique
- AMIPADA12 avec FFTW
- temps d'exécution par mois:
real CPU time (par proc) | elapsed |
entre 560 et 620 s | ~ 10 min |
- L'atlas des 5 ans de la simulation
AMIPADA16
- ancienne physique
- AMIPADA12 avec FFT_mkl, problèmes de compilation, ne trouve pas les modules mkl
- temps d'exécution par mois:
real CPU time (par proc) | elapsed |
- L'atlas des 5 ans de la simulation
Conclusions préliminaires
- Utiliser l' option
-fp-model strict
en utilisant l'option -fp-model precise, le modèle semble tourner mais produit des résultats difficilement compréhensibles (NaN sur la plupart des champs)
- l'option
-axAVX,SSE4.2
ne semble rien apporter pour l'instant (AMIPADA01 prend moins de temps que AMIPADA12, peut-être l'effet du fp-model, à tester ...)
- pas de grosses différences constatées entre les optimisations -O2 et -O3