DIET

Fiche logiciel validé
  • Création ou MAJ importante : 18/04/13
  • Correction mineure : 18/04/13
Mots-clés
Pour aller plus loin

DIET : intergiciel de type GridRPC

Description
Fonctionnalités générales

DIET (Distributed Interactive Engineering Toolbox) est un intergiciel de type GridRPC permettant l'appel de procédures distantes sur des plates-formes distribuées hétérogènes de manière transparente. Il intègre une gestion avancée de l'ordonnancement des tâches permettant de définir des politiques adaptées à chaque application distribuée ainsi qu'un gestionnaire de données qui peut interagir avec l'ordonnancement. L'API de DIET permet un développement rapide et efficace d'applications distribuées sans connaissance a priori de la plate-forme d'exécution, l'intergiciel se chargeant de déterminer quelles ressources sont les plus adaptées au moment de la soumission de la tâche.

Autres fonctionnalités

DIET intègre un moteur de workflows dynamiques et des interfaces pour l'utilisation de gestionnaires de batch ainsi que des plates-formes de cloud Amazon EC2, Eucalyptus ou Nimbus (fonctionnalités encore expérimentales). Il permet également de gérer la réplication des données distribuées sur les nœuds de calcul, de manière explicite (par l'utilisation de l'API) ou de manière implicite (réplications gérées par l'intergiciel lui-même).

Interopérabilité

DIET est utilisable sur la plupart des systèmes Unix (GNU/Linux, Mac OS X, AIX, ...) et sous Windows grâce à Cygwin. Sa compilation dépend de la disponibilité de l'ORB omniORB, de la bibliothèque Boost et des bibliothèques POSIX.

Contexte d'utilisation dans mon laboratoire/service

Au laboratoire MIS de l'UPJV, DIET est pour l'instant utilisé pour le portage d'applications scientifiques vers des plates-formes distribuées dans le cadre d'expérimentations et d'évaluations de politiques d'ordonnancement et de placement/réplication de données. Cependant, ces expérimentations visent à proposer des solutions viables pour l'utilisation en production de ces applications.
Plusieurs applications de bio-informatique dont l'outil de recherche d'alignements de séquences BLAST et des outils destinés à l'assemblage de génomes de novo ont été adaptés à l'utilisation de plates-formes distribuées grâce à DIET.

Limitations, difficultés, fonctionnalités importantes non couvertes

Dans l'état actuel, DIET reste assez complexe à configurer et à mettre en œuvre. Il nécessite par ailleurs des développements en C et C++ pour le portage des applications. Des APIs dans d'autres langages faciliteraient certainement une diffusion plus large. La documentation fournie est très complète mais manque d'un guide de démarrage rapide pour faciliter sa prise en main.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

Fedora 17, Debian sid (unstable)

Plates-formes

Linux : toutes les distributions permettant l'utilisation d'omniORB et de Boost. Testé récemment sous Debian (sur processeurs x86, x86_64 et ARM), Fedora et Gentoo.

Logiciels connexes
Autres logiciels aux fonctionnalités équivalentes
Environnement de développement
Type de structure associée au développement

Laboratoire de recherche et éditeur professionnel Sysfera (http://www.sysfera.fr/)
Plus de détails sur http://graal.ens-lyon.fr/DIET/project/project-team
DIET fait l'objet de publications scientifiques : http://graal.ens-lyon.fr/DIET/biblio/index.html

Eléments de pérennité

DIET est utilisé par plusieurs projets importants (Décrypthon, GridTLSE) et fait partie de l'offre de la société SysFera (http://www.sysfera.com)

Références d'utilisateurs institutionnels

Projet Décrypthon http://www.decrypthon.fr
GridTLSE http://gridtlse.org

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Listes DIET-users, DIET-dev - http://graal.ens-lyon.fr/DIET/project/mailing-lists
Peu de trafic mais une excellente réactivité.

Documentation utilisateur
Divers (astuces, actualités, sécurité)

DIET permet d'utiliser assez facilement des ressources de calcul dont l'accès est limité à des connexions ssh. Les "Forwarders" DIET permettent de fédérer des ressources très diverses dont la connectivité réseau est très limitée, pas forcément symétrique ou nécessitant de passer par des serveurs intermédiaires. Les exemples de configurations données dans le manuel utilisateur permettent de comprendre et mettre en œuvre facilement cette fonctionnalité.

Roadmap : la version du dépôt GIT (et donc prochaine release) s'intéresse au support de fédération de Clouds ainsi qu'une version sécurisée de l'intergiciel.

Contributions

Un outil de déploiement (GoDIET) est disponible sur le site officiel.