Version 19 (modified by mafoipsl, 13 years ago) (diff) |
---|
Utiliser Modipsl sur titane
Index/Environnement de Calcul/Titane
Environnement minimum
- Vous devez charger explicitement la bonne bibliothèque NetCDF. Pour cela il faut faire la commande :
module load netcdf/3.6.3
Vous pouvez également la rajouter dans votre environnement.
- Vérifiez que votre PATH contient bien le path pour l'outil FCM. Plus d'infos là.
Commandes de gestion de job
- ccc_msub -> soumet un job
- ccc_mdel ID -> tue un job de n° ID
- ccc_mstat -u login -> permet de voir tous les jobs soumis par login
- mpp -> permet de voir tous les jobs soumis sur la machine
Avant de lancer un Job
Modifier la limite de temps CPU
Dans le Job n'oubliez pas de modifier la limite de temps CPU demandée
#MSUB -T 1800 # Limite temps (en secondes)
Note 1: Pour connaître les temps autorisés sur les différentes queues de la machine vous pouvez utiliser la commande class.
Note 2: La machine titane n'a pas de tmpdir, la simulation tourne donc sur le scratchdir dans le répertoire RUN_DIR (doit être modifié prochainement)
Choisir son groupe de soumission
Par défaut les entêtes de Job créés par modipsl sont positionnées pour utiliser les heures genci du groupe gen2211.
La première chose que vous devez faire c'est de vous demander sur quel compte vous avez des heures de calcul (genci ou dsm ?). Pour cela
vous devez vous reporter à la demande d'heures de calcul faite en début d'année.
- Si vous appartenez au groupe gen2211 et que vous avez des heures sur ce projet vous n'avez rien à changer.
- Si vos heures sont sur un autre projet genci vous devez modifier le numéro de projet dans le fichier libIGCM/AA_job ainsi que dans libIGCM/AA_rebuild_fromWorkdir.
- Si vos heures sont sur les projets dsm (p24, p86, etc...) vous devez enlever les lignes #MSUB -p gen2211 des fichiers libIGCM/AA_job et libIGCM/AA_rebuild_fromWordir. Et dans ce dernier cas, remplacer la queue mono par monoext
Note 1: si vous aviez déjà lancé la commande ./ins_job vous devez également modifier les jobs créés (libIGCM/rebuild_fromWorkdir.job et config/.../EXP.../Job...)
Note 2: pour connaître les groupes auxquels vous appartenez vous pouvez utiliser la commande groups
Comment choisir le nombre de processus demandés ?
La méthode de parallélisation de LMDZ impose la règle suivante : il faut au moins 3 bandes de latitude par processus Si vous avez choisi un trop grand nombre de processus la simulation s'arrête avec le message suivant :
Arret : le nombre de bande de lattitude par process est trop faible (<2). ---> diminuez le nombre de CPU ou augmentez la taille en lattitude
Pour modifier le nombre de processus il faut changer la valeur de la variable JobNumProcTot dans config.card avant de lancer la commande ins_job.
Soumission du Job
ccc_msub Job_nom_simul
Running
Les simulations sont lancées sur le scratchdir $SCRATCHDIR/RUN_DIR/.... ou $SCRATCHDIR/$CONFIG/... (suivant les versions de libIGCM). Il faut donc faire très attention aux quotas si l'on lance plusieurs simulations simultanées.
Les post-traitements
Les rebuild se font sur la queue mono de titane, et les autres post-traitements sur la machine cesium.
Rappel : Pour que cela marche il faut avoir créé des clés avec une passphrase vide pour ssh et s'être connecté sur cesium au moins une fois.
(Attention, si vous vous servez pour vos connexions de clés ssh déjà générées avec des passphrases non vides de ne pas les écraser.)
Mémo :
mercure : cd ~/.ssh mercure : ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/cont003/xxxxxx/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (RETURN) Enter same passphrase again: (RETURN) Your identification has been saved in ...../.ssh/id_rsa. Your public key has been saved in ...../.ssh/id_rsa.pub. The key fingerprint is: af:.... mercure : cat id_rsa.pub >>authorized_keys mercure : ssh cesium
Les messages de fin de job
Pour recevoir les messages de fin de job envoyés par le job de calcul lui-même : fin de simulation, plantage, .... il faut :
- être dans le groupe platine. Le vérifier par la commande groups.
- avoir mis une clé ssh vide.
Compiler le modèle IPSLCM5A
Depuis décembre 2011, le couplé IPSLCM5A compile sans aucune modification sur titane.
Faire une simulation avec le modèle IPSLCM5A
- Si vous travaillez sur 32 processus (JobNumProcTot=32) cela signifie que la composante atmosphérique tournera sur 26 CPUs alors que la composante océanique sur 5 CPUs et le coupleur oasis une seule. C'est ce qui se passe par défaut.
- Execution Cas particulier : si vous souhaitez faire utiliser à votre NEMO parallèle un restart généré par un NEMO mono-processeur, alors il faut forcer une resoumission (ccc_msub) apres le 1er run de la simulation. Pour cela :
- mettre PeriodNb=1 dans votre Job ; ccc_msub Job
- une fois le 1er run en machine, remettre PeriodNb=48