Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

Dijkstra-Scholten algorithm

Parallel and Distributed Algorithm

The Dijkstra-Scholten algorithm, named after Edsger W. Dijkstra and Carel S. Scholten and proposed by them in 1980, detects termination in a distributed system. It is a tree-based algorithm. The initiator of a computation is the root of the tree. A process that receives a computational message while not yet in the computation joins the tree as a child of the sender, with no acknowledgment at that point, while a process already in the computation immediately acknowledges the sender. When a process has no more children and has become idle it detaches itself by acknowledging its parent, and termination occurs when the initiator has no children and is idle. The scheme extends from simple trees to directed acyclic graphs, using a deficit count on each edge, and to cyclic graphs, by implicitly building a spanning tree through the first edge on which each node received a message.

Facts
Time Complexity
Time Complexity (category)
Linear Time -- O(n) 1
Connections

Credited To

Source Dijkstra-Scholten algorithm (Wikipedia)

In Field

Source Dijkstra-Scholten algorithm (Wikipedia)

Invented

Source Dijkstra-Scholten algorithm (Wikipedia)
Sources
1. Moscow State University: Distributed Algorithms, Lecture 10: termination detection
Moscow State UniversityPDF page 37
Quote, PDF page 37
uses M control message exchanges for any basic computation with M basic message exchange
View the Source
Dijkstra-Scholten algorithm (Wikipedia)
  • In Group: Concurrency and Distributed Systems Techniques, Lead sentence
    The Dijkstra-Scholten algorithm (named after Edsger W. Dijkstra and Carel S. Scholten) is an algorithm for detecting termination in a distributed system.
  • In Field: Distributed Computing, Lead sentence
    The Dijkstra-Scholten algorithm (named after Edsger W. Dijkstra and Carel S. Scholten) is an algorithm for detecting termination in a distributed system.
  • Invented: Edsger W. Dijkstra, Lead sentence
    The Dijkstra-Scholten algorithm (named after Edsger W. Dijkstra and Carel S. Scholten) is an algorithm for detecting termination in a distributed system.
  • Credited To: Edsger W. Dijkstra, Lead sentence
    The Dijkstra-Scholten algorithm (named after Edsger W. Dijkstra and Carel S. Scholten) is an algorithm for detecting termination in a distributed system.
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.