Les serveurs en accès direct s'utilisent comme votre PC : vous vous connectez et vous lancez vos programmes directement, sans passer par SLURM. C'est idéal pour développer, tester, travailler en interactif, utiliser VS Code.
Vos fichiers sont les mêmes que sur le cluster : votre répertoire personnel est partagé entre tous les serveurs.
| Serveur | Cœurs | Mémoire | GPU |
|---|---|---|---|
| christmas | 64 | 512 Go | |
| l40s02 | 32 | 125 Go | NVIDIA L40S |
Si vous n'êtes pas dans le bâtiment ISIMA, connectez-vous d'abord au VPN. Puis, dans un terminal de votre PC, tapez :
ssh login@christmas
Remplacez login par votre identifiant et christmas par le serveur en accès direct de votre choix.
Vous pouvez aussi vous connecter avec VS Code, pour éditer vos fichiers et lancer vos commandes directement depuis l'éditeur.
Avant de lancer un programme, regardez ce qui tourne déjà. Dans le terminal, tapez :
top
La liste montre les programmes en cours et la mémoire libre (ligne MiB Mem). Tapez q pour quitter.
Sur les serveurs avec GPU, regardez aussi l'occupation des cartes :
nvidia-smi
Lancez votre programme comme sur votre PC :
./mon_exe
Pour travailler dans votre image (voir Apptainer), ouvrez un terminal à l'intérieur de l'image :
apptainer shell mon_image.sif
Le début de la ligne de commande devient Apptainer> : vous êtes dans l'image, avec tous les logiciels que vous y avez installés. Tapez exit pour en sortir.
Pour lancer une seule commande dans l'image, sans y entrer :
apptainer exec mon_image.sif ./mon_exe
Sur un serveur avec GPU, ajoutez l'option --nv pour que l'image ait accès à la carte : apptainer shell --nv mon_image.sif.
Un programme lancé normalement s'arrête quand vous fermez le terminal ou que la connexion coupe. Pour un calcul long, lancez-le dans une session tmux : elle continue de tourner sur le serveur même quand vous êtes déconnecté.
Ouvrez une session (ici nommée calcul). Dans le terminal, tapez :
tmux new -s calcul
Le terminal se vide, avec une barre verte en bas : vous êtes dans la session. Lancez votre programme normalement :
./mon_exe
Pour quitter la session sans arrêter le programme, appuyez sur Ctrl+b, relâchez, puis appuyez sur d. Vous pouvez ensuite vous déconnecter du serveur.
Plus tard, reconnectez-vous au même serveur et retrouvez votre session, avec tout ce que votre programme a affiché :
tmux attach -t calcul
tmux lsexit
L'accès à vos fichiers est protégé par un « ticket » de connexion, valable environ 10 heures à partir de votre connexion : après 10h, votre programme ne peut plus lire ni écrire vos fichiers (erreur Permission denied), même s'il tourne toujours.
Sur le cluster, les tickets des jobs sont renouvelés automatiquement : un job peut tourner plusieurs jours sans problème.
Plus de détails dans les bonnes pratiques.