Gestionnaire de batchs

Gestionnaire de batchs

Gestionnaire de tâches

Page d'aide sur l'homonymie Ne doit pas être confondu avec Gestionnaire des tâches Windows.

Les gestionnaires de tâches ou de batchs occupent une place particulière dans le domaine de l'informatique appelé le calcul haute performance. Ils servent en général à gérer de façon logicielle des grosses installations informatiques parallèles utilisées de façon concurrente par plusieurs utilisateurs physiques ou virtuels. Sur un système multitâche de type UNIX, une partie logicielle du noyau, appelée ordonnanceur (scheduler), permet aux différents processus lancés d'accéder les uns après les autres aux ressources de la machine, selon la capacité de l'ordinateur à les traiter, selon son taux d'occupation, selon des priorités qui peuvent être des attributs de ces processus, etc.

De la même façon, un gestionnaire de batchs implémente un ordonnanceur de processus ou scheduler à une échelle plus large ; il servira à transmettre les processus à traiter non plus sur la machine sur laquelle tourne cet ordonnanceur, mais sur une ou plusieurs des différentes machines constituant l'installation informatique du cluster.

Sommaire

Terminologie

  • Un cluster (ou encore grappe de serveurs, ferme de calcul) est un ensemble d'ordinateurs agencés en réseau -en général rapide ; il se compose de plusieurs unités (certains clusters atteignent la taille de plusieurs dizaines de milliers d'unités). Il est généralement utilisé pour réaliser des traitements lourds en ressource de calcul et/ou de mémoire.
  • Un nœud est l'un de ces ordinateurs qui composent le cluster. Il peut être mono- ou multiprocesseur, et il est géré par son propre système d'exploitation qui exploite ses ressources localement.
  • Le maître est un ordinateur qui fait tourner certains éléments du gestionnaire de tâches ainsi que les outils de supervision; il peut servir de nœud, même si dans la pratique ce cas est en général évité.
  • Le gestionnaire de tâches est composé de 3 éléments principaux :
    • Le serveur, élément central, chargé de réaliser l'interface entre les utilisateurs et les autres éléments,
    • L'ordonnanceur, chargé de gérer l'accès aux ressources du cluster,
    • Le lanceur de processus, appelé mom car étant le père (ou la mère) de tous les processus qu'il lance pour le compte des jobs.
  • Une queue est une file d'attente dans laquelle s'accumulent les jobs en attente de traitement par le serveur.
  • Une tâche ou job est un petit programme, écrit en général dans un langage de script (shell), contenant la définition de l'environnement dans lequel il souhaite lancer son calcul (nombre de nœuds, nombre de processeurs, etc.). Il contient aussi les références des fichiers utilisés et du programme de calcul qu'il souhaite lancer. Il est placé dans une queue par le serveur dans l'attente de son traitement.
  • Une règle d'ordonnancement (policy) définit quelle méthode doit appliquer l'ordonnanceur au traitement des tâches en attente dans les queues. Celle-ci peut être de type FIFO (premier rentré, premier sorti), ou bien utiliser des algorithmes spécialisés comme le backfilling, le fairshare, etc.

Historique

Composants

Le serveur

Le serveur occupe une place centrale dans le gestionnaire de tâches. Toutes les commandes des utilisateurs, de l'opérateur et de l'administrateur du système sont envoyées à ce serveur en TCP/IP. Le rôle principal de ce serveur est de fournir les services élémentaires dont on besoin les tâches :

  • créer les batch pour recevoir les tâches,
  • modifier les tâches,
  • protéger les tâches contre les crashs des nœuds,
  • placer les tâches en exécution,
  • suspendre les tâches en exécution,
  • tuer les tâches en exécution,
  • refuser les tâches selon certains critères
  • gérer les queues.

L'ordonnanceur

Les queues, quant à elles, sont constituées potentiellement de collections ordonnées de tâches en attente de traitement. On distingue 2 catégories de queues :

  • les queues de routage,
  • les queues d'exécution.

Elles possèdent des attributs qui conditionnent leur capacité à recevoir les jobs.

Une queue de routage possède pour attribut une liste ordonnée de queues d'exécution et sert à aiguiller les tâches dirigées vers elles par un utilisateur vers la première de ces queues d'exécution pour laquelle les ressources disponibles atteignent les ressources demandées.

les lanceurs de processus

Interactions entre les composants

Les principes du calcul parallèle

Les implémentations

COW salah

Beowulf

PBS Pro

SGE

Torque

Maui

Maui Cluster Scheduler, précurseur de Moab, est un ordonnanceur de tâches (scheduler) open source destiné aux clusters et aux super-ordinateurs. C'est un outil configurable et optimisé destiné à supporter plusieurs politiques d'ordonnancement, les priorités dynamiques, la réservation étendues de plages temporelles, le partage équitable des ressources (fairshare). Il est actuellement utilisé par des centaines de gouvernements, dans l'éducation, et sur des serveurs à visée commerciale à travers le monde. Toutes les capacités présentes sur Maui le sont aussi sur Moab, puisque Moab a ajouté à Maui des fonctionnalités telles que la notion de réseau virtuel de clusters (VPC, voir VPN), utile lorsque les nœuds sont dispersés géographiquement sur plusieurs réseaux, le support des déclencheurs basiques, des outils d'administration graphique, et un portail web à destination des utilisateurs.

Moab

Open PBS

LSF

OAR

OAR est un gestionnaire de ressources pour grappe de PC (cluster de calcul) développé originellement au laboratoire ID-IMAG à Grenoble, comme un clone d'OpenPBS (80% des fonctionnalités/20% du nombre de lignes de code), sous licence libre (OpenSource).

Aujourd'hui OAR est le gestionnaire de ressource utilisé par la plate-forme expérimentale nationale de grille de calcul Grid'5000, ainsi que par plusieurs autres sites universitaires, voire industriels.

  • Portail de l’informatique Portail de l’informatique
Ce document provient de « Gestionnaire de t%C3%A2ches ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Gestionnaire de batchs de Wikipédia en français (auteurs)

Игры ⚽ Нужен реферат?

Regardez d'autres dictionnaires:

  • Gestionnaire De Tâches —  Ne doit pas être confondu avec Gestionnaire des tâches Windows. Les gestionnaires de tâches ou de batchs occupent une place particulière dans le domaine de l informatique appelé le calcul haute performance. Ils servent en général à gérer de …   Wikipédia en Français

  • Gestionnaire de taches — Gestionnaire de tâches  Ne doit pas être confondu avec Gestionnaire des tâches Windows. Les gestionnaires de tâches ou de batchs occupent une place particulière dans le domaine de l informatique appelé le calcul haute performance. Ils… …   Wikipédia en Français

  • Gestionnaire de tâches —  Ne doit pas être confondu avec Gestionnaire des tâches Windows. Les gestionnaires de tâches ou de batchs occupent une place particulière dans le domaine de l informatique appelé le calcul haute performance. Ils servent en général à gérer de …   Wikipédia en Français

  • Autoexec.bat — est le nom d’un fichier système rencontré à l’origine dans le système d’exploitation MS DOS. Il s’agit d’un fichier batch de type .bat (fichier de commandes au format texte) situé à la racine du périphérique sur lequel l’ordinateur démarre. Le… …   Wikipédia en Français

  • Wpackage — Wpkg WPKG est un logiciel de déploiement, de mise à jour et de suppression automatisés des paquetages pour Windows. Il peut être utilisé pour pousser/tirer des paquetages logiciels tels que des Services Packs, des hotfixs, ou des programmes d… …   Wikipédia en Français

  • Wpkg — est un logiciel de déploiement, de mise à jour et de suppression automatisés des paquetages pour Windows. Il peut être utilisé pour pousser/tirer des paquetages logiciels tels que des Services Packs, des hotfixs, ou des programmes d installation… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”