====== Travailler en accès direct (sans SLURM) ====== 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 [[vscode|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 | Ces serveurs sont **partagés** et aucun outil ne répartit les ressources entre les utilisateurs : c'est à vous de laisser de la place aux autres. Pour des calculs lourds ou nombreux, utilisez le [[demarrage|cluster SLURM]]. ===== 1. Se connecter ===== 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 [[vscode|VS Code]], pour éditer vos fichiers et lancer vos commandes directement depuis l'éditeur. ===== 2. Vérifier que le serveur n'est pas trop chargé ===== 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 ===== 3. Lancer son programme ===== Lancez votre programme comme sur votre PC : ./mon_exe ==== Dans une image Apptainer ==== Pour travailler dans votre image (voir [[apptainer|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''. ===== 4. Calcul long : ne pas le perdre en se déconnectant ===== 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 * Voir la liste de vos sessions : ''tmux ls'' * Fermer définitivement une session : dans la session, tapez ''exit'' **Calculs de plus de 10 heures : utilisez le cluster SLURM.** 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. ===== Les règles ===== * **Vérifiez la charge** du serveur avant de lancer un programme. * **N'utilisez jamais 100 % d'un serveur** : laissez toujours des cœurs et de la mémoire aux autres. * **Calculs longs ou nombreux : utilisez le cluster.** Les jobs y sont répartis automatiquement par SLURM. Plus de détails dans les [[pratique|bonnes pratiques]].