2013
DOI: 10.1007/978-3-642-38592-6_2
|View full text |Cite
|
Sign up to set email alerts
|

Formal Analysis of a Distributed Algorithm for Tracking Progress

Abstract: Abstract. Tracking the progress of computations can be both important and delicate in distributed systems. In a recent distributed algorithm for this purpose, each processor maintains a delayed view of the pending work, which is represented in terms of points in virtual time. This paper presents a formal specification of that algorithm in the temporal logic TLA, and describes a mechanically verified correctness proof of its main properties.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
10
0

Year Published

2013
2013
2019
2019

Publication Types

Select...
4
1
1

Relationship

3
3

Authors

Journals

citations
Cited by 7 publications
(10 citation statements)
references
References 8 publications
0
10
0
Order By: Relevance
“…ISpec implies that always, for all p ∈ P , there exists a local history H(p) for p such that LocState(p) = Π Loc g(H(p)) and NotRequests(p) = Π NR g(H(p)). Previous work [4] studies a distributed algorithm for tracking the progress of a computation, and arrives at a somewhat analogous result. This previous work assumes a notion of virtual time but defines neither a dataflow model nor a corresponding could-result-in relation (so, in particular, it does not treat analogues of Conditions 1 and 2).…”
Section: An Applicationmentioning
confidence: 90%
See 1 more Smart Citation
“…ISpec implies that always, for all p ∈ P , there exists a local history H(p) for p such that LocState(p) = Π Loc g(H(p)) and NotRequests(p) = Π NR g(H(p)). Previous work [4] studies a distributed algorithm for tracking the progress of a computation, and arrives at a somewhat analogous result. This previous work assumes a notion of virtual time but defines neither a dataflow model nor a corresponding could-result-in relation (so, in particular, it does not treat analogues of Conditions 1 and 2).…”
Section: An Applicationmentioning
confidence: 90%
“…The development and presentation of timely dataflow in the context of Naiad was fairly precise but informal. Only one of its critical components (a distributed algorithm that keeps track of virtual times for which there may remain work) was rigorously specified and verified [4]. Moreover, in the context of Naiad, definitions focus on particular structures of dataflow graphs and particular types of nodes.…”
Section: Introductionmentioning
confidence: 99%
“…When a worker receives a progress update (p, δ ), it adds δ to the local occurrence count for p. This protocol has an important safety property: no local frontier ever moves ahead of the global frontier, taken across all outstanding events in the system. Therefore, if some worker has a pending notification at p = (t, v) and p is in the local frontier, p must also be in the global frontier and the worker can safely deliver the notification to v. A formal specification of the protocol and a safety proof are presented in a separate paper [4].…”
Section: Distributed Progress Trackingmentioning
confidence: 99%
“…This enables very fine-grained coordination, without system-level intervention. Further technical details of progress tracking in timely dataflows can be found in [22,4].…”
Section: Timely Dataflow Conceptsmentioning
confidence: 99%