FAQ¶
Question fréquentes :
- Table of contents
- FAQ
- Questions générales
- connexion au cluster
- Slurm
- Comment soumettre un job batch ?
- Lancer des calculs sur les frontaux :
- Mon job a planté. Pourquoi ?
- Impossible de se connecter aux nœuds alloués pour mon job
- Mon job ne démarre pas alors qu'il y a suffisamment de ressources libres
- Mon job ne démarre pas...
- Je veux faire un test rapide sans attendre des heures
- Fichiers
- Logiciels
Questions générales¶
Comment obtenir un compte sur le cluster ?¶
Les instructions sont ici : Guide de l'utilisateur
J'ai un problème sur le cluster, que faire ?¶
Vous pouvez :- Chercher dans la documentation en ligne : le bouton "recherche" en haut à droite de cette même page
- Déposer une demande (un ticket d'incident) sur le présent site
Pour les deux dernières opérations, il faut disposer d'un compte et s'identifier sur le site (bouton "connexion" en haut à droite)
Remarque : lorsque que vous rencontrez un problème avec un job et que vous soumettez un ticket, pensez a fournir :- la commande de soumission de job
- le script de soumission du job
- les fichiers de sorties du job (output et error)
J'ai perdu / je veux changer mon mot de passe¶
La marche à suivre est décrite dans ces pages : https://redmine.mcia.fr/projects/cluster-curta/wiki/Comptes_Utilisateurs
Je n'arrive pas à me connecter dans l'interface web Redmine¶
Il est possible que vous n'utilisiez pas la bonne méthode d'authentification. Vous devez cliquer sur le bouton vert "authentification CAS".
Vérifiez bien que vous suivez la procédure décrite ici : Guide_de_l'utilisateur
connexion au cluster¶
Guide_de_l'utilisateur#Se-connecter-à-Curta
Comment se connecter sur le cluster à partir d'un poste de travail sous linux ?¶
Utilisez le programme SSH
$ ssh username@curta.mcia.fr
Comment se connecter sur le cluster à partir d'un poste de travail sous Windows ?¶
Utilisez un logiciel de connexion ssh comme PUTTY
Comment transférer des données vers Curta ?¶
via scp:
scp [username@]host1:]<fich_source> ... [[username@]host2:]<fich_destination>
transférer un fichier du host local vers Curta :
scp toto_local.txt username@curta.mcia.fr:/home/username/toto_curta.txt
transférer un répertoire du host local vers Curta :
scp -r <nom_du_répertoire> username@curta.mcia.fr:/chemin/<repertoire_destination>
ou username correspond au login utilisateur sur Curta.
Cette commande (executée sur votre machine) va copier le fichier toto_local.txt (resp. nom_du_repertoire) sur curta en /home/username/toto_curta.txt (resp. <repertoire_destination>)
via sftp (Linux):
En ligne de commande :
Pour se connecter de la machine local au répertoire distant /home/username/<rep_sur_curta> sur la machine distante Curta.
$ sftp username@curta.mcia.fr:<rep_sur_curta>
- pour récupérer un fichier <file_distant> du répertoire distant /home/username/<rep__sur_curta> et le mettre sur votre machine local :
$ get <file_distant>
- pour déposer un fichier <file_local> de la machine local et le mettre dans le répertoire distant /home/username/<rep__sur_curta> de Curta :
$ put <file_local>
idem pour les répertoires seulement rajouter l'option -r
En utilisant l'interface graphique Nautilus (Dossier home) ou le navigateur firefox :
Avec Nautilus :
Dans la rubrique Aller à choisissez Emplacement ou simplement utiliser le raccourci Ctrl ^L, dans le champ emplacement taper la commande ci-dessous :
sftp://username@curta.mcia.fr/home/username/
Après identification, vous aurez votre répertoire home distant ouvert sur la machine local.
Avec firefox vous entrez la barre d'adresse :
sftp://username@curta.mcia.fr/home/username/
via rsync (Linux):
rsync est programme qui permet d'effectuer une synchronisation entre deux répertoires, que ce soit du même PC local ou de entre ordinateurs PCs/serveurs distants reliés en réseau.
- local : pour synchroniser deux dossiers rep1 et rep2 :
rsync -arv rep1/ rep2/
Avec :
-a : conserve toutes les informations sur les fichiers, comme les droits (chmod), la date de modification, ...; -r : mode récursif, sauvegarde aussi tous les sous-dossiers du dossiers source; -v : mode verbeux.
- distant : entre un dossier local rep1 et un dossier distant rep2
$ rsync -arv rep1/ login@serveur:/chemin_vers_rep2/
NB : Par défaut, rsync ne supprime pas les fichiers dans le répertoire de copie.
Si vous voulez lui demander de le faire, pour que le contenu soit strictement identique,
rajoutez --delete (pour plus de détails faites un man rsync en ligne de commande)
Sous Windows vous pouvez utiliser les outils comme gftp ou WinScp.
Slurm¶
Comment soumettre un job batch ?¶
La commande sbatch permet de soumettre un script pour une exécution batch dans le gestionnaire de travaux Slurm.
Lancer des calculs sur les frontaux :¶
Le calcul sur les nœuds frontaux est déconseillé, dans le sens où cela pourrait gêner les autres utilisateurs.
C'est pour cela qu'il y a une limitation système :
- Le temps maximum d'utilisation d'un CPU à 100%, par une application/exécutable, est limité à 2 heures.
- Le nombre maximum de processus ouverts en même temps, par une application/exécutable, est limité à 300.
Mon job a planté. Pourquoi ?¶
La commande sacct donne des informations sur votre job.
sacct -j <jobid>
Pour avoir toutes les informations disponibles (mais c'est dur à lire) :
sacct -j <jobid> -al
Impossible de se connecter aux nœuds alloués pour mon job¶
C'est ici: Se connecter quand même aux nœuds pendant un job
Mon job ne démarre pas alors qu'il y a suffisamment de ressources libres¶
Cela se produit généralement :- si le démarrage de votre job devait violer une limite cf Configuration_Scheduler
- quand il y a au moins un job plus prioritaire qui demande plus de ressources que ce qui est actuellement libre. Votre job - moins prioritaire - ne peut démarrer car il retarderait les jobs plus prioritaires.
Dans le deuxième cas, vous pouvez contrôler les priorités des jobs en attente avec :
squeue --sort=-p --state=PENDING
ou, pour une file spécifique (gpu ici)
squeue -p gpu --sort=-p --state=PENDING
Mon job ne démarre pas...¶
Pour que vos jobs démarrent :- maintenant : il vous suffit de réduire/ajuster au minimum nécessaire - si possible et pertinent - les ressources que vous demandez (temps, nb nœuds/cœurs, mémoire, ...) pour pouvoir utiliser les ressources actuellement libres.
- il faut laisser vos jobs en file d'attente ! ils gagnent ainsi en priorité.
- Si vous annulez un job et le relancez (par exemple pour changer des paramètres de run après réflexion), vous perdez en priorité.
- Il faut donc s'arranger pour pouvoir changer des paramètres de vos jobs sans avoir à annuler/relancer (ex: via des fichiers intermédiaires).
- plus vous calculez... moins vous êtes prioritaire : c'est le principe du fairshare (équité). (cf Configuration_Scheduler)
- Quand vous faites une pause dans vos calculs, votre priorité remonte progressivement...
- De la même manière, les gens qui calculent beaucoup et qui semblent passer devant vous, seront bientôt anti prioritaires et vous pourrez passer... à condition d'être patient et de laisser vos jobs dans les files d'attente !
Je veux faire un test rapide sans attendre des heures¶
- Si votre test doit durer moins de quelques heures sur moins que 128 cœurs (4 nœuds), vous pouvez essayer de le soumettre dans la partition visu dont les nœuds sont souvent plus libres que sur la partition principale.
- pour un job plus long ou nécessitant plus de cœurs, vous pouvez utiliser la partition preemptible, il y a des chances que votre job démarre plus vite. Il y a cependant un risque que ce job soit préempté avant sa fin
Dans d'autres cas (job plus long, encore plus de cœurs), le cluster Curta ne pourra pas répondre à ce besoin sans une attente qui sera difficile à quantifier à l'avance.
Fichiers¶
J'ai perdu/détruit des fichiers ! Comment les récupérer ?¶
- C'est sur
/home
: Don't panic. Il est peut-être possible de récupérer une sauvegarde antérieure- regardez dans
/gpfs/home/.snapshots/snap_curta-home-home_<date>-0000_daily/<username>/
où <username> le login de l'utilisateur et <date> la date au format YYYYMMDD (Fairels -al /gpfs/home/.snapshots/
pour lister les sauvegardes disponibles) - les informations dans: FS_home
- regardez dans
- C'est sur
/scratch
: Désolé, cet espace n'est pas sauvegardé...
Je n'ai pas de répertoire dans /scratch/mon-login
¶
C'est simple, il suffit de le créer :
mkdir /scratch/$USER
Logiciels¶
Je ne trouve pas le logiciel "xyz", comment savoir s'il est installé sur la machine ?¶
Les serveurs de Curta sont installés avec des logiciels Linux de base, installés sous forme de RPMs.
Pour savoir si le RPM de votre logiciel est installé :
rpm -qa | grep xyz
Si le RPM n'est pas présent, il est possible que le logiciel ait été installé sous forme de module (http://linux.die.net/man/1/module). Pour connaître la liste des modules disponibles :
module avail
Plus d'informations sur les modules ici : Modules
Je voudrais faire installer le logiciel "xyz". Comment faire ?¶
Il y a plusieurs solutions, selon que vous savez ou pas faire l'installation du logiciel et suivant le public qui devra l'utiliser :- vous savez installer "xyz"
- vous êtes a priori le seul a devoir utiliser "xyz" : vous pouvez l'installer dans votre répertoire sur FS_home ou FS_scratch (attention au nettoyage automatique)
- plusieurs personnes de la communauté pourraient vouloir l'utiliser : demandez à être inclus dans le groupe
swadmins
(par un simple ticket) et vous pourrez faire l'installation dans/gpfs/softs/contrib/apps/xyz/<version>
. Vous pourrez aussi configurer le module correspondant/gpfs/softs/contrib/modulefiles/xyz/<version>
(n'hésitez pas à demander de l'aide pour écrire le modulefile)
- vous ne savez pas l'installer
- Faites un ticket redmine, Nous verrons ensemble comment procéder.