Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
documentation:tools:sge [2017/12/27 15:06] – [Accounting] ltaulell | documentation:tools:sge [2023/01/11 12:44] (Version actuelle) – supprimée ltaulell | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== GridEngine ====== | ||
- | {{INLINETOC}} | ||
- | |||
- | |||
- | Le gestionnaire de jobs (ou système de batch) actuellement utilisé par le PSMN est GridEngine (anciennement Sun Grid Engine, d'où SGE). | ||
- | |||
- | * Les matériels sont décrit sur la page [[documentation: | ||
- | * Les serveurs de compilation, | ||
- | * Les files d' | ||
- | |||
- | ==== Utilisation optimale des ressources ==== | ||
- | |||
- | Pour utiliser au mieux les ressources, il convient de bien remplir les serveurs. Pour cela, nous disposons de deux moyens : | ||
- | |||
- | * remplir "au mieux" (best effort) , | ||
- | * remplir par multiple de n coeurs (ou n est le nombre de coeurs physiques par serveur). | ||
- | |||
- | Remplir au mieux mène rapidement à un morcellement, | ||
- | |||
- | Le remplissage au mieux n'est donc mis en place pour les applications parallèles que sur certaines queues; sur les autres le remplissage par multiple d'un serveur entier est utilisé. | ||
- | |||
- | ==== Priorités ==== | ||
- | |||
- | Une priorité : | ||
- | |||
- | * inversement proportionnelle au temps de calcul déjà consommé, | ||
- | * proportionnelle au temps d' | ||
- | |||
- | est appliqué par GridEngine. Ceci afin de répartir plus équitablement les ressources disponibles. | ||
- | |||
- | ===== SGE : Soumettre un job ===== | ||
- | |||
- | < | ||
- | qsub programme <input >output | ||
- | </ | ||
- | |||
- | <code bash> | ||
- | qsub -V -m b -m e -e / | ||
- | |||
- | -V : export environment variables | ||
- | -m b : mail @begin | ||
- | -m e : mail @end | ||
- | -e : where to put error files | ||
- | -o : where to put output files | ||
- | -q : queue (file d' | ||
- | </ | ||
- | |||
- | **Il est plus simple de soumettre un script à SGE, qui contiendra plus d' | ||
- | |||
- | ==== Comment choisir les files d' | ||
- | |||
- | De par les achats successifs de nœuds de calcul avec des architectures de génération différente, | ||
- | |||
- | Concrètement le choix de la file d' | ||
- | |||
- | * si le critère principal est la rapidité de l' | ||
- | * si le critère principal est le grand nombre de ressources (p.ex. un job avec beaucoup de cœurs, un job avec beaucoup de mémoire RAM), alors il faut plutôt s' | ||
- | |||
- | Évidemment, | ||
- | |||
- | Et bien sur, pour la mise au point du code, il faut choisir une file d' | ||
- | ===== SGE : Les autres commandes utiles ===== | ||
- | |||
- | ==== Surveiller les jobs ==== | ||
- | |||
- | * Voir tous les jobs d'un utilisateur : | ||
- | |||
- | < | ||
- | |||
- | * Voir l' | ||
- | |||
- | < | ||
- | |||
- | * Voir tous les jobs de tous les utilisateurs en exécution (running) : | ||
- | |||
- | < | ||
- | |||
- | * Voir tous les jobs de tous les utilisateurs en attente (pending ou waiting) : | ||
- | |||
- | < | ||
- | |||
- | * Voir toutes les queues : | ||
- | |||
- | < | ||
- | |||
- | (sql : show queues list) | ||
- | |||
- | * Voir l' | ||
- | |||
- | < | ||
- | |||
- | * Voir l' | ||
- | |||
- | < | ||
- | |||
- | * Voir l' | ||
- | |||
- | < | ||
- | |||
- | * Voir l' | ||
- | |||
- | < | ||
- | |||
- | * Voir l' | ||
- | |||
- | < | ||
- | |||
- | * Enlever (clear) l' | ||
- | |||
- | < | ||
- | |||
- | * Voir les informations d'un job après son achévement (long) : | ||
- | |||
- | < | ||
- | |||
- | * Supprimer un job : | ||
- | |||
- | < | ||
- | |||
- | * Supprimer un job (forcer) : | ||
- | |||
- | < | ||
- | |||
- | ==== Accounting ==== | ||
- | |||
- | <note important> | ||
- | |||
- | |||
- | * Détails des jobs sur les 30 derniers jours : | ||
- | |||
- | < | ||
- | |||
- | * Consommation d' | ||
- | |||
- | < | ||
- | |||
- | ou | ||
- | |||
- | < | ||
- | |||
- | * Consommation d' | ||
- | |||
- | < | ||
- | |||
- | ==== Divers ==== | ||
- | |||
- | * lister les noeuds d'une queue | ||
- | * Show Queue | ||
- | < | ||
- | qconf -sq E5-2670deb64A | ||
- | </ | ||
- | | ||
- | * Show Group | ||
- | < | ||
- | qconf -shgrp @EquipatMeso64A | ||
- | </ | ||
- | |||
- | ==== Jobs qui ont des problèmes : ==== | ||
- | |||
- | Lancer la commande suivante : | ||
- | < | ||
- | |||
- | et regarder les deux dernières colonnes : | ||
- | |||
- | * aoACD : Nombre de coeurs qui sont au moins dans un des états suivants : | ||
- | * a Load threshold alarm | ||
- | * o Orphaned | ||
- | * A Suspend threshold alarm | ||
- | * C Suspended by calendar | ||
- | * D Disabled by calendar | ||
- | |||
- | * cdsuE : Nombre de coeurs qui sont au moins dans un des états suivants : | ||
- | * c Configuration ambiguous | ||
- | * d Disabled | ||
- | * s Suspended | ||
- | * u Unknown | ||
- | * E Error | ||
- | |||
- | ==== Status (etats) de jobs possibles : ==== | ||
- | |||
- | * d(eletion), | ||
- | * E(rror), | ||
- | * h(old), | ||
- | * r(unning), | ||
- | * R(estarted), | ||
- | * s(uspended), | ||
- | * S(uspended), | ||
- | * t(ransfering), | ||
- | * T(hreshold), | ||
- | * w(aiting). | ||
- | |||
- | ===== SGE : Variables d' | ||
- | |||
- | <note important>''# | ||
- | |||
- | * SGE_O_WORKDIR : répertoire d'où à été soumis le job, utilisable dans les scripts | ||
- | * NSLOTS : nombre de coeurs demandé | ||
- | * JOB_ID : ID du job (unique) assigné par SGE | ||
- | * JOB_NAME : nom du job (-N) | ||
- | * PE_HOSTFILE : fichier de hosts | ||
- | |||
- | |||
- | ==== Refs ==== | ||
- | |||
- | * http:// | ||
- | * https:// | ||
- | * http:// | ||
- | |||
- | ===== Références : ===== | ||
- | |||
- | * http:// | ||
- | * http:// | ||
- | * http:// | ||
- | * http:// | ||
- | * https:// | ||
- | * https:// | ||
- | * https:// | ||
- | * https:// | ||
- | * http:// | ||
- | * http:// | ||
- | * https:// |