Changes between Version 164 and Version 165 of ModipslBeginner
- Timestamp:
- 12/06/10 09:19:53 (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ModipslBeginner
v164 v165 79 79 === IDRIS === 80 80 * http://www.idris.fr/ 81 * les machines de l'IDRIS disponibles pour le couplé sont brodie (NEC SX-8) et vargas (IBM Power6). Pour vargas, voir informations là (Intranet ou ipsl/vivaipsl) : http://wiki.ipsl.jussieu.fr/Pole/Couple/Vargas81 * les machines de l'IDRIS disponibles pour le couplé sont brodie (NEC SX-8) et vargas (IBM Power6). Pour vargas, voir informations plus loin. 82 82 __Mémo des choses à faire sur un nouveau login à l'IDRIS pour pouvoir préparer et lancer une simulation :__ 83 83 * PATH sur brodie : ajouter l'accès à svn et fcm : … … 424 424 Si il y a un problème de compilation vous pouvez vous adresser au ''model manager''. Il est indiqué lors de la commande 425 425 {{{ 426 ./model -h IPSLCM5 _v2426 ./model -h IPSLCM5A 427 427 }}} 428 428 [[BR]] … … 460 460 461 461 ===== Présentation du répertoire d'expérience ===== 462 Dans le répertoire '''modipsl/config/IPSLCM5 _v2/''' vous trouverez 1 sous répertoire EXP00 [[BR]]462 Dans le répertoire '''modipsl/config/IPSLCM5A/''' vous trouverez 1 sous répertoire EXP00 [[BR]] 463 463 Ce répertoire contient les fichiers nécessaires pour lancer une simulation : 464 464 - un fichier config.card … … 555 555 LMDZ_Length_aero=12 556 556 }}} 557 * LMDZ_NbPeriod_adjust permet de définir combien de !PeriodLenght on veut utiliser au début d'une simulation pour créer le fichier Bands qui permet d'ajuster au mieux la parallélisation du code. Si jamais on souhaite utiliser un fichier pré-existant il faut indiquer LMDZ_NbPeriod_adjust=0 557 * LMDZ_NbPeriod_adjust permet de définir combien de !PeriodLenght on veut utiliser au début d'une simulation pour créer le fichier Bands qui permet d'ajuster au mieux la parallélisation du code. Si jamais on souhaite utiliser un fichier pré-existant il faut indiquer LMDZ_NbPeriod_adjust=0 et préciser le nom du fichier Bands à utiliser. Attention au nombre de proc et à la grille précisés dans ce nom. 558 558 559 559 {{{ … … 616 616 [[BR]] 617 617 618 ===== Temps d'execution du couplé IPSLCM5 _v2=====618 ===== Temps d'execution du couplé IPSLCM5A ===== 619 619 620 620 '''ORCA2xLMD9695-L39''' … … 650 650 ===== A retenir ===== 651 651 652 Par défaut, le couplé IPSLCM5 _v2, peut tourner sur un nombre quelconque de processeurs. Il crée lui-même le fichier Bands lors des 3 premiers mois de la simulation puis utilise celui du dernier mois. Il est possible d'utiliser le fichier Bands d'une autre simulation, voir paramétrage dans COMP/lmdz.card.652 Par défaut, le couplé IPSLCM5A, peut tourner sur un nombre quelconque de processeurs. Il crée lui-même le fichier Bands lors des 3 premiers mois de la simulation puis utilise celui du dernier mois. Il est possible d'utiliser le fichier Bands d'une autre simulation, voir paramétrage dans COMP/lmdz.card. 653 653 654 654 '''ATTENTION''' : Pour être certain d'obtenir les même résultats entre deux simulations il faut annuler l'ajustement et la création des fichiers Bands. Il faut utiliser pour les deux simulations le MÊME fichier Bands. … … 1022 1022 1023 1023 {{{ 1024 cd modipsl/config/IPSLCM5 _v21024 cd modipsl/config/IPSLCM5A 1025 1025 cp -pr EXP00 MONEXP 1026 1026 cd MONEXP … … 1116 1116 }}} 1117 1117 1118 ==== Lancer IPSLCM5 _v2sur la machine Titane (machine Xeon du CCRT) ====1118 ==== Lancer IPSLCM5A sur la machine Titane (machine Xeon du CCRT) ==== 1119 1119 1120 1120 * Etape préalable : assurez-vous que votre login est autorisé à tourner sur la machine titane à l'aide de la commande groups : … … 1124 1124 Si ce n'est pas le cas, demandez l'autorisation au CCRT en passant par votre responsable de projet. 1125 1125 1126 Les étapes à faire sont les mêmes que pour tourner le modèle IPSLCM5 _v2sur mercure, a ceci près :1126 Les étapes à faire sont les mêmes que pour tourner le modèle IPSLCM5A sur mercure, a ceci près : 1127 1127 1128 1128 * Avant la compilation ET l'exécution, il faut charger les modules nécessaires : … … 1229 1229 * Il faut avoir accès à subversion : {{{ module load svn }}} et à fcm : {{{ export PATH=/homegpfs/rech/psl/rpsl035/FCM/bin:$PATH }}} 1230 1230 * Compilation : 1231 * Avant toute compilation, il faut changer de compilateur, car la version courante fait planter le modèle entre 4 mois et 15 mois d'exécution : 1231 * N'oubliez pas de verifier que votre PATH contient bien le path pour l'outil FCM : /homegpfs/rech/psl/rpsl035/FCM/bin . Plus d'infos [wiki:ModipslBeginner#FCM là]. 1232 * il faut supprimer les 2 clés : "key_vectopt_loop key_vectopt_memory" dans config/IPSLCM5A/AA_make. Dans IPSLCM5A/AA_make.gdef (à faire avant ins_make) 1233 * il faut explicitement demander l'utilisation de 5 processeurs pour NEMO. 1232 1234 {{{ 1233 module switch fortran/12.1.0.4 fortran/12.1.0.3 ; module switch c++/10.1.0.3 c++/10.1.0.2 1234 }}} 1235 * N'oubliez pas de verifier que votre PATH contient bien le path pour l'outil FCM : /homegpfs/rech/psl/rpsl035/FCM/bin . Plus d'infos [wiki:ModipslBeginner#FCM là]. 1235 vi modipsl/modeles/NEMO/WORK/par_oce.F90 (lignes 29-31) 1236 jpni = 1, & !: number of processors following i 1237 jpnj = 5, & !: number of processors following j 1238 jpnij = 5 !: nb of local domain = nb of processors 1239 }}} 1236 1240 * Exécution : 1241 * modifier la répartition du nombre de process à lancer dans modipsl/libIGCM/libIGCM_sys/libIGCM_sys_vargas.ksh 1242 * Mettre -6 pour l'atmosphère (au lieu de -2) ligne 1092 1243 * Mettre 5 pour l'océan (au lieu de 1) ligne 1094 1244 * Dupliquer la ligne de lancement de opa.xx ligne 1113 et 1114 1245 {{{ 1246 (( NUM_PROC_ATM = BATCH_NUM_PROC_TOT - 3 )) 1247 ... 1248 NUM_PROC_OCE=2 1249 ... 1250 ./opa.xx 1251 ./opa.xx 1252 ./opa.xx 1253 ./opa.xx 1254 ./opa.xx 1255 ... 1256 }}} 1237 1257 * Attention! Préciser dans PARAM/run.def {{{ use_filtre_fft=n }}} 1238 1258 * Avant la génération du Job de soumission via la commande ./ins_job, il faut préciser le nombre de CPUs demandés dans le config.card en mettant la variable !JobNumProcTot à 32. Par défaut, cela signifie que la composante atmosphérique tournera sur 30 CPUs alors que la composante océanique et le coupleur utiliseront chacun 1 CPU. … … 1240 1260 JobNumProcTot=32 1241 1261 }}} 1242 * Attention! create_etat0_limit ne fonction enpas actuellement sur vargas. Il est compilé en parallèle (pour gagner du temps) et l'executable tourne sur le nombre de procs demandé par le job : 32 (ou 16). Comme ce n'est pas prévu dans ce0l, il s'arrête. Il faut donc partir d'un état initial créé autrement : autre simulation, ce0l executé ailleurs, ...1262 * Attention! create_etat0_limit ne fonctionne pas actuellement sur vargas. Il est compilé en parallèle (pour gagner du temps) et l'executable tourne sur le nombre de procs demandé par le job : 32 (ou 16). Comme ce n'est pas prévu dans ce0l, il s'arrête. Il faut donc partir d'un état initial créé autrement : autre simulation, ce0l executé ailleurs, ... 1243 1263 * Il faut également utiliser la commande adéquate de lancement. Décommenter la ligne suivante et supprimer l'ancienne valeur de !JobRunOptions dans config.card : 1244 1264 {{{ … … 1250 1270 }}} 1251 1271 * A noter, que les post-traitements s'effectueront sur la machine ulam. 1252 * Pour améliorer les performances :1253 * La configuration idéale est : 29 CPUs ATM, 2 CPUs OCE et 1 CPU pour Oasis.1254 * Pour activer cette configuration-là, deux étapes sont nécessaires :1255 * Compilation : recompiler NEMO pour qu'il tourne sur 2 process MPI en modifiant directement le code dans modipsl/modeles/NEMO/WORK/par_oce.F90 (lignes 29-31):1256 {{{1257 jpni = 1, & !: number of processors following i1258 jpnj = 2, & !: number of processors following j1259 jpnij = 2 !: nb of local domain = nb of processors1260 1261 cd modipsl/config/IPSLCM5 ; gmake1262 }}}1263 * Execution : modifier la répartition du nombre de process à lancer dans modipsl/libIGCM/libIGCM_sys/libIGCM_sys_vargas.ksh1264 * Mettre -3 pour l'atmosphère (au lieu de -2) ligne 10921265 * Mettre 2 pour l'océan (au lieu de 1) ligne 10941266 * Dupliquer la ligne de lancement de opa.xx ligne 1113 et 11141267 {{{1268 +1092 (( NUM_PROC_ATM = BATCH_NUM_PROC_TOT - 3 ))1269 ...1270 +1094 NUM_PROC_OCE=21271 ...1272 +1113 ./opa.xx1273 +1114 ./opa.xx1274 ...1275 }}}1276 1272 1277 1273 === Les post-traitements avec libIGCM ===