Description générale
Présentation du service
La DIO met à la disposition des utilisateurs une machine de post-traitement : johannes (2016)
L'accès à cette machine est ouvert à tous les membres de l'Observatoire néanmoins il est nécessaire d'en faire la demande et de justifier des besoins d'accès à cette machine (nombre de coeurs, taille mémoire). Pour cela envoyez un mail à
admin.dio@obspm.fr
Nous invitons tous les utilisateurs à lire les paragraphes ci-dessous et à suivre ces recommandations. Pour une utilisation optimale de cette machine les utilisateurs doivent soumettre leurs jobs via le système de gestionnaire de tâches SLURM (Simple Linux Utility for Resource Management).
Description et caractéristiques techniques de la machine
48 coeurs Intel(R) Xeon(R) CPU E7-8857 v2 @ 3.00GHz
1,5 To de mémoire partagée entre les coeurs
Le répertoire home est celui de la grappe tycho
- sauvegarde une fois par jour, en rotation sur 14 occurrences
- à utiliser pour y mettre les fichiers produits par l'utilisateur lui-même : fichiers bureautiques, programmes, scripts, etc... En bref tout ce qui n'est pas reproductible par calcul ou traitement, et qui a beaucoup de valeur
- quota de 30 Go
De même, /data et /poubelle sont ceux de tycho.
Le gestionnaire de tâches SLURM
Pour une utilisation optimale des ressources de la machine vous devez utiliser le gestionnaire de taches SLURM que ce soit pour travailler de manière interactive ou batch.
Plusieurs queues de soumission sont disponibles en fonction de vos besoins. Il est impératif de définir le temps et la mémoire souhaités.
La machine fonctionne selon deux modes : toutes les 3 semaines il est possible d'utiliser la machine en totalité pendant le week-end et en dehors de ces périodes la machines est partagée entre projets.
Il est important lancer tous les programme via le gestionnaire de ressources
slurm. Autrement il y a risque de sur-utilisation des ressources en particulier
de la mémoire et la machine risquerait de <
Un script de surveillance envoit un mail lorsqu'il détecte de tels processus (plus tard il tuera ces processus).
Par contre il est possible de lancer un éditeur de texte en dehors de slurm.
Fonctionnement en mode projet
Les ressources de la machine sont réparties en 4 partitions : 3 réservées pour des projets et une ouverte aux utilisateurs hors projet.
partition | temps max | nb coeurs max | mémoire max |
---|---|---|---|
alma | 15 jours | 12 coeurs | 282 Go |
orage | 15 jours | 12 coeurs | 282 Go |
wibar | 15 jours | 12 coeurs | 358 Go |
pub | 15 jours | 12 coeurs | 512 Go |
Une partition de moindre priorité permet d'utiliser plus de coeurs pendant que les partition dédiées aux projets sont partiellement utilisées. Le jobs soumis sur cette partition peuvent être suspendus pour permettre aux jobs soumis sur les partitions projets de démarrer immédiatement.
partition | temps max | nb coeurs max | mémoire max |
---|---|---|---|
low | 15 jours | 36 coeurs | 128 Go |
Attention : en soumettant un job, il faut tenir compte de la prochaine réservation car un job ne peut démarrer que s'il se termine avant le début de la réservation.
Fonctionnement en mode réservation
Régulièrement, actuellement toutes les trois semaines pendant les week-end, il est possible de lancer un job utilisant jusqu'à 83% des ressources de la machine sur la partition all.
Pendant cette période, seuls les jobs soumis sur les deux partitions suivantes peuvent s'exécuter :
partition | nb coeurs max | mémoire max |
---|---|---|
all | 40 coeurs | 1195.7 Go ( = 1224420 Mo ) |
urg | 8 coeurs | 239.1 Go ( = 244884 Mo) |
Ce découpage a été fait pour éviter l'immobilisation totale de la machine et permettre le lancement de jobs de taille modeste de dernière minute sur la partition urg.
La prochaine réservation est affichée quand on se loggue sur la machine, par exemple :
Prochaine reservation de la machine :
ReservationName=all_1 StartTime=2016-10-28T19:00:00 EndTime=2016-10-31T06:00:00 Duration=2-12:00:00
Pour soumettre un job pendant cette période, il faut utiliser les options suivantes :
--partition=all ou --partition=urg
--reservation=all_1 ou all_2 etc.
On peut afficher toutes les reservations avec la commande :
scontrol show reservation
Soumission de jobs de type batch
Des exemples de fichiers de soumission sont disponibles sur la page de la grappe tycho ainsi que la description des commandes SLURM
Un modèle simple de script exemple.slurm :
#!/bin/bash
#SBATCH --job-name=MonProg {Nom du programme}
#SBATCH --partition=pub {La file d'attente}
#SBATCH --time=1-23:00:00 {Le temps sous la forme J-HH:MM:SS}
#SBATCH -n 12 {Le nombre de coeurs}
#SBATCH --mem=1gb {La mémoire demandée}
./nom_de_l_executable {Le programme a lancer}
Le script est à soumettre avec la commande :
sbatch exemple.slurm
Remarque : pour utiliser toute la mémoire disponible sur une partition, il faut préciser la valeur exacte en Mo. Cette valeur peut-être obtenue avec une des commandes :
scontrol show partition [nom_de_la_partition]
Par exemple dans le cas de la partition pub on obtient MaxMemPerNode=524288 il faut donc préciser --mem=524288 dans le script de soumission.
Soumission de jobs interactifs
Pour la réservation de ressources pour travailler de manière interactive il faut utiliser la commande srun
srun -p [partition] -t [tempsMinute] -J [NomJob] --mem=[memoire] --pty bash
Pour avoir le numero du job qui s'affiche dans le prompt il faut ajouter dans votre fichier ~/.bashrc la ligne
PS1='\u@\h${SLURM_JOBID:+:$SLURM_JOBID}:\w\$ '
Statistiques d'utilisation
Statistiques pour l'année 2024
Statistiques pour l'année 2023
Statistiques pour l'année 2022
Statistiques pour l'année 2021
Statistiques pour l'année 2020
Statistiques pour l'année 2019
Statistiques pour l'année 2018
Statistiques pour l'année 2017
Statistiques pour l'année 2016