Participants : Emmanuelle
Anceaume, Jean-Michel Hélary, Michel Raynal.
Mots clés : algorithme réparti,
causalité, détection de propriétés, détection décentralisée,
état global partagé, conjonction de prédicats locaux
.
Résumé :
Les horloges logiques (scalaires, vectorielles ou
matricielles) sont un mécanisme puissant utilisé par de
nombreux algorithmes de contrÔle réparti. Nous nous sommes
intéressés à étudier leur puissance et leur limitation pour
détecter des propriétés d'exécutions réparties.
Les horloges vectorielles constituent le mécanisme le plus
approprié pour capter la causalité entre les événements
produits lors de l'exécution d'un calcul réparti. Les
implémentations traditionnelles des horloges vectorielles
nécessitent d'attacher des vecteurs d'entiers de taille
n aux messages de
l'application (où n est le
nombre de processus). Dans ce cadre, nous nous intéressons à
la capture des dépendances causales sur un sous-ensemble
d'événements que l'application considère comme pertinents.
Nous présentons un protocole qui fournit un estampillage
correct des événements pertinents sous la contrainte
suivante : l'information de contrÔle attachée à chaque
message est bornée à b
identificateurs d'événements (où b est une constante prédéfinie comprise
entre 1 et n) [24].
Toutefois, borner a priori
cette taille peut conduire à une perte irrémédiable
d'information si les événements observables ne sont pas
correctement choisis. Le défi consiste à déterminer la taille
minimale de la surcharge, en fonction d'un ensemble donné
d'événements observables, permettant de capter toutes les
dépendances causales. Nous répondons à cette question, qui
constituait jusqu'alors un problème ouvert. La taille
minimale est déterminée à partir d'un graphe valué, qui
représente le calcul réparti et ses événements observables.
Bien que la construction complète nécessite la connaissance
de tout le calcul, le graphe peut être utilisé en différé
pour effectuer l'analyse a
posteriori d'un calcul [25].
Dans [34] nous présentons une famille de protocoles
qui associent à chaque événement pertinent une estampille
identifiant de manière unique ses prédécesseurs immédiats.
Cette famille est définie par une condition abstraite qui
permet aux messages applicatifs de transmettre des
informations de contrÔle de taille bornée (< n, n étant le nombre de processus). Cette
famille définit une suite de protocoles IPT efficaces.
Nous avons aussi étudié la communication logiquement
instantanée (LI) [15,17,30]. C'est un mode de communication
plus contraignant que la communication causale mais moins que
le rendez-vous. En effet lors d'un rendez-vous un événement
d'émission s'exécute en même temps que l'événement de
réception correspondant. La communication LI assure qu'il
existe un estampillage logique (référentiel logique de temps)
tel que cette contrainte d'instantanéité est vérifiée.