In a wait-free model any number of processes may crash. A process runs solo when it computes its local output without receiving any communication from other processes, either because they crashed or they are too slow. While in wait-free shared-memory models at most one process may run solo in an execution, any number of processes may have to run solo in an asynchronous wait-free message-passing model. This paper is on the computability power of models in which several processes may concurrently run solo. It first introduces a family of round-based wait-free models, called the d-solo models, 1 ≤ d ≤ n, where up to d processes may run solo. The paper gives then a characterization of the colorless tasks that can be solved in each d-solo model. These results establish for the first time a hierarchy of wait-free models weaker than the basic read/write model, that are nevertheless still strong enough to solve many tasks. The new failure model, based on taking into account solo executions, has message passing as well as shared-memory instantiations.
Key-words:Approximate agreement, Asynchronous system, Communication object, Distributed computability, Message-passing, Read/write shared memory, Solo execution, System partitioning, Task solvability, Topology, Waitfreedom
Calcul en présence d'exécutions solo concurrentesRésumé : Dans un modèle wait-free, un nombre quelconque de processus peut s'arrêter de fonctionner de façon inopinée. Un processus s'exécute en solo lorsqu'il calcule sa valeur de sortie sans communiquer avec les autres processus. Dans les modèles wait-free dans lesquels les processus communiquent via une mémoire partagée, au plus un processus peut s'exécuter en solo, alors que dans les modèles wait-free dans lesquels la communication se fait par échange de messages, un nombre quelconque d'entre eux peut avoir à s'exécuter en solo. Cet article étudie la calculabilité dans des modèles intermédiaires, appelés d-solo modèles, modèles dans lesquels jusqu'à d processus s'exécutent en solo.
Mots clés :Accord approché, système asynchrone, objet de communication, calculabilité distribuée, système à passage de messages, mémoire partagée, exécution en solo, partitionnement de système, solvabilité d'une tâche, topologie, synchronisation sans attente.