Je vous écris pour savoir s’il serait possible très exceptionnellement de pouvoir mobiliser 2Tb de RAM.
Je travaille actuellement sur un jeu de données à partir duquel j’essaie de reconstruire un arbre phylogénétique avec IQTREE v2.0.3. Plus exactement, il s’agit de lancer un arbre de 636 espèces avec ~70,000 sites et un modèle d’évolution LG+C60+G (qui est gourmand en mémoire, mais nécessaire pour une reconstruction de confiance). En calculant la mémoire nécessaire pour ce job, j’arrive à environ 1.8Tb de RAM.
Même si j’ai fait en sorte que le temps de calcul soit le plus bas possible en rajoutant des contraintes sur la majorité des branches de l’arbre à reconstruire, j’estime le temps de calcul à 1 mois (il avait pris 2 semaines avec moitié moins d’espèces, et donc moitié moins de RAM nécessaire).
Idéalement, il me faudrait procéder comme cela à deux reprises. Pensez-vous que cela soit envisageable ? D’avance merci pour le temps que vous voudrez bien prendre à me lire, je me tiens à votre disposition pour toute précision supplémentaire qui vous serait utile. (Egalement, merci énormément pour le service que vous nous offrez!!!)
Côté resource, ça me semble possible. On voit comment répondre au mieux et on revient vers vous.
Pouvez-vous faire une demande de projet (via le gestionnaire de compte https://my.cluster.france-bioinformatique.fr/ et le bouton "Request a new project") ?
Notamment, dans un objectif de bonne gestion des données, nous invitons les utilisateurs à créer leurs espaces projets (https://ifb-elixirfr.gitlab.io/cluster/doc/data/project/). Cela permet d'avoir un espace dédié (un dossier dans /shared/projets/<myrojects>) et une gestion plus fine (une bonne pratique quoi). Il est possible d'avoir plusieurs projets.
J'ai l'impression que vous avez fait le tour, mais je vous invite aussi à regarder toutes les optimisations possibles. Les jobs long sont sujets à de nombreux problèmes: arrêt du job (cause interruption de service de l'IFB Core Cluster, panne matériel, erreur logiciel, limite de temps atteinte etc), mauvais paramétrages (il faut relancer), etc. Quand votre job prends quelques heures, le relancer ne pose pas de problème. Mais quand il s'agit de plusieurs jours (voire quasiment un mois dans votre cas), c'est toujours fâcheux.
Évidemment, c'est pas toujours possible.
Dans tous les cas, il faut tester et aussi vérifier l'usage des ressources (notamment avec seff, voir: https://ifb-elixirfr.gitlab.io/cluster/doc/troubleshooting/#slurm-how-to-use-resources-wisely)
Merci beaucoup pour votre réponse (et désolé pour le retard de la mienne).
J'ai déjà le projet erc_pe_leca_iqt qui se concentre sur la reconstruction que je tente de faire actuellement, est-ce que je dois tout de même créer un nouveau projet ?
Je pense avoir vérifié les options possibles d'optimisation, et le job nécessiterait 1,9Tb de RAM et 24 CPU maximum. Pour la durée du job, je prévois 30 jours en me basant sur un job plus petit, mais ce temps de calcul dépend du likelihood landscape (à quel point le signal est clair). Cependant, IQTREE a un système de sauvegarde. Ainsi, si la limite de temps est atteinte, je pourrai toujours relancer le job, qui reprendra où il s'est arrêté.
Je me tiens à votre disposition pour toute information nécessaire.
En effet, je n'avais vu que votre ancien compte.
Nous avons autorisé votre compte pour ce projet à utiliser cette quantité de RAM en attendant qu'on généralise à tout le monde.
Côté ressource, je vous invite à utiliser les noeuds "standard".
De nouvelles machines ont été acquises et intégrer au cluster. Ces dernières ont 2To RAM (Cluster description - IFB Core Cluster Documentation)
Si besoin, vous pouvez monter à 3To en utilisant la partition "bigmem" (il faut alors spécifier cette dernière via: --partition=bigmem).
Merci énormément pour votre aide !!! J'ai tenté de lancer le job, mais il reste inactif à cause de la mémoire max par utilisateur. Est-ce que peut-être je lance mon job de la mauvaise façon ?
Output de '$ squeue -u romainl' :
"""
JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
36284646 long iqtree romainl PD 0:00 1 (QOSMaxMemoryPerUser)
"""
D'avance, merci encore pour votre aide précieuse.
Romain
En effet, il faut également préciser la QoS (qualité de service) à utiliser pour outrepasser cette limite.
Pouvez-vous réessayer en ajoutant l'option suivante:
#SBATCH --qos=bigmem
Je pense qu'on va en rediscuter pour simplifier tout ça...