Conda sur le cluster

Bonjour,

J'aimerais savoir si vous pouvez me fournir une documentation détaillé de comment utilisé les environnement partagé de conda car j'ai essayé ce qui suit

module load conda
conda activate l'environnement
srun+ commande ou sbatch+script

Mais cela me revient "failed" avec l'option qu'il faudrait un samtools>=1.3 or dans l'environement chargé il y a un samtools1.7

Pourriez-vous m'aider svp.

Merci.

Bernice

Bonjour,

La documentation de conda est déjà très fournit (Managing environments — conda 23.5.1.dev52 documentation) et beaucoup de tutoriel existe.
Il ne faut pas hésiter à s'y référer puisque c'est le même fonctionnement sur le cluster.

Votre environnement ne semble pas être correctement chargé (il faudra nous donner la liste exacte et complète des commandes exécutées).

Lorsque l'on lance un traitement avec sbatch, il faut absolument charger les modules et l'environnement dans le script.
Est-ce que l'erreur ne viendrais pas de là ?

Bonjour,

Merci beaucoup pour ces informations.

Dans le script j'avais activé l'environnement mais pas charger les modules vue que les logiciels étaient dans l'environnement cond activé.

Bernice.

OK Merci pour le retour et l'info .

Bonjour,

J'ai essayé de charger les modules après activation de l'environnement conda mais le script renvoie toujours failed. Pouvez vous m'aider svp?

Merci.

Bernice.

Bonjour, il faudrait vos commandes pour vérifier ce qui ne va pas.
Un exemple minimal qui marche pour moi:

#!/bin/bash

module purge
source /shared/home/${USER}/.bashrc
conda activate ChIP_WF

samtools --help

(ChIP_WF étant un env Conda qui contient samtools)

Bonjour Mag,

Merci pour la réponse, je vais essayer voir.

Bernice.

J'ai l'impression que tu actives l'environnement conda sur le front avant de soumettre ton job. Je ne suis pas sûr que l'environnement soit "transmis" aux nœuds lorsque tu lances ton job.

Ce que je fais, c'est que j'ajoute dans mon script que j'exécute ces lignes-là :

# monJob.sh
# Options SBatch
# voir https://ifb-elixirfr.gitlab.io/cluster/doc/quick-start/#script-template
# ... 
# load conda and activate env
module load conda
CONDA_ROOT=/shared/software/miniconda/
source $CONDA_ROOT/etc/profile.d/conda.sh
conda activate monEnvConda

# le reste du script qui nécessite l'environnement
...

J'ai plus qu'à faire sbatch monJob.sh pour lancer le job.

Bonjour cvroland,

J'avais fait ainsi mais le script m'était retourner "failed". Voici ce qui est dans mon job.out:

==============================================================
phame

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = "C.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
[16:47:10] Need samtools --version >= 1.3 but you have 0 - please upgrade it.
srun: error: cpu-node-24: task 0: Exited with exit code 2

Apparement il ne retrouve pas l'outil samtools, or dans l'environnement il y a samtools1.7.

BK.

Pour le premier message, j'ai déjà eu ce problème, j'ai trouvé la solution ici : https://www.linuxquestions.org/questions/debian-26/perl-warning-setting-locale-failed-locale-not-available-4175641949/ : il faut ajouter export LC_ALL=C avant d'utiliser perl. Cependant, pour mon cas, ça ne semblait être que du "warning" et ça n'empêchait pas l'exécution.

Pour la seconde partie, l'absence de samtools, c'est bizarre. Peut-être lancer un conda list 1>&2 qui écrira dans la sortie d'erreur (si tu sépares les sorties dans 2 fichiers différents) le chemin vers l'environnement conda actif et tous les packages installés pour vérifier que tout est bien en ordre. On peut aussi rajouter la ligne samtools --version 1>&2 pour tester si samtools est bien installé et quelle version.

Bonjour cvroland,

Merci pour ta réponse et solution proposée. Je vais l'essayer et te revenir.