Étude de la complexité des implémentations d'objets concurrents, sans attente, abandonnables et/ou solo-rapides
Auteur / Autrice : | Claire Capdevielle |
Direction : | Colette Johnen, Alessia Milani |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 03/11/2016 |
Etablissement(s) : | Bordeaux |
Ecole(s) doctorale(s) : | École doctorale Mathématiques et informatique (Talence, Gironde ; 1991-....) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire bordelais de recherche en informatique |
Jury : | Président / Présidente : David James Sherman |
Examinateurs / Examinatrices : David James Sherman, Carole Delporte-Gallet, Achour Mostefaoui, Mathieu Roy | |
Rapporteur / Rapporteuse : Carole Delporte-Gallet, Achour Mostefaoui |
Mots clés
Mots clés contrôlés
Résumé
Dans un ordinateur multiprocesseur, lors de l'accès à la mémoire partagée, il faut synchroniser les entités de calcul (processus). Cela peut se faire à l'aide de verrous, mais des problèmes se posent (par exemple interblocages, mauvaise tolérance aux pannes). On s'est intéressé à l'implémentation d'abstractions (consensus et construction universelle) qui peuvent faciliter la programmation concurrente sans attente, sans utiliser de verrous mais basés sur des lectures/écritures atomiques (LEA). L'usage exclusive des LEA ne permet pas de réaliser un consensus sans attente. Néanmoins, autoriser l'usage de primitives offrant une puissance de synchronisation plus forte que des LEA, mais coûteuse en temps de calcul, le permet. Nous nous sommes donc intéressés dans cette thèse à des programmes qui limitent l'usage de ces primitives aux seules situations où les processus sont en concurrence, ces programmes sont dit solo-rapides. Une autre piste étudiée est de permettre à l'objet, lorsqu'il y a de la concurrence, de retourner une réponse spéciale ''abandon'' qui signifie l'abandon des calculs en cours. Ces objets sont dit abandonnables. D'une part, nous donnons des implémentations d'objets concurrents sans attente, abandonnables et/ou solo-rapides. Pour cela, nous proposons une construction universelle qui assure à l'objet implémenté d'être abandonnable et solo-rapide ; nous avons réalisés des algorithmes de consensus solo-rapides et des algorithmes de consensus abandonnable. D'autre part nous étudions la complexité en espace de ces implémentations en proposant des bornes inférieures sur l'implémentation des objets abandonnables et sur le consensus.