Lancer des calculs
Serveur passerelle¶
Si vous souhaitez accéder au réseau de l’IMT depuis n’importe quel endroit, vous devez utiliser un serveur passerelle:
où <username> est votre identifiant IMT (vous devez rentrer par la suite votre password IMT).
Note
À l’intérieur du réseau de l'IMT, vous pouvez sauter cette étape et passer directement à l'étape suivante.
Serveur principal de soumission (frontale)¶
Une fois que vous êtes dans le réseau IMT, vous pouvez vous connecter au serveur principal de soumission:
ou avec le nom de domaine complet:
Il s’agit du serveur principal à partir duquel on peut demander des ressources de calcul gérées par SLURM, un logiciel de gestion de soumissions de jobs. Nous allons voir comment cela peut être quasiment transparent.
Liste des serveurs connectés:
| serveur | CPU | GPU |
|---|---|---|
| fourier | 2 AMD EPYC 7542 (128 threads) | 1 Nvidia A100 |
Demande de ressources¶
En interactif¶
Simple¶
Vous pouvez maintenant depuis la frontale calcul effectuer une demande de ressources en tapant la commande:
Cela ouvrira une session interactive sur le serveur attribué avec 2 threads comme ressources.
La session interactive sera fermée en tapant la commande exit, en fermant votre terminal, si vous êtes déconnecté du serveur ou si votre session a atteint la limite maximum définie (voir le tableau ci-dessous).
Tableau des queues de calcul¶
Si vous voulez plus de ressources, il est nécessaire d'ajouter une option à la commande ci-dessus:
où <qos_name> est un nom de file et <nb_threads> le nombre de threads demandés (inférieur au égal à la limite définie par <qos_name>).
Il est résumé ci-dessous celles qui sont possibles avec les limites:
<qos_name> | Limite en ressources | Limite en temps | Nombre max de jobs par utilisateur |
|---|---|---|---|
| normal (par défaut) | 2 threads | 7 jours | no limit |
| long | 2 threads | 31 jours | no limit |
| verylong | 2 threads | 62 jours | no limit |
| veryverylong | 2 threads | 124 jours | no limit |
| small | 4 threads | 7 jours | no limit |
| medium | 8 threads | 7 jours | no limit |
| large | 16 threads | 7 jours | no limit |
| huge | 32 threads | 7 jours | no limit |
Ces limites sont amenées à évoluer en fonction des usages. Si vous ne trouvez pas la file dont vous avez besoin, veuillez faire un mail à calcul@math.univ-toulouse.fr.
Avec screen¶
Pour rendre le travail interactif permanent (quel que soit la <qos_name>), vous pouvez utiliser la commande screen.
Depuis le serveur calcul (le serveur depuis lequel vous lancez la commande salloc pour demander des ressources), taper la commande suivante pour ouvrir un socket screen:
où <name> doit être un nom choisi explicitement. Une fois cette commande lancée, vous êtes attaché à un socket screen qui reste permanent (sans lancer à l'intérieur une commande exit). Vous pourrez ainsi retrouver votre session de travail quoiqu'il se passe.
Vous pouvez à présent lancer la commande salloc comme expliqué ci-dessus afin de lancer votre session de calcul. Pour se détacher du socket screen, il faut taper la commande [ctrl]+a+d (en gardant successivement les touches enfoncées).
Pour retrouver la liste de vos sessions actives:
puis taper la commande:
afin de retrouver définitivement votre session.
Voici un exemple où 2 sockets ont été créés et pour lesquels on est détaché des 2:
couderc@calcul:~$ screen -r
There are several suitable screens on:
1050349.job1 (Detached)
1050339.job2 (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
Le système me demande de donner le nom explicite du socket sur lequel je veux me rattacher, par exemple:
Si la commande de job Slurm avait bien été lancé depuis calcul, on se retrouve directement dans sa session sur le serveur de calcul.
Ici une documentation avec d’autres liens: manuel screen
En soumettant un job¶
A construire …
Compilateurs/bibliothèques/logiciels¶
Pour activer l'environnement Spack et pouvoir utiliser les logiciels installés avec :
Attention : premier lancement lent
Le premier appel de cette commande prend environ 1 minute car Spack doit créer un dossier .spack dans votre répertoire personnel.
C'est tout à fait normal : ne fermez pas votre terminal et patientez.
Les appels suivants seront instantanés.
(le temps d’exécution de la commande peut être long, surtout une première fois, veuillez attendre)
Une fois le script de positionnement lancé, vous pouvez voir la longue liste des paquets installés:
et un paquet peut être chargé en laçant la commande:
Une documentation est donnée dans les autres rubriques pour un certain nombre de paquets.