Opened 5 years ago
Last modified 5 years ago
#348 new defect
problème init/ksh
Reported by: | jgipsl | Owned by: | somebody |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | system | Version: | |
Keywords: | Cc: |
Description
Problème initiale
Le changeset [1515] a été fait car avec libIGCM, nous obtenons les messages d'erreurs comme indiqué dans le commit. Suite aux echange avec l'assist IDRIS ticket [idris.fr #40848], ils nous ont dit:
Le problème vient de la ligne suivante qui charge la version de module distribuée avec le système mais qui n'est pas celle que nous utilisons : . /usr/share/Modules/init/ksh Si vous avez vraiment besoin d'initialiser la commande module, vous devez utiliser la ligne suivante à la place : . /gpfslocalsup/spack_soft/environment-modules/4.3.1/gcc-4.8.5-ism7cdy4xverxywj27jvjstqwk5oxe2v/init/ksh Notez que nous ne supportons plus officiellement "ksh" donc certaines fonctionnalités sont susceptibles de ne plus fonctionner.
Dans un 2eme email, ils ont dit d'utiliser le chemin /gpfslocalsup/spack_soft/environment-modules/current/init/ksh qui est un lien vers celui d'en haut. C'est donc le chemin mise dans commit 1515.
=> J'ai fait des tests uniqumenet avec ORCHIDEE offline (31MPI orchidee + 1MPI server) qui ont très bien marché.
Problème suite au changement au dessus
Il s'avere que cette commit [1515] fait planter dans la fonction IGCM_comp_modifyDefFile sur jean-zay si on est avec executaionType=2 (MPMD hydrid, cas classique pour LMDZOR). Avec executionType=1 (MPI seul avec 2 executable, classique ORCHIDEE offline), ca marche par contre.
En mode hybrid on a maintenant l'erreur suivante:
2020-02-14 08:45:54 --Debug1--> Entering IGCM_comp_modifyDefFile with arguments: blocker run.def raz_date 1 grep: config.def gcm.def guide.def physiq.def run.def traceur.def vert.def: No such file or directory IGCM_debug_Exit : IGCM_comp_modifyDefFile : Error in run.def: Variable=raz_date has been removed but this function is blocker.
C'est la ligne suivant qui fait planter (j'ai l'impression que les commands ne sont pas fait dans le bon ordre):
nb_occ=$( grep -w ${key} ${filelist} | grep -v "#" | wc -l )
J'ai trouvé 2 choses qu'on peut faire pour que IGCM_comp_modifyDefFile fonctionne correctement:
- revert du commit 1515, on utilise donc le vieux chemin init/ksh, on obtient des messages d'erreurs du module mais charge quand meme les modules qu'on veut et ca tourne.
- ou on comment les 3 lignes suviants (dans section executionType=2), mais evidement le job ne peut pas tourner sans cela mais IGCM_comp_modifyDefFile se comporte correctement :
IFS=$'\n'; set -f listnodes=($(< <( scontrol show hostnames $SLURM_JOB_NODELIST ))) unset IFS ; set +f
Change History (3)
comment:1 Changed 5 years ago by jgipsl
comment:2 Changed 5 years ago by rpennel
/gpfslocalsup/spack_soft/environment-modules/current/init/ksh modifie la valeur de IFS.
Donc au lieu de faire unset IFS après avoir fini la liste des noeuds de calcul reservés, je propose de sauvegarder la valeur initiale de IFS, de la changer à \n pour les besoins de listnodes puis de remettre la valeur sauvegardée de IFS.
comment:3 Changed 5 years ago by rpennel
a priori resolu avec commit [1530]
Commit [1515] est refait temporairement ici [1517]. On peut donc utiliser le HEAD du libIGCM/trunk aussi sur jean-zay. Mais il faudrait creuser le probleme quand meme. Je n'ai pas pour l'instant réussi a faire un cas test simple pour l'assistance.