Kepler : gestionnaire graphique de workflow

Fiche PLUME
  • Statut de la fiche : Logiciel : Archivé
  • Création ou MAJ importante : 28/10/2010
  • Correction mineure : 10/04/2012
  • Auteur : Pierre Navaro - IRMA (CNRS, Université de Strasbourg)
  • Responsable thématique : Geneviève Romier (Institut des Grilles et du Cloud)
  • Relecteur 1 : Christophe Caron
  • Relecteur 2 : Sylvain Reynaud
Mots clés
Description
Fonctionnalités générales

Kepler est un gestionnaire de “Workflow” : une application Java qui permet d'exécuter des tâches élémentaires ou non suivant un modèle définissant en particulier comment celles-ci sont synchronisées. On dispose d’une bibliothèque "d'acteurs" que l’on connecte entre eux et l'exécution est contrôlée par un "directeur". Il est possible de créer ses propres acteurs en Java, mais également avec d'autres langages. Il permet aussi de les partager très facilement par l’intermédiaire d’un fichier unique de description au format XML.

Autres fonctionnalités
  • Les applications construites avec Kepler peuvent être exécutées avec l'interface graphique mais également par ligne de commande.
  • L'exécution des tâches peut être réalisée aussi bien sur un cluster que sur une grille de calcul.

  • Supporte le regroupement d'acteurs, cela permet d'utiliser ces nouveaux modules dans d'autres "workflow" mais aussi de les partager avec la communauté.
  • Comporte un système d'annotations qui permet à l'utilisateur de commenter très précisément le workflow.
  • Les nouveaux composants créés par un utilisateur sont exportables dans un fichier KAR qui est une archive basée sur le format JAR de Java.
  • On peut importer ces archives KAR ou les déposer sur un portail web et l'acteur sera disponible directement dans l'interface graphique Kepler.
  • On peut intégrer des acteurs R, MATLAB, PYTHON.
  • L'ajout d'acteur initialement compilé en FORTRAN ou C est possible (réservé à un public averti)
Interopérabilité

Le logiciel peut interagir avec R, MATLAB et PYTHON. Kepler offre la possibilité de consommer des Web Services dans le cadre de traitements distribués et il permet également de de voir et d'exécuter un workflow sur une page web a l'aide d'applets.

Contexte d'utilisation dans mon laboratoire/service

Cette application est utilisée pour relier entre elles un ensemble d'applications pour la simulation numérique.
Nous développons actuellement des acteurs pour visualiser des données issues de simulation d'évolution de plasmas et de particules chargées. Le logiciel est surtout utilisé dans la communauté bioinformatique et en astrophysique. Le logiciel constitue une excellente plateforme pour relier et exécuter un ensemble de codes de simulation et de visualisation sur une grille de calcul. Son interface graphique la rend plus accessible à tout physicien non développeur.

Limitations, difficultés, fonctionnalités importantes non couvertes
  • Ce logiciel est jeune, la première version stable date de mai 2008.
  • Sur certains matériels le logiciel est assez lent surtout si on travaille à distance (via x11)
  • La création d'acteurs nécessite d'utiliser la version source du logiciel avec des problèmes de compilation qui peuvent survenir.
  • La communauté française est encore très restreinte.
Environnement du logiciel
Plates-formes

Windows, MAC OS X Intel, Linux

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

Kepler est une extension de Ptolemy II développé à Berkeley. Je pense que c'est une garantie d'évolution du logiciel. Kepler a également été choisi comme support des projets ITM et EUFORIA pour développer le TOKAMAK virtuel qui servira à l'expérience ITER. Il a ete egalement choisi pour le projet americain concurrent Center Plasma Edge Simulation http://www.cims.nyu.edu/cpes/

Références d'utilisateurs institutionnels

European Fusion Development Agreement (http://www.efda.org), Task force (http://efda-taskforce-itm.org)
EU Fusion for ITER Applications (http://euforia-project.eu)
https://kepler-project.org/users/projects-using-ke...

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums
Documentation utilisateur
Divers (astuces, actualités, sécurité)

Depuis la version 2.0 la procédure d'installation en version développeur a considérablement évoluée.Développer de nouveaux modules est devenu plus simple.

Contributions

Pour contribuer il faut être affilié à l'un des projets dont la liste est donnée sur cette page: http://www.kepler-project.org/Wiki.jsp?page=Contri...