Skip to main content

The F-Snapshot Problem

  • Conference paper
  • First Online:
  • 560 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9988))

Abstract

Aguilera, Gafni and Lamport introduced the signaling problem in [3]. In this problem, two processes numbered 0 and 1 can call two procedures: update and Fscan. A parameter of the problem is a two-variable function \(F(x_0,x_1)\). Each process \(p_i\) can assign values to variable \(x_i\) by calling update( v ) with some data value v, and compute the value: \(F(x_0,x_1)\) by executing an Fscan procedure. The problem is interesting when the domain of F is infinite and the range of F is finite. In this case, some “access restrictions” are imposed that limit the size of the registers that the Fscan procedure can access.

Aguilera et al. provided a non-blocking solution and asked whether a wait-free solution exists. A positive answer can be found in [5]. The natural generalization of the two-process signaling problem to an arbitrary number of processes turns out to yield an interesting generalization of the fundamental snapshot problem, which we call the F-snapshot problem. In this problem n processes can write values to an n-segment array (each process to its own segment), and can read and obtain the value of an n-variable function F on the array of segments. In case that the range of F is finite, it is required that only bounded registers are accessed when the processes apply the function F to the array, although the data values written to the segments may be taken from an infinite set. We provide here an affirmative answer to the question of Aguilera et al. for an arbitrary number of processes. Our solution employs only single-writer atomic registers, and its time complexity is \(O(n\log n)\).

Research partially supported by the Israel Science Foundation.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Assuming that the queue of messages supports enqueue and dequeue operations by several processes.

References

  1. Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: Atomic snapshots of shared memory. J. ACM 40(4), 873–890 (1993)

    Article  MATH  Google Scholar 

  2. Aguilera, M.K., Gafni, E., Lamport, L.: The mailbox problem (extended abstract). In: Taubenfeld, G. (ed.) DISC 2008. LNCS, vol. 5218, pp. 1–15. Springer, Heidelberg (2008). doi:10.1007/978-3-540-87779-0_1

    Chapter  Google Scholar 

  3. Aguilera, M.K., Gafni, E., Lamport, L.: The mailbox problem. Distrib. Comput. 23(2), 113–134 (2010)

    Article  MATH  Google Scholar 

  4. Alur, R., McMillan, K., Peled, D.: Model-checking of correctness conditions for concurrent objects. In: Logic in Computer Science (LICS), pp. 219–228 (1996)

    Google Scholar 

  5. Amram, G.: On the signaling problem. In: International Conference on Distributed Computing and Networking, pp. 44–65 (2014)

    Google Scholar 

  6. Anderson, J.: Composite registers. Distrib. Comput. 6(3), 141–154 (1993)

    Article  MATH  Google Scholar 

  7. Aspnes, J., Herlihy, M.: Wait-free data structures in the asynchronous PRAM model. In: Proceedings of the 2nd Annual ACM Symposium on Parallel Architectures and Algorithms, pp. 340–349 (1990)

    Google Scholar 

  8. Attiya, H., Herlihy, M., Rachman, O.: Atomic snapshots using lattice agreement. Distrib. Comput. 8(3), 121–132 (1995)

    Article  Google Scholar 

  9. Attiya, H., Rachman, O.: Atomic snapshots in \(O(n \log n)\) operations. In: Proceedings of the 12th Annual ACM Symposium on Principles of Distributed Computing, pp. 29–40 (1993)

    Google Scholar 

  10. Dolev, D., Shavit, N.: Bounded concurrent time-stamp systems are constructible. In: Proceedings of 21st STOC, pp. 454–466 (1989)

    Google Scholar 

  11. Dolev, D., Shavit, N.: Bounded concurrent time-stamping. SIAM J. Comput. 26(2), 418–455 (1997)

    Article  MathSciNet  MATH  Google Scholar 

  12. Dwork, C., Waarts, O.: Simple and efficient bounded concurrent timestamping or bounded concurrent timestamp systems are comprehensible! In: Proceedings of the Twenty-Fourth Annual ACM Symposium on Theory of Computing, pp. 655–666 (1992)

    Google Scholar 

  13. Guerraoui, R., Ruppert, E.: Linearizability is not always a safety property. In: Proceeding of the 2nd International Conference, Networked Systems, pp. 57–69 (2014)

    Google Scholar 

  14. Herlihy, M., Shavit, N.: The Art of Multiprocessor Programming. Morgan Kaufmann, New York (2008)

    Google Scholar 

  15. Herlihy, M., Wing, J.: Linearizability: a correctness condition for concurrent objects. ACM TOPLAS 12(3), 463–492 (1990)

    Article  Google Scholar 

  16. Inoue, M., Masuzawa, T., Chen, W., Tokura, N.: Linear-time snapshot using multi-writer multi-reader registers. In: Tel, G., Vitányi, P. (eds.) WDAG 1994. LNCS, vol. 857, pp. 130–140. Springer, Heidelberg (1994). doi:10.1007/BFb0020429

    Chapter  Google Scholar 

  17. Israeli, A., Li, M.: Bounded time-stamps. Distrib. Comput. 6(4), 205–209 (1993)

    Article  MATH  Google Scholar 

  18. Israeli, A., Shaham, A., Shirazi, A.: Linear-time snapshot implementations in unbalanced systems. Math. Syst. Theor. 28(5), 469–486 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  19. Israeli, A., Shirazi, A.: The time complexity of updating snapshot memories. Inf. Process. Lett. 65(1), 33–40 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  20. Jayanti, P.: f-arrays: implementation and applications. In: Proceedings of the 21st Annual Symposium on Principles of Distributed Computing, pp. 270–279 (2002)

    Google Scholar 

  21. Jayanti, P., Tan, K., Toueg, S.: Time, space lower bounds for nonblocking implementations. SIAM J. Comput. 30(2), 438–456 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  22. Lamport, L.: Proving the correctness of multiprocess Programs. IEEE Trans. Softw. Eng. 3(2), 125–145 (1977)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gal Amram .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Amram, G. (2016). The F-Snapshot Problem. In: Suomela, J. (eds) Structural Information and Communication Complexity. SIROCCO 2016. Lecture Notes in Computer Science(), vol 9988. Springer, Cham. https://doi.org/10.1007/978-3-319-48314-6_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-48314-6_11

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-48313-9

  • Online ISBN: 978-3-319-48314-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics