Chemical computing for distributed systems : algorithms and implementation

par Marko Obrovac

Thèse de doctorat en Informatique

Sous la direction de Thierry Priol et de Cédric Tedeschi.

  • Titre traduit

    Programmation chimique pour les systèmes répartis : algorithmes et implémentation


  • Résumé

    Avec l’émergence de plates-formes distribuées très hétérogènes, dynamiques et à large-échelle, la nécessité d’un moyen de les programmer efficacement et de les gérer a surgi. Le concept de l’informatique autonomique propose de créer des systèmes autogérables — des systèmes qui sont conscients de leurs composants et de leur environnement, et peuvent se configurer, s’optimiser, se guérir et se protéger. Dans le cadre de la réalisation de tels systèmes, la programmation déclarative, dont l’objectif est de faciliter la tâche du programmeur en séparant le contrôle de la logique du calcul, a retrouvé beaucoup d’intérêt ce dernier temps. En particulier, la programmation à base de des règles est considérée comme un modèle prometteur dans cette quête pour des abstractions de programmation adéquates pour ces plates-formes. Cependant, bien que ces modèles gagnent beaucoup d’attention, ils créent une demande pour des outils génériques capables de les exécuter à large échelle. Le modèle de programmation chimique, qui a été conçu suite à la métaphore chimique, est un modéle de programmation à bas de règles et d’ordre supérieur, avec une exécution non-déterministe modèle, où les règles sont appliquées simultanément sur un multi-ensemble de données. Dans cette thèse, nous proposons la conception, le développement et l’expérimentation d’un intergiciel distribué pour l’exécution de programmes chimique sur des plates-formes à large échelle et génériques. L’architecture proposée combine une couche de communication pair-à-pair avec un protocole de capture atomique d’objets sur lesquels les règles doivent être appliquées, et un système efficace de détection de terminaison. Nous décrivons le prototype d’intergiciel mettant en œuvre cette architecture. Basé sur son déploiement dans un banc d’essai réel, nous présentons les résultats de performance, qui confirment les complexités analytiques obtenues et montrons expérimentalement la viabilité d’un tel modèle de programmation.


  • Résumé

    With the emergence of highly heterogeneous, dynamic and large distributed platforms, the need for a way to efficiently program and manage them has arisen. The concept of autonomic computing proposes to create self-manageable systems — systems which are aware of their components and their environment, and can configure, optimise, heal and protect themselves. In the context of realisation of such systems, declarative programming, whose goal is to ease the programmer’s task by separating the control from the logic of a computation, has regained a lot of interest recently. In particular, rule-based programming is regarded as a promising model in this quest for adequate programming abstractions for these platforms. However, while these models are gaining a lot of attention, there is a demand for generic tools able to run such models at large scale. The chemical programming model, which was designed following the chemical metaphor, is a higher-order, rule-based programming model, with a non-deterministic execution model, where rules are applied concurrently on a multiset of data. In this thesis, we propose the design, development, and experimentation of a distributed chemical runtime for generic, largely-distributed platforms. The architecture proposed combines a peer-to-peer communication layer with an adaptive protocol for atomically capturing objects on which rules should be applied, and an efficient termination-detection scheme. We describe the software prototype implementing this architecture. Based on its deployment over a real-world test-bed, we present its performance results, which confirm analytically obtained complexities, and experimentally show the sustainability of such a programming model.

Consulter en bibliothèque

La version de soutenance existe

Informations

  • Détails : 1 vol. (IV-183p.)
  • Notes : Publication autorisée par le jury
  • Annexes : Bibliogr. p. 159-168. Liste des publications p. 169-170

Où se trouve cette thèse\u00a0?

  • Bibliothèque : Université de Rennes I. Service commun de la documentation. Section sciences et philosophie.
  • Disponible pour le PEB
  • Cote : TA RENNES 2013/15
  • Bibliothèque : Université de Rennes I. Service commun de la documentation. Bibliothèque de ressources en ligne.
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.