Abstract
We analyze the achievable fault tolerances of shared memory consistency conditions in the form of t-resilience, the ability to withstand up to t node failures. We derive tight bounds for linearizability, sequential consistency, processor consistency, and some weaker memories in totally asynchronous systems, in which failed and slow nodes cannot be distinguished. For linearizability, we show that neither the read nor the write operation can tolerate more failures than a minority of the nodes. For sequential consistency, processor consistency, and related conditions, we show that one operation can be wait-free and the other cannot tolerate more failures than a minority of the nodes. Several weaker conditions can have both operations wait-free.
This work was supported in part by NSF grants CCR92-21657 and CCR95-05807.
Preview
Unable to display preview. Download preview PDF.
References
Agrawal, D., Choy, M., Leong, H. V., and Singh, A. K. Mixed consistency: A model for parallel programming. In PODC '94 (Los Angeles, CA, USA, 14–17 Aug. 1994), pp. 101–10.
Ahamad, M., Neiger, G., Burns, J. E., Kohli, P., and Hutto, P. W. Causal memory: Definitions, implementation and programming. Distributed Computing 9, 1 (Aug. 1995), 37–49.
Attiya, H. Efficient and robust sharing of memory in message-passing systems. In WDAG '96 (Bologna, Italy, 9–11 Oct. 1996), Ö. Babaoglu and K. Marzullo, Eds., vol. 1151 of Lecture Notes in Computer Science, Springer-Verlag, pp. 56–70.
Attiya, H., Bar-Noy, A., and Dolev, D. Sharing memory robustly in message-passing systems. J. ACM 42, 1 (Jan. 1995), 124–42.
Attiya, H., and Welch, J. L. Sequential consistency versus linearizability. ACM Trans. Comput. Syst. 12, 2 (May 1994), 91–122.
Borowsky, E., and Gafni, E. Generalized FLP impossibility result for t-resilient asynchronous computations (extended abstract). In STOC '93 (San Diego, CA, USA, 16–18 May 1993), pp. 91–100.
Chandra, T., Hadzilacos, V., Jayanti, P., and Toueg, S. Wait-freedom vs. t-resiliency and the robustness of wait-free hierarchies. In PODC '94 (Los Angeles, CA, USA, 14–17 Aug. 1994), pp. 334–43.
Chandra, T. D., and Toueg, S. Unreliable failure detectors for reliable distributed systems. J. ACM 43, 2 (Mar. 1996), 225–67.
Cristian, F. Reaching agreement on processor group membership in synchronous distributed systems. Distributed Computing 4, 4 (Apr. 1991), 175–87.
Dolev, D., Dwork, C., and Stockmeyer, L. On the minimal synchronism needed for distributed consensus. J. ACM 34, 1 (Jan. 1987), 77–97.
Friedman, R. Implementing hybrid consistency with high-level synchronization operations. Distributed Computing 9, 3 (Dec. 1995), 119–29.
Gharachorloo, K., Lenoski, D., Laudon, J., Gibbons, P., Gupta, A., and Hennessy, J. Memory consistency and event ordering in scalable shared-memory multiprocessors. In ISCA '90 (Seattle, WA, USA, 28–31 May 1990), pp. 15–26. Revised in Stanford CSL Technical Report 93-568.
Goodman, J. R. Cache consistency and sequential consistency. Tech. Rep. 1006, Computer Sciences Department, University of Wisconsin-Madison, Feb. 1991.
Herlihy, M. P. Wait-free synchronization. ACM Trans. Program. Lang. Syst. 13, 1 (Jan. 1991), 124–49.
Herlihy, M. P., and Shavit, N. The asynchronous computability theorem for t-resilient tasks. In STOC '93 (San Diego, CA, USA, 16–18 May 1993), pp. 111–20.
Herlihy, M. P., and Wing, J. M. Linearizability: A correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12, 3 (July 1990), 463–92.
Kosa, M. J. Making operations of concurrent data types fast. In PODC '94 (Los Angeles, CA, USA, 14–17 Aug. 1994), pp. 32–41.
Lamport, L. How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Comput. 28, 9 (Sept. 1979), 690–1.
Lamport, L. On interprocess communication, parts I and II. Distributed Computing 1, 2 (Apr. 1986), 77–101.
Lencevicius, R., and Singh, A. K. Latency bounds for memory consistency. Submitted for publication, 1997.
Li, K., and Hudak, P. Memory coherence in shared virtual memory systems. ACM Trans. Comput. Syst. 7, 4 (Nov. 1989), 321–59.
Li, M., Tromp, J., and Vitanyi, P. M. B. How to share concurrent wait-free variables. J. ACM 43, 4 (July 1996), 723–46.
Lipton, R. J., and Sandberg, J. S. PRAM: A scalable shared memory. Tech. Rep. CS-TR-180-88, Department of Computer Science, Princeton University, Sept. 1988.
Lo, W.-K. More on t-resilience vs. wait-freedom. In PODC '95 (Ottawa, Ontario, Canada, 20–23 Aug. 1995), pp. 110-19.
Malki, D., Birman, K., Ricciardi, A., and Schiper, A. Uniform actions in asynchronous distributed systems. In PODC '94 (Los Angeles, CA, USA, 14–17 Aug. 1994), pp. 274–283.
Mavronicolas, M., and Roth, D. Efficient, strongly consistent implementations of shared memory (extended abstract). In WDAG '92 (Haifa, Israel, 2–4 Nov. 1992), A. Segall and S. Zaks, Eds., vol. 647 of Lecture Notes in Computer Science, Springer-Verlag, pp. 346-61.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
James, J., Singh, A.K. (1997). Fault tolerance bounds for memory consistency. In: Mavronicolas, M., Tsigas, P. (eds) Distributed Algorithms. WDAG 1997. Lecture Notes in Computer Science, vol 1320. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0030685
Download citation
DOI: https://doi.org/10.1007/BFb0030685
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63575-8
Online ISBN: 978-3-540-69600-1
eBook Packages: Springer Book Archive