Projet : ADP

previous up next contents
Précédent : Cohérence de mémoires réparties d'objets Remonter : Résultats nouveaux Suivant : Contraintes non-fonctionnelles


Sous-sections


   
Points de contrôle et retour arrière



Participants : Roberto Baldoni, Mimmo Cioffi, Jean-Michel Hélary, Achour Mostéfaoui, Michel Raynal.

Mots clés : causalité, point de contrôle, cohérence, tolérance aux défaillances .

Résumé :

Nous avons essentiellement raffiné les résultats essentiels obtenus en 1996 et 1997, notamment dans l'étude de la cohérence forte et dans la recherche d'un ensemble minimal de Z-chemins dont la suppression suffit à assurer la propriété RDT.

Nous nous sommes intéressés au problème de la détermination de points de contrôle globaux cohérents selon les deux approches coordination induite par les communications (communication-induced checkpointing) et non coordonnée. L'expertise que nous avons acquise les années précédentes nous a conduit à effectuer un travail de synthèse sur le sujet [[14]].

Etudes dans le cadre de la notion classique de cohérence

Nous nous sommes intéressés à la question essentielle : ``l'abstraction d'un calcul obtenue en ne considérant que les points de contrôle locaux et leurs relations de dépendance, est-elle cohérente?'' Nous avons examiné deux réponses à cette question, chacune considérant une notion de cohérence particulière pour l'abstraction définie par les points de contrôle.

Dans le premier cas, l'abstraction est cohérente si tout point de contrôle local appartient à au moins un point de contrôle global cohérent. En d'autres termes, il n'y a pas de point de contrôle local qui s'avère inutile du point de vue de la construction des points de contrôle globaux cohérents. Nous avons proposé un protocole non coordonné de prises de points de contrôle locaux. Dans une stratégie non-coordonnée, les processus prennent des points de contrôle locaux de manière indépendante. Le problème est alors le suivant: étant donné un sous-ensemble de points de contrôle locaux (au plus un par processus), la théorie de Netzer et Xu permet de répondre à la question existe-t-il un point de contrôle global cohérent qui contient ce sous-ensemble? par une caractérisation théorique. Le protocole proposé est capable de répondre en ligne à cette question; de plus, si la réponse est positive, il fournit le point de contrôle global cohérent le plus récent englobant le sous-ensemble donné, sinon il fournit le ``prochain'' point de contrôle global cohérent.

La seconde notion de cohérence, plus forte que la précédente, est la propriété RDT (pour Rollback-Dependency Trackability) introduite par Wang. Dans le cadre de l'approche coordination induite par les communications, nous nous sommes intéressés à la recherche de conditions optimales sous lesquelles un processus sera obligé de prendre un point de contrôle forcé. Par là nous entendons la recherche de conditions telles que le nombre de points de contrôle forcé serait le plus faible possible. Dans une approche ``théorique'', il s'agit de définir un ensemble de Z-chemins dont la suppression (par prise de points de contrôles locaux) suffit à assurer la propriété RDT. Trivialement, cette propriété est assurée si tous les Z-chemins sont ainsi supprimés. Mais cette solution peut s'avérer coûteuse en termes du nombre de points de contrôle forcés qu'elle induit. Nous avons donc caractérisé un ensemble minimal de Z-chemins dont la suppression assure la propriété RDT [[34]].

Extensions de la notion de cohérence

Les deux autres modèles de cohérence que nous avons développé, respectivement l'absence de messages en transit (transitlessness), duale de la notion classique, et la cohérence forte, réunion de la cohérence classique et de l'absence de transit nous ont conduit à proposer un formalisme abstrait, englobant les trois modèles précédents. Dans ce formalisme, nous avons exprimé la condition nécessaire et suffisante pour qu'un ensemble de points de contrôle locaux puise faire partie d'un point de contrôle global cohérent ([[15]]). Cette étude théorique nous a servi de fondement pour concevoir de nouveaux protocoles assurant la cohérence forte, en combinant les deux techniques de points de contrôle forcés et de sauvegarde des messages (logging), ainsi qu'à l'étude des compromis entre ces deux techniques ([[22]]).

Extension des modèles de calcul

Les problèmes de cohérence de points de contrôle ont presque toujours été posés et étudiés dans le cadre du modèle de calcul réparti asynchrone basé exclusivement sur l'échange de messages. Nous avons élargi ce cadre en considérant un modèle générique de calcul réparti asynchrone, basé sur une relation de causalité générale. Ce modèle recouvre aussi bien le modèle à mémoire partagée, que différents modèles à échange de messages tels que le modèle fiable point-à-point, le modèle non fiable ou encore le modèle à diffusion (multicast). Dans ce cadre générique, nous avons donné une définition de la cohérence, puis exprimé et prouvé une condition nécessaire et suffisante pour qu'un ensemble de points de contrôle locaux puise faire partie d'un point de contrôle global cohérent ([[9]]).



previous up next contents
Précédent : Cohérence de mémoires réparties d'objets Remonter : Résultats nouveaux Suivant : Contraintes non-fonctionnelles