Tournaments for mutual exclusion: verification and concurrent complexity

Wim H. Hesselink
2017 Formal Aspects of Computing  
Given a mutual exclusion algorithm MXd for d ≥ 2 threads, a mutual exclusion algorithm for N > d threads can be built in a tree of degree d with N leaves, with the critical section at the root of the tree. This tournament solution seems obviously correct and efficient. The present note proves the correctness, and formalizes the efficiency in terms of concurrent complexity by means of Bounded Unity. If the tree is balanced, the throughput is logarithmic in N . If moreover MXd satisfies FCFS
more » ... t-come first-served), the worst case individual delay of the tournament algorithm is of order N . This is optimal.
doi:10.1007/s00165-016-0407-x fatcat:ero6y6vs5jbuxhu74odovgmxc4