| 39 | |
| 40 | == intégration de OpenMP dans libIGCM == |
| 41 | |
| 42 | Pour l'instant (30/05/2011), l'intégration de MPI/OpenMP n'a été réalisé que sur titane, et est en attente d'un tag libIGCM pour être |
| 43 | placée sur une branche libIGCM_AllPara. Les tests sont fait à partir de la config LMDZ4OR_v3 et continuerons avec IPSLCM5A. [[BR]] |
| 44 | Cette première version est accessible sur le chemin : [[BR]] |
| 45 | titane.ccc.cea.fr: /work/cont003/p86manci/LMDZ4_OR/libIGCM/ |
| 46 | |
| 47 | |
| 48 | Une modification simple du config.card |
| 49 | {{{ |
| 50 | [Executable] |
| 51 | Name=run_file |
| 52 | #D- For each component, Real name of executable, Name of executable for oasis |
| 53 | ATM= (gcm.e, lmdz.x, 8MPI, 4OMP) |
| 54 | SRF= ("", "") |
| 55 | SBG= ("", "") |
| 56 | }}} |
| 57 | permet dans cet exemple d'utiliser 8 processus MPI, chacun divisés en 4 tâches OpenMP. |
| 58 | |
| 59 | === Liste des tests recommandés pour valider le MPI/OpenMP === |
| 60 | |
| 61 | 1. compilation avec OpenMP (voir /work/cont003/p86manci/LMDZ4_OR_OMP/config/LMDZ4OR_v3/AA_Make) |
| 62 | 1. 8MPI + 1OMP = 1 noeud et 8processeurs |
| 63 | 1. 2MPI + 4OMP = 1 noeud et 8prc |
| 64 | 1. 8MPI + 4OMP = 4 noeuds et 32prc |
| 65 | 1. |
| 66 | 1. compilation sans OpenMP (voir /work/cont003/p86manci/LMDZ4_OR/config/LMDZ4OR_v3/AA_Make) |
| 67 | 1. 8MPI + "0OMP" = 1 noeuds et 8prc |
| 68 | |
| 69 | === Comment vérifier sur titane du bon fonctionnement de la parallélisation ? === |
| 70 | Vous allez dans le répertoire SCRATCH de vos simulation (si il est accessible). Par exemple : [[BR]] |
| 71 | /scratch/cont003/p86manci/LMDZOR/LOOMP32.5093 [[BR]] |
| 72 | Le fichier "hosts" contenu dans ce répertoire contien la liste des noeuds et le nombre des tâches par noeuds de calcul. [[BR]] |
| 73 | On peut alors se connecter en intéractif sur l'un des noeuds : > ssh titane107 [[BR]] |
| 74 | Et éxécuter la commande "top". Deux raccourcis sont à retenir pour visualiser les tâches sur l'ensembles des processus : |
| 75 | * "1" donne la visualisation de la charge de tous les coeurs |
| 76 | * "H" donne la visualisation des tâches dans la liste. |
| 77 | |
| 78 | |