How To Elect a Leader Faster than a Tournament

The problem of electing a leader from among n contenders is one of the fundamental questions in distributed computing. In its simplest formulation, the task is as follows: given n processors, all participants must eventually return a win or lose indication, such that a single contender may win. Despite a considerable amount of work on leader election, the following question is still open: can we elect a leader in an asynchronous fault-prone system faster than just running a Θ(log n)-time tournament, against a strong adaptive adversary? In this paper, we answer this question in the affirmative, improving on a decades-old upper bound. We introduce two new algorithmic ideas to reduce the time complexity of electing a leader to O( log* n), using O(n2) point-to-point messages. A non-trivial application of our algorithm is a new upper bound for the tight renaming problem, assigning n items to the n participants in expected O(log2 n ) time and O(n2) messages. We complement our results with lower bound of Ω(n2) messages for solving these two problems, closing the question of their message complexity.

[1]  Maurice Herlihy,et al.  The topological structure of asynchronous computability , 1999, JACM.

[2]  Danny Hendler,et al.  Randomized mutual exclusion in O(log N / log log N) RMRs , 2009, PODC '09.

[3]  Dan Alistarh,et al.  How to Allocate Tasks Asynchronously , 2012, 2012 IEEE 53rd Annual Symposium on Foundations of Computer Science.

[4]  Edsger W. Dijkstra,et al.  Solution of a problem in concurrent programming control , 1965, CACM.

[5]  Rachid Guerraoui,et al.  Laws of order , 2011, POPL 2011.

[6]  Dan Alistarh,et al.  Tight Bounds for Asynchronous Renaming , 2014, J. ACM.

[7]  Leslie Lamport,et al.  The Byzantine Generals Problem , 1982, TOPL.

[8]  Maurice Herlihy,et al.  Wait-free synchronization , 1991, TOPL.

[9]  Dan Alistarh,et al.  Sub-logarithmic Test-and-Set against a Weak Adversary , 2011, DISC.

[10]  Hagit Attiya,et al.  Tight bounds for asynchronous randomized consensus , 2007, STOC '07.

[11]  Yehuda Afek,et al.  Wait-free Test-and-Set (Extended Abstract) , 1992, WDAG.

[12]  Nir Shavit,et al.  Optimal time randomized consensus—making resilient algorithms fast in practice , 1991, SODA '91.

[13]  Seif Haridi,et al.  Distributed Algorithms , 1992, Lecture Notes in Computer Science.

[14]  George Giakkoupis,et al.  A tight RMR lower bound for randomized mutual exclusion , 2012, STOC '12.

[15]  Alexander A. Shvartsman,et al.  Efficient parallel algorithms can be made robust , 1989, PODC '89.

[16]  E. Szemerédi,et al.  O(n LOG n) SORTING NETWORK. , 1983 .

[17]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1983, PODS '83.

[18]  George Giakkoupis,et al.  On the time and space complexity of randomized test-and-set , 2012, PODC '12.

[19]  Dan Alistarh,et al.  Communication-efficient randomized consensus , 2017, Distributed Computing.

[20]  Dan Alistarh,et al.  Fast Randomized Test-and-Set and Renaming , 2010, DISC.

[21]  Leslie Lamport,et al.  Reaching Agreement in the Presence of Faults , 1980, JACM.

[22]  Hagit Attiya,et al.  Renaming in an asynchronous environment , 1990, JACM.

[23]  Rachid Guerraoui,et al.  Laws of order: expensive synchronization in concurrent algorithms cannot be eliminated , 2011, POPL '11.

[24]  Danny Hendler,et al.  Adaptive randomized mutual exclusion in sub-logarithmic expected time , 2010, PODC '10.

[25]  Hagit Attiya,et al.  Sharing memory robustly in message-passing systems , 1990, PODC '90.

[26]  Prabhakar Ragde,et al.  Parallel Algorithms with Processor Failures and Delays , 1996, J. Algorithms.

[27]  János Komlós,et al.  An 0(n log n) sorting network , 1983, STOC.

[28]  Michael Ben-Or,et al.  Another advantage of free choice (Extended Abstract): Completely asynchronous agreement protocols , 1983, PODC '83.