Grille et middleware cloud

Renforcer l'informatique haute performance depuis 2000

DIET (Distributed Interactive Engineering Toolboxes) est un middleware conçu pour le calcul haute performance dans un environnement hétérogène et distribué (postes de travail, clusters, grilles, clouds).

DIET a été créé et est toujours activement amélioré et mis à jour par une communauté open source dirigée par le groupe de recherche AVALON.

Introduction au régime

Parmi les approches existantes des logiciels Web, une approche simple, puissante et flexible consiste à utiliser les serveurs disponibles dans divers domaines administratifs via les paradigmes traditionnels client-serveur ou appel de procédure distante (RPC). Les serveurs NES (Network-Enabled Servers) implémentent ce modèle, également appelé Grid-RPC. Les clients soumettent des demandes de calcul à un planificateur dont le but est de trouver un serveur disponible sur les ressources.

L'objectif du projet DIET est de développer un ensemble d'outils pour la construction de serveurs informatiques. Les gros problèmes peuvent désormais être calculés sur Internet grâce aux environnements de calcul de grille – tels que Globus ou Legion – ou via des solutions cloud – telles qu'Amazon EC2. Étant donné que la plupart des applications actuelles sont numériques, l'utilisation de bibliothèques telles que BLAS, LAPACK, ScaLAPACK ou PETSc est obligatoire. L'intégration de telles bibliothèques dans des applications de haut niveau utilisant des langages comme Fortran ou C est loin d'être facile. En outre, la puissance de calcul et les besoins en mémoire de ces applications peuvent ne pas être disponibles sur chaque poste de travail. Ainsi, RPC semble être un bon candidat pour créer des environnements de résolution de problèmes en ligne.

Contexte de DIET

Des problèmes majeurs allant de la simulation numérique aux sciences de la vie peuvent désormais être résolus sur Internet à l'aide d'un middleware basé sur le Web. Il existe plusieurs approches pour porter des applications sur des plateformes Web; Les exemples incluent le transfert de messages classique, le traitement par lots, les portails Web et les systèmes Grid-RPC. Cette dernière approche implémente une version de grille du modèle RPC (Remote Procedure Call) classique. Les clients soumettent des demandes de calcul à un planificateur qui trouve un ou plusieurs serveurs disponibles en ligne. La planification est souvent utilisée pour équilibrer le travail entre les serveurs et une liste des serveurs disponibles est retournée au client; le client peut ensuite envoyer les données et demander à l'un des serveurs proposés de résoudre le problème. Grâce à l'augmentation de la bande passante du réseau et à la réduction des retards du réseau, des demandes de calcul relativement petites peuvent désormais être envoyées aux serveurs disponibles en ligne. Afin d'utiliser efficacement les plates-formes de ressources évolutives d'aujourd'hui, il est important de garantir l'évolutivité dans les couches intermédiaires.

Le projet DIET est axé sur le développement d'un middleware évolutif, les efforts initiaux étant concentrés sur la distribution du problème de planification sur plusieurs agents. DIET se compose d'un ensemble d'éléments qui peuvent être utilisés ensemble pour créer des applications à l'aide du paradigme Grid-RPC. Ce middleware peut trouver un serveur approprié en fonction des informations fournies dans la demande du client (par exemple problème à résoudre, taille des données impliquées), performances de la plateforme cible (par exemple charge du serveur, mémoire disponible, performances de communication) et la disponibilité locale des données stockées lors des calculs précédents. Le planificateur est distribué à l'aide de plusieurs hiérarchies de collaboration qui sont liées de manière statique ou dynamique (de manière poste à poste). La gestion des données est fournie pour permettre aux données persistantes de rester dans le système pour une réutilisation future. Cette fonctionnalité évite les communications inutiles lorsqu'il existe des dépendances entre différentes demandes.

Grille et middleware cloud
4.9 (98%) 32 votes