Abstract
In round-by-round models of distributed computing processes run in a sequence of (synchronous or asynchronous) rounds. The advantage of the round-by-round approach is that invariants established in the first round are preserved in later rounds. An elegant asynchronous round-by-round shared memory model, is the iterated snapshots model (IS). Instead of the snapshots model where processes share an array m[·] that can be accessed any number of times, indexed by process ID, where P i writes to m[i] and can take a snapshot of the entire array, we have processes share a two-dimensional array m[·,·], indexed by iteration number and by process ID, where P i in iteration r writes once to m[r, i] and takes one snapshot of row r, m[r,·]. The IS model lends itself more easily to combinatorial analysis. However, to show that whenever a task is impossible in the IS model the task is impossible in the snapshots model, a simulation is needed. Such a simulation was presented by Borowsky and Gafni in PODC97; namely, it was shown how to take a wait-free protocol for the snapshots model, and transform it into a protocol for the IS model, solving the same task.
In this paper we present a new simulation from the snapshots model to the IS model, and show that it can be extended to work with models stronger that wait-free. The main contribution is to show that the simulation can work with models that have access to certain communication objects, called 01-tasks. This extends the result of Gafni, Rajsbaum and Herlihy in DISC’2006 stating that renaming is strictly weaker than set agreement from the IS model to the usual non-iterated wait-free read/write shared memory model.
We also show that our simulation works with t-resilient models and the more general dependent process failure model of Junqueira and Marzullo. This version of the simulation extends previous results by Herlihy and Rajsbaum in PODC’2010 and DISC’2010 about the topological connectivity of a protocol complex in an iterated dependent process failure model, to the corresponding non-iterated model.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merrit, M., Shavit, N.: Atomic Snapshots of Shared Memory. J. ACM 40(4), 873–890 (1993)
Aguilera, M.K., Toueg, S.: A Simple Bivalency Proof that t-Resilient Consensus Requires t + 1 Rounds. Inf. Process. Lett. 71(3-4), 155–158 (1999)
Attiya, H., Bar-Noy, A., Dolev, D.: Sharing Memory Robustly in Message-Passing Systems. J. ACM 42(1), 124–142 (1995)
Attiya, H., Bar-Noy, A., Dolev, D., Peleg, D., Reischuk, R.: Renaming in an Asynchronous Environment. J. ACM 37(3), 524–548 (1990)
Afek, Y., Gafni, E., Rajsbaum, S., Raynal, M., Travers, C.: Simultaneous Consensus Tasks: A Tighter Characterization of Set-Consensus. In: Chaudhuri, S., Das, S.R., Paul, H.S., Tirthapura, S. (eds.) ICDCN 2006. LNCS, vol. 4308, pp. 331–334. Springer, Heidelberg (2006)
Baldoni, R., Raynal, M.: Fundamentals of Distributed Computing: A Practical Tour of Vector Clock Systems. IEEE Distributed Systems Online 3(2) (2002)
Biran, O., Moran, S., Zaks, S.: A Combinatorial Characterization of the Distributed 1-Solvable Tasks. J. Algorithms 11(3), 420–440 (1990)
Borowsky, E., Gafni, E.: Generalized FLP Impossibility Results for t-Resilient Asynchronous Computations. In: Proc. 25th ACM Symposium on the Theory of Computing (STOC 1993), pp. 91–100. ACM Press, New York (1993)
Borowsky, E., Gafni, E.: A Simple Algorithmically Reasoned Characterization of Wait-Free Computations (Extended Abstract). In: Proc. 16th ACM Symposium on Principles of Distributed Computing (PODC 1997), pp. 189–198. ACM Press, New York (August 1997)
Borowsky, E., Gafni, E., Lynch, N., Rajsbaum, S.: The BG Distributed Simulation Algorithm. Distributed Computing 14(3), 127–146 (2001)
Brit, H., Moran, S.: Wait-Freedom vs. Bounded-Freedom in Public Data Structures. J. UCS 2(1), 2–19 (1996)
Chou, C.-T., Gafni, E.: Understanding and Verifying Distributed Algorithms Using Stratified Decomposition. In: Proc. 7th ACM Symposium on Principles of Distributed Computing (PODC), Toronto, Ontario, Canada, August 15-17, pp. 44–65. ACM Press, New York (1988)
Castañeda, A., Rajsbaum, S.: New combinatorial topology upper and lower bounds for renaming. In: Proc. 27th ACM Symposium on Principles of Distributed Computing (PODC), Toronto, Canada, August 18-21, pp. 295–304 (2008)
Charron-Bost, B., Schiper, A.: The Heard-Of model: computing in distributed systems with benign faults. Distributed Computing 22(1), 49–71 (2009)
Chaudhuri, S.: More Choices Allow More Faults: Set Consensus Problems in Totally Asynchronous Systems. Information and Computation 105, 132–158 (1993)
Delporte-Gallet, C., Fauconnier, H., Guerraoui, R., Tielmann, A.: The Disagreement Power of an Adversary. In: Keidar, I. (ed.) DISC 2009. LNCS, vol. 5805, pp. 8–21. Springer, Heidelberg (2009)
Elrad, T., Francez, N.: Decomposition of Distributed Programs into Communication-Closed Layers. Sci. Comput. Program. 2(3), 155–173 (1982)
Fidge, C.J.: Logical Time in Distributed Computing Systems. IEEE Computer 24(8), 28–33 (1991)
Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of Distributed Consensus with One Faulty Process. Journal of the ACM 32(2), 374–382 (1985)
Gafni, E.: Round-by-Round Fault Detectors: Unifying Synchrony and Asynchrony (Extended Abstract). In: Proc. 17nth ACM Symposium on Principles of Distributed Computing (PODC), Puerto Vallarta, Mexico, June 28-July 2, pp. 143–152 (1998)
Gafni, E.: The 0-1-Exclusion Families of Tasks. In: Baker, T.P., Bui, A., Tixeuil, S. (eds.) OPODIS 2008. LNCS, vol. 5401, pp. 246–258. Springer, Heidelberg (2008)
Gafni, E., Merritt, M., Taubenfeld, G.: The Concurrency Hierarchy, and Algorithms for Unbounded Concurrency. In: Proc. 21st ACM Symposium on Principles of Distributed Computing (PODC 2001), pp. 161–169. ACM Press, New York (2001)
Gafni, E., Rajsbaum, S.: Musical Benches. In: Fraigniaud, P. (ed.) DISC 2005. LNCS, vol. 3724, pp. 63–77. Springer, Heidelberg (2005)
Gafni, E., Rajsbaum, S.: Recursion in distributed computing. In: Dolev, S., Cobb, J., Fischer, M., Yung, M. (eds.) SSS 2010. LNCS, vol. 6366, pp. 362–376. Springer, Heidelberg (2010)
Gafni, E., Rajsbaum, S., Herlihy, M.: Subconsensus Tasks: Renaming Is Weaker Than Set Agreement. In: Dolev, S. (ed.) DISC 2006. LNCS, vol. 4167, pp. 329–338. Springer, Heidelberg (2006)
Gafni, E., Rajsbaum, S., Raynal, M., Travers, C.: The Committee Decision Problem. In: Correa, J.R., Hevia, A., Kiwi, M. (eds.) LATIN 2006. LNCS, vol. 3887, pp. 502–514. Springer, Heidelberg (2006)
Herlihy, M.: Wait-Free Synchronization. ACM Transactions on Programming Languages and Systems 11(1), 124–149 (1991)
Herlihy, M.: Linearizability. In: Kao, M.-Y. (ed.) Encyclopedia of Algorithms, Springer, Heidelberg (2008)
Herlihy, M., Rajsbaum, S.: The Topology of Shared-Memory Adversaries. In: Proc. of the 29th ACM Symposium on Principles of Distributed Computing (PODC), Zurich, Switzerland, July 25-28, pp. 105–113 (2010)
Herlihy, M., Rajsbaum, S.: Concurrent Computing and Shellable Complexes. In: Lynch, N., Shvartsman, A. (eds.) DISC 2010. LNCS, vol. 6343, pp. 109–123. Springer, Heidelberg (2010)
Herlihy, M., Rajsbaum, S., Tuttle, M.R.: Unifying Synchronous and Asynchronous Message-Passing Models. In: Proc. 17nth ACM Symposium on Principles of Distributed Computing (PODC), Puerto Vallarta, Mexico, June 28-July 2, pp. 133–142 (1998)
Herlihy, M., Shavit, N.: A simple constructive computability theorem for wait-free computation. In: Proc. 26th ACM Symposium on Theory of Computing (STOC), Montreal, Quebec, Canada, May 23-25, pp. 243–252 (1994)
Herlihy, M., Shavit, N.: The Topological Structure of Asynchronous Computability. Journal of the ACM 46(6), 858–923 (1999)
Junqueira, F.P., Marzullo, K.: Designing Algorithms for Dependent Process Failures. In: Schiper, A., Shvartsman, M.M.A.A., Weatherspoon, H., Zhao, B.Y. (eds.) Future Directions in Distributed Computing. LNCS, vol. 2584, pp. 24–28. Springer, Heidelberg (2003)
Lamport, L.: Time, Clocks, and the Ordering of Events in a Distributed System. ACM Commun. 21(7), 558–565 (1978)
Mattern, F.: Virtual Time and Global States of Distributed Systems. In: Proc. Parallel and Distributed Algorithms Conf., pp. 215–226. Elsevier Science, Amsterdam (1988)
Moses, Y., Rajsbaum, S.: A Layered Analysis of Consensus. SIAM J. Comput. 31(4), 989–1021 (2002)
Rajsbaum, S.: Iterated Shared Memory Models. In: López-Ortiz, A. (ed.) LATIN 2010. LNCS, vol. 6034, pp. 407–416. Springer, Heidelberg (2010)
Rajsbaum, S., Raynal, M., Travers, C.: An impossibility about failure detectors in the iterated immediate snapshot model. Inf. Process. Lett. 108(3), 160–164 (2008)
Rajsbaum, S., Raynal, M., Travers, C.: The Iterated Restricted Immediate Snapshot Model. In: Hu, X., Wang, J. (eds.) COCOON 2008. LNCS, vol. 5092, pp. 487–497. Springer, Heidelberg (2008)
Saks, M.E., Zaharoglou, F.: Wait-Free k-Set Agreement is Impossible: The Topology of Public Knowledge. SIAM Journal on Computing 29(5), 1449–1483 (2000)
Zielinski, P.: Anti-Omega: the weakest failure detector for set agreement. In: Bazzi, R.A., Patt-Shamir, B. (eds.) Proc. 27nth ACM Symp. Principles of Distributed Computing (PODC), Toronto, Canada, August 18-21, pp. 55–64 (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gafni, E., Rajsbaum, S. (2010). Distributed Programming with Tasks. In: Lu, C., Masuzawa, T., Mosbah, M. (eds) Principles of Distributed Systems. OPODIS 2010. Lecture Notes in Computer Science, vol 6490. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17653-1_17
Download citation
DOI: https://doi.org/10.1007/978-3-642-17653-1_17
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-17652-4
Online ISBN: 978-3-642-17653-1
eBook Packages: Computer ScienceComputer Science (R0)