Accès à la partition Bigmem pour pouvoir lancer MetaSpades

Bonjour,

Je souhaiterais lancer Metaspades sur 1 T des données métagénomique, sauf que l'outil demande beaucoup de mémoire (250G mem), est-il possible de me donner accès à la partition bigmem.

Je vous remercie d'avance :slightly_smiling_face:.

Abdeljalil

Bonjour @abdeljalil

Les noeuds standards disposent actuellement de 250Go de mémoire.
Au préalable, pourriez-vous essayer sur ces noeuds en demandant la totalité de la mémoire (--mem=250G), il me semble en effet que, dans vos tests précédents, vous ne demandez que quelques Go ?

Bonjour @dbenaben

Oui je suis d'accord avec vous. sauf que j'ai une gros data.
Je l'ai essayé hier, et ce n'est pas encore fini.

image

Pour plus de précision, j'ai 120 Run et j'ai environ 20 millions de reads pour chacun (2G de chaque R1/R2), j'estime que j'ai besoin de plus de RAM.

Bonjour,

Pour l'instant le job utilise moins de 70Go.
Je ne suis donc pas du tout convaincu qu'augmenter la mémoire change quelque chose.

A noter que puisque la totalité de la mémoire est utilisé, on peut demander la totalité des CPU de la machine (jusqu'à 27). Mais même dans ce cas, je ne suis pas non plus convaincu que cela change beaucoup la donne.

Aussi, si vous avez plusieurs jeu de données de ce style, alors il me semble préférable d'utiliser plusieurs noeuds plutôt qu'un seule machine bigmem.

Je vous propose d'attendre la fin de ce job pour évaluer les besoins.

Le job s'est terminé avec cette erreur.
Normalement le job a dépassé le temps maximum alloué dans la partition Fast (1 jour).
Par défaut l'outil prend 250G de mem et 16G de cpu, c'est ce que je lui ai donné pour estimer le temps de calcul.
Avez-vous svp un retour par rapport le temps de calcul ?

Oui, vous pouvez aussi avoir ce retour (une fois le job terminé) via la commande seff <jobid>
Par exemple pour votre job, on a:

$ seff 26261008
Job ID: 26261008
Cluster: core
User/Group: abdeljalil/abdeljalil
State: TIMEOUT (exit code 0)
Nodes: 1
Cores per node: 16
CPU Utilized: 23:32:54
CPU Efficiency: 6.13% of 16-00:00:00 core-walltime
Job Wall-clock time: 1-00:00:00
Memory Utilized: 158.76 GB
Memory Efficiency: 63.50% of 250.00 GB

On peut voir plusieurs choses:

  • la mémoire utilisé: 158 Go (soit 63.5% des 250Go demandé). Donc pour l'instant, les 250Go de mémoire sont suffisant (mais ça ne dis pas si ce sera suffisant dans le futur). A surveiller donc.
  • Il y a eu "23:32:54" heure.cpu. Pour 16 CPU demandés, on pourrait s'attendre à quelque chose autour de 16*24h, soit 384 heure.cpu. On est donc loin du compte. Ce que nous confirme le "CPU Efficiency" qui nous indique que seul 6.13% des CPU demandés ont été utilisé. Ainsi tout indique qu'un seul CPU a été utilisé par le programme (alors que 16 CPU ont été alloué sur le serveur). Le job n'est donc pas parallélisé (il n'utilise pas plusieurs threads, process). Soit le programme n'est pas parallélisable, soit les paramètres ne sont pas bon, etc.

En bref, les CPU ne sont pas utilisés (ce qui peut aussi expliquer le temps de traitement) et il faut, à mon avis, voir ce qui coince ou comment paralléliser.

A noter que si le traitement doit durer plus de 24h, il est possible de basculer sur la partition long (max 30j) avec --partition=long.