Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
166 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
42 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

DAG-Inducing Problems and Algorithms (2302.14834v3)

Published 28 Feb 2023 in cs.DS and cs.DC

Abstract: Consider the execution of a sequential algorithm that requires the program to converge to an optimal state, and then terminate/stutter. To design such an algorithm, we need to ensure that the state space that it traverses forms a directed acyclic graph (DAG) and its sink nodes are optimal states. However, if we run the same algorithm on multiple computing nodes running in parallel, and without synchronization, it may not reach an optimal state. In most parallel processing algorithms designed in the literature, a synchronization primitive is assumed. Synchronization ensures that the nodes read fresh value, and the execution proceeds systematically, such that the subject algorithm traverses a DAG induced among the global states. With this observation, we investigate the conditions that guarantee that the execution of an algorithm is correct even if it is executed in parallel and without synchronization. To this end, we introduce DAG-inducing problems and DAG-inducing algorithms. We show that induction of a $\prec$-DAG (induced among the global states -- that forms as a result of a partial order induced among the local states visited by individual nodes) is a necessary and sufficient condition to allow an algorithm to run in asynchrony. In the paper, we first give a comprehensive description of DAG-inducing problems and DAG-inducing algorithms, along with some simple examples. Then we show some properties of an algorithm that is tolerant to asynchrony, which include the above-mentioned condition.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (28)
  1. A provably starvation-free distributed directory protocol. In Stabilization, Safety, and Security of Distributed Systems (Berlin, Heidelberg, 2010), S. Dolev, J. Cobb, M. Fischer, and M. Yung, Eds., Springer Berlin Heidelberg, pp. 405–419.
  2. Are wait-free algorithms fast? J. ACM 41, 4 (jul 1994), 725–763.
  3. Performance analysis of the parallel karatsuba multiplication algorithm for distributed memory architectures. Journal of Symbolic Computation 21, 4 (1996), 467–473.
  4. Self-stabilization of dynamic systems assuming only read/write atomicity. Distributed Computing 7, 1 (Nov. 1993), 3–16.
  5. On serializability of iterated transactions. In Proceedings of the First ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (New York, NY, USA, 1982), PODC ’82, Association for Computing Machinery, p. 194–200.
  6. College admissions and the stability of marriage. The American Mathematical Monthly 69, 1 (Jan. 1962), 9.
  7. Garg, V. A lattice linear predicate parallel algorithm for the dynamic programming problems. In 23rd International Conference on Distributed Computing and Networking (New York, NY, USA, 2022), ICDCN 2022, Association for Computing Machinery, p. 72–76.
  8. Garg, V. K. Predicate Detection to Solve Combinatorial Optimization Problems. Association for Computing Machinery, New York, NY, USA, 2020, p. 235–245.
  9. Garg, V. K. A lattice linear predicate parallel algorithm for the housing market problem. In Stabilization, Safety, and Security of Distributed Systems (Cham, 2021), C. Johnen, E. M. Schiller, and S. Schmid, Eds., Springer International Publishing, pp. 108–122.
  10. Self-stabilizing protocols for maximal matching and maximal independent sets for ad hoc networks. In Proceedings International Parallel and Distributed Processing Symposium (2003), pp. 14 pp.–.
  11. Time optimal gathering of myopic robots on an infinite triangular grid. In Stabilization, Safety, and Security of Distributed Systems (Cham, 2022), S. Devismes, F. Petit, K. Altisen, G. A. Di Luna, and A. Fernandez Anta, Eds., Springer International Publishing, pp. 270–284.
  12. Extending lattice linearity for self-stabilizing algorithms. In Stabilization, Safety, and Security of Distributed Systems (Cham, 2021), C. Johnen, E. M. Schiller, and S. Schmid, Eds., Springer International Publishing, pp. 365–379.
  13. Brief announcement: Fully lattice linear algorithms. In Stabilization, Safety, and Security of Distributed Systems (Cham, 2022), S. Devismes, F. Petit, K. Altisen, G. A. Di Luna, and A. Fernandez Anta, Eds., Springer International Publishing, pp. 341–345.
  14. Lattice linearity of multiplication and modulo. In Stabilization, Safety, and Security of Distributed Systems (Cham, 2023), S. Dolev and B. Schieber, Eds., Springer Nature Switzerland, pp. 141–156.
  15. Tolerance to asynchrony of an algorithm for gathering myopic robots on an infinite triangular grid. CoRR/2307.13080 (2023).
  16. On the distributed complexity of computing maximal matchings. SIAM Journal on Discrete Mathematics 15, 1 (2001), 41–57.
  17. Maximal matching stabilizes in time o(m). Information Processing Letters 80, 5 (2001), 221–223.
  18. A self-stabilizing algorithm for maximal matching. Information Processing Letters 43, 2 (1992), 77–81.
  19. Johnson, D. B. Efficient algorithms for shortest paths in sparse networks. J. ACM 24, 1 (jan 1977), 1–13.
  20. Hcf: a starvation-free practical algorithm for maximizing throughput in input-queued switches. In HPSR. 2005 Workshop on High Performance Switching and Routing, 2005. (2005), pp. 68–72.
  21. Making geo-replicated systems fast as possible, consistent when necessary. In Proceedings of the 10th USENIX Conference on Operating Systems Design and Implementation (USA, 2012), OSDI’12, USENIX Association, p. 265–278.
  22. Network Routing: Algorithms, Protocols, and Architectures, 2 ed. The Morgan Kaufmann Series in Networking. Morgan Kaufman, 2017.
  23. Fast concurrent lock-free binary search trees. In Proceedings of the 19th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (New York, NY, USA, 2014), PPoPP ’14, Association for Computing Machinery, p. 317–328.
  24. Papadimitriou, C. H. The serializability of concurrent database updates. J. ACM 26, 4 (oct 1979), 631–653.
  25. Raymond, K. A tree-based algorithm for distributed mutual exclusion. ACM Trans. Comput. Syst. 7, 1 (jan 1989), 61–77.
  26. A wait-free sorting algorithm. In Proceedings of the Sixteenth Annual ACM Symposium on Principles of Distributed Computing (New York, NY, USA, 1997), PODC ’97, Association for Computing Machinery, p. 121–128.
  27. Valois, J. D. Lock-free linked lists using compare-and-swap. In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing (New York, NY, USA, 1995), PODC ’95, Association for Computing Machinery, p. 214–222.
  28. A fast, scalable mutual exclusion algorithm. Distributed Computing 9, 1 (Mar. 1995), 51–60.

Summary

We haven't generated a summary for this paper yet.

X Twitter Logo Streamline Icon: https://streamlinehq.com

Tweets