Aller au contenu principal

Environnement de calcul sur Dalia

Espaces disques​

Il y a deux types d'espace de stockage sur Dalia :

  • Un espace personnel HOME par utilisateur·ice : /lustre/home/<login>
    • La variable d'environnement $HOME est positionnĂ©e lorsque vous vous connectez et pointe vers cet espace ;
    • Les quotas par utilisateur sont de 3 Go et 12 000 inodes et peuvent ĂȘtre augmentĂ©s si besoin.
  • Un espace de travail par utilisateur·ice et par projet : /lustre/work/<project_group>/<login>
    • Pour le moment il n'y a pas de variable d'environnement qui pointe vers ce dossier. Nous conseillons de fixer une variable (e.g. $WORK) dans le ~/.bashrc pour faciliter les choses ;
    • Un espace de travail commun Ă  tous les membres d'un mĂȘme projet est Ă©galement disponible : /lustre/work/<project_group>/commun ;
    • Les quotas de l'espace de travail (utilisateurs + commun) dĂ©pendent du projet. Au total, la machine dispose de 500 To.
info
  • Par dĂ©faut, le nombre d'inodes attribuĂ©s sera proportionnel Ă  la volumĂ©trie de stockage demandĂ©e pour le projet, Ă  hauteur de 3 000 inodes par Go.
  • Par chaque espace, il y a des quotas en volumĂ©trie (Go) et en nombre de fichiers/repertoires (inodes). Vous serez bloquĂ©s dĂšs que vous dĂ©passerez l'une des limites.
attention

Les quotas du HOME et des espaces de travail associés à vos projets sont en réalité gérés en fonction des groupes Unix propriétaires des fichiers. Cela peut entraßner des incompréhensions. Voir la FAQ "ProblÚmes de quotas sur le HOME".

Environnement logiciel​

Des piles logicielles de base (compilateurs, librairies CUDA,...) sont accessibles via des modules, comme sur Jean Zay. Pour les lister, vous pouvez lancer la commande :

module avail
attention

Certains modules sont chargés par défaut quand vous vous connectez et sont visibles via la commande module list exécutée avant tout autre commande module. Ce comportement est modifiable dans votre .bashrc mais un module purge peut donc générer des effets de bord non souhaités, comme la perte d'accÚs à Slurm.

L'installation des environnements logiciels sur Dalia est ensuite à la charge des utilisateur·ices. Il est possible de travailler dans des conteneurs ou des environnements conda selon votre préférence.

danger

Que vous construisiez un conteneur ou un environnement conda, il est primordial que les installations soient compatibles avec l'architecture ARM des nƓuds de calcul de Dalia qui est diffĂ©rente de l'architecture Intel des nƓuds de connexion.

Conteneurs Apptainer​

Il est recommandé de travailler dans des conteneurs. La solution de conteneurisation Apptainer est disponible sur Dalia.

info

Afin d'éviter des problÚmes de quota, vous pouvez rediriger le répertoire de cache utilisé par Apptainer dans l'espace de travail associé à votre projet (~WORK). Pour cela, il suffit de définir la variable APPTAINER_CACHEDIR de la maniÚre suivante :

export APPTAINER_CACHEDIR=/lustre/work/<project_group>/<login>/<cache_directory>

Environnements conda​

Vous pouvez si vous le souhaitez installer votre propre environnement conda sur Dalia.

Il est recommandĂ© de faire cette procĂ©dure directement sur un nƓud de calcul pour que l'architecture ARM soit dĂ©tectĂ©e automatiquement lors de l'installation.

Exemple de script d'installation d'un environnement conda avec Miniforge :

# Connexion à un nƓud de calcul
srun --ntasks=1 --cpus-per-task=36 --gres=gpu:1 --hint=nomultithread --pty bash

# Téléchargement de miniforge
cd /lustre/work/<project_group>/<login>/
wget "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-aarch64.sh"

# Installation de miniforge
bash Miniforge3-Linux-aarch64.sh
attention

Lors de l'exécution du script Miniforge3-Linux-aarch64.sh, il vous sera demandé si vous acceptez l'emplacement d'installation par défaut /lustre/home/<login>/miniforge3. Afin de ne pas saturer votre HOME, il est nécessaire de préciser un chemin pointant plutÎt dans votre espace de travail, par exemple /lustre/work/<project_group>/<login>/miniforge3.