Les lignes commençant par #$
sont des options pour qsub
, une commande utilisée pour soumettre un travail au cluster SGE, un système de planification expliqué dans ce fichier Lisez-moi :
L'utilisation de l'environnement de cluster BIMSB (qui s'appellera bientôt MAX) est similaire à l'utilisation d'environnements Unix / Linux pour la soumission de votre travail (par exemple, l'exécution de vos scripts ou d'autres logiciels). La différence est que vous devez spécifier au préalable les ressources nécessaires. Le cluster est contrôlé par un SGE (Sun Grid Engine Software) qui organise les files d'attente et les ressources. Ce type de système de planification est nécessaire lorsque plusieurs ressources de calcul limitées sont partagées par plusieurs. Et, il serait utile si vous exécutez des alignements pour plusieurs échantillons et souhaitez répartir ces tâches (travaux) sur plusieurs machines ou processeurs, ou lorsque vous exécutez des simulations statistiques qui doivent s'exécuter sur plusieurs processeurs pendant une longue période. Pour ces cas et bien d'autres,
SGE fera la "planification des travaux". Cela signifie que vous pouvez soumettre tous vos travaux et SGE les mettra en file d'attente et les exécutera lorsque les ressources que vous demanderez seront disponibles. SGE réalisera également un "équilibrage de charge" où les travaux seront distribués afin que des nœuds spécifiques ne soient pas surchargés. De plus, SGE vous permettra de faire du "suivi et de la comptabilité des travaux", ce qui sera utile lorsque vous voudrez vérifier si votre travail est en cours d'exécution et s'il a échoué, il vous aidera à comprendre ce qui s'est mal passé.
La syntaxe de la qsub
commande est expliquée sur sa page de manuel , votre script utilise les options suivantes:
-l h_rt=<hh:mm:ss>
- spécifiez le temps d'exécution maximum (heures, minutes et secondes)
-V
- transmettre toutes les variables d'environnement au travail
-N <jobname>
- spécifiez le nom du travail. Vous le verrez lorsque vous l'utiliserez qstat
pour vérifier l'état de vos travaux.
-j y[es]|n[o]
- spécifie si le flux d'erreur standard du travail est fusionné ou non dans le flux de sortie standard
Comme l'explique Comment soumettre un travail en utilisant qsub, on peut définir les qsub
options directement dans le script dans les lignes qui commencent par #$
. C'est une alternative à leur transmission avec la qsub
commande sur la ligne de commande.