Abstract
The optimal space complexity of consensus in asynchronous shared memory was an open problem for two decades. For a system of n processes, no algorithm using a sublinear number of registers is known. Up until very recently, the best known lower bound due to Fich, Herlihy, and Shavit was \({\varOmega }(\sqrt{n})\) registers. Fich, Herlihy, and Shavit first proved their lower bound for the special case of the problem where processes are anonymous (i.e. they run the same algorithm) and then extended it to the general case. In this paper we close the gap for the anonymous case of the problem. We show that any consensus algorithm from read–write registers for anonymous processes that satisfies nondeterministic solo termination has to use \({\varOmega }(n)\) registers in some execution. This implies an \({\varOmega }(n)\) lower bound on the space complexity of deterministic obstruction-free and randomized wait-free consensus, matching the upper bound. We introduce new techniques for marshalling anonymous processes and their executions, in particular, the concepts of leader–follower pairs and reserving executions, that play a critical role in the lower bound argument and will hopefully be more generally applicable.
Similar content being viewed by others
References
Abrahamson, K.: On achieving consensus using a shared memory. In: Proceedings of the 7th Annual ACM Symposium on Principles of Distributed Computing, pp. 291–302. ACM (1988)
Aspnes, J., Herlihy, M.: Fast randomized consensus using shared memory. J. Algorithms 11(3), 441–461 (1990)
Attiya, H., Ellen, F.: Impossibility Results for Distributed Computing, vol. 5. Morgan & Claypool Publishers, San Rafael (2014)
Ben-Or, M.: Another advantage of free choice (extended abstract): completely asynchronous agreement protocols. In: Proceedings of the 2nd Annual ACM Symposium on Principles of Distributed Computing, pp. 27–30. ACM (1983)
Bouzid, Z., Raynal, M., Sutra, P.: Brief announcement: Anonymous obstruction-free \((n, k)\)-set agreement with \(n- k+ 1\) atomic read/write registers. In: Proceedings of the 29th International Symposium on Distributed Computing, p. 669. Springer (2015)
Bowman, J.: Obstruction-free snapshot, obstruction-free consensus, and fetch-and-add modulo k. Tech. Rep. TR2011-681, Dartmouth College, Computer Science, Hanover, NH (2011)
Ellen, F., Gelashvili, R., Zhu, L.: Revisionist simulations: a new approach to proving space lower bounds. ArXiv preprint arXiv:1711.02455 (2018)
Fich, F., Herlihy, M., Shavit, N.: On the space complexity of randomized synchronization. J. ACM (JACM) 45(5), 843–862 (1998)
Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM (JACM) 32(2), 374–382 (1985)
Giakkoupis, G., Helmi, M., Higham, L., Woelfel, P.: An \({\cal O\it }(\sqrt{n})\) space bound for obstruction-free leader election. In: Proceedings of the 27th International Symposium on Distributed Computing, pp. 46–60. Springer (2013)
Giakkoupis, G., Helmi, M., Higham, L., Woelfel, P.: Test-and-set in optimal space. In: Proceedings of the 47th Annual ACM on Symposium on Theory of Computing, pp. 615–623. ACM (2015)
Guerraoui, R., Ruppert, E.: What can be implemented anonymously? In: Proceedings of the 19th International Symposium on Distributed Computing, pp. 244–259. Springer (2005)
Saks, M., Shavit, N., Woll, H.: Optimal time randomized consensus—making resilient algorithms fast in practice. In: Proceedings of the 2nd Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 351–362. Society for Industrial and Applied Mathematics (1991)
Styer, E., Peterson, G.L.: Tight bounds for shared memory symmetric mutual exclusion problems. In: Proceedings of the 8th Annual ACM Symposium on Principles of Distributed Computing, pp. 177–191. ACM (1989)
Zhu, L.: Brief announcement: Tight space bounds for memoryless anonymous consensus. In: Proceedings of the 29th International Symposium on Distributed Computing, p. 665. Springer (2015)
Zhu, L.: A tight space bound for consensus. In: Proceedings of the 48th Annual ACM Symposium on Theory of Computing, pp. 345–350. ACM (2016)
Acknowledgements
The author would like to thank Nir Shavit, Michael Coulombe, Dan Alistarh, Faith Ellen and Leqi Zhu for helpful conversations and feedback, and anonymous reviewers for their excellent comments.
Author information
Authors and Affiliations
Corresponding author
Additional information
Support is gratefully acknowledged from the National Science Foundation under Grants CCF-1217921, CCF-1301926, and IIS-1447786, the Department of Energy under Grant ER26116/DE-SC0008923, and the Oracle and Intel corporations.
Rights and permissions
About this article
Cite this article
Gelashvili, R. On the optimal space complexity of consensus for anonymous processes. Distrib. Comput. 31, 317–326 (2018). https://doi.org/10.1007/s00446-018-0331-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00446-018-0331-9