Mesurer la mémoire nécessaire pour une processus R-Seurat

Bonjour les ifb-s ! Bonne rentrée !

Je travaille sur un script R avec le package Seurat et des données single-nuclei.
Il faut faire un merge des plusieurs échantillons ,qui est très gourmand et long, donc j'ai lancé une partie du script sur le cluster avec slurm.

J'aimerais vos conseils pour évaluer combien de mémoire consomme cette commande avant de la lancer pour toutes les échantillons, afin de demander le volume de --mém et --cpus nécessaire.

C' est un processus hyper-long , donc j'ai pas le temps de tester différents chiffres, j'ai aucune idée combien ça consomme , et je veux pas me trouver avec une surprise d'erreur après toute une nuit de running.

Mon script .sbatch , du 1e test :

#SBATCH -A single_cell_skeletal_muscle
#SBATCH -p fast
#SBATCH --cpus-per-task=10

Rscript  findIntegrationAnchors_AllSamples.R

Le script "findIntegrationAnchors_AllSamples.R"

features <- SelectIntegrationFeatures(object.list = seurat_list_y_o )

anchors <- FindIntegrationAnchors(object.list = seurat_list_y_o, 
                                  normalization.method = "LogNormalize",
                                  anchor.features =  features  ) 

La list "seurat_list_y_o" contient plusieurs échantillons, et avec ce script, je l'ai vu parcourir juste 8 échantillons et s'arrêter par un out-of-memory handler.

Pourriez vous voir la mémoire consommé de ce Job ?
-> JobID = 34999362 , du 30/8. :

 /var/spool/slurm/slurmd/job34999362/slurm_script: line 11: 66096 Killed Rscript 
findIntegrationAnchors_AllSamples.R
slurmstepd: error: Detected 1 oom-kill event(s) in StepId=34999362.batch cgroup. 
Some of your processes may have been killed by the cgroup out-of-memory handler.

Y-a-t-il une commande qui permet de voir la mémoire que consomme une commande, pour la multiplier sur le script de slurm après ,pour toutes les échantillons ?

Merci d'avance
mk

Bonjour Maria,

La commande seff <jobid> est ton amie.

Pour ce job, toute la mémoire a été utilisé (95%):

$ seff 34999362
Job ID: 34999362
Cluster: core
User/Group: mkondili/mkondili
State: OUT_OF_MEMORY (exit code 0)
Nodes: 1
Cores per node: 10
CPU Utilized: 09:01:52
CPU Efficiency: 15.45% of 2-10:26:30 core-walltime
Job Wall-clock time: 05:50:39
Memory Utilized: 18.58 GB
Memory Efficiency: 95.11% of 19.53 GB

Il faut essayer avec plus de mémoire (mais pas forcément plus de CPU).

Quelques infos complémentaire: https://ifb-elixirfr.gitlab.io/cluster/doc/troubleshooting/#slurm-how-to-use-resources-wisely

Bonne journée