Abstract
We consider two algorithms for the barrier synchronization ofN processes: the Dissemination algorithm(2) and Brooks algorithm.(1,2) Both algorithms comprise a number of binary communications amongst the processes, organized into a sequence of stages. It is shown that Brooks' algorithm(1) requires between LogN(⌈log2 N⌉) and 2 LogN stages, the lower bound being guaranteed only in the case thatN is a power of 2 (cubic) and the upper bound seemingly needed for most otherN. On the other hand, it is shown(2) that the Dissemination algorithm requires only LogN stages regardless ofN, making it apparently superior to the Brooks algorithm. We introduce a network model of local barrier algorithms. Using it we obtain a rigorous correctness proof for local barrier algorithms, and show that the number of stages in the Brooks algorithm is bounded above by LogN+1. The Brooks algorithms is therefore essentially equivalent in time complexity to the Dissemination algorithm. We then address the question of which values ofN admit exactly LogN Brooks stages. We find a sufficient condition, and conjecture that it is also necessary.
Similar content being viewed by others
References
E. D. Brooks, The Butterfly Barrier,International J. Parallel Programming,15(4):295–307 (1986).
D. Hensgen, R. Finkel and U. Manber, Two Algorithms for Barrier Synchronization,International J. Parallel Programming,17(1):1–17 (1988).
L. Lamport, Time, Clocks, and the Ordering of Events in a Distributed System,Commun. ACM 21(7):558–565 (July 1975).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Livesey, M. A network model of barrier synchronization algorithms. Int J Parallel Prog 20, 55–74 (1991). https://doi.org/10.1007/BF01407932
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF01407932