2002
DOI: 10.1007/3-540-45706-2_12
|View full text |Cite
|
Sign up to set email alerts
|

Integrating Temporal Assertions into a Parallel Debugger

Abstract: We describe the use of temporal logic formulas as runtime assertions in a parallel debugging environment. The user asserts in a message passing program the expected system behavior by one or several such formulas. The debugger allows by "macro-stepping" to interactively elaborate the execution tree (i.e., the set of possible execution paths) which arises from the use of non-deterministic communication operations. In each macro-step, a temporal logic checker verifies that the once asserted temporal formulas are… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
5
0

Year Published

2007
2007
2024
2024

Publication Types

Select...
3
3
1

Relationship

0
7

Authors

Journals

citations
Cited by 8 publications
(5 citation statements)
references
References 11 publications
0
5
0
Order By: Relevance
“…Moreover, the automatic correctness evaluation of consistent global states [19] at each macrostep is in our research plan together with the further elaboration of modelling and steering mechanisms [18] towards possible suspicious or erroneous situations in the generated execution tree. This smart functionality will rely on graph-based machine learning.…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…Moreover, the automatic correctness evaluation of consistent global states [19] at each macrostep is in our research plan together with the further elaboration of modelling and steering mechanisms [18] towards possible suspicious or erroneous situations in the generated execution tree. This smart functionality will rely on graph-based machine learning.…”
Section: Discussionmentioning
confidence: 99%
“…Breakpoints can be placed in the execution tree as well, in which case they are called meta-breakpoints, essentially meaning that the parallel program is steered to a specified node in the execution tree. Using an appropriate debugging tool that can generate suitable collective breakpoints [4], one can achieve the complete [18] and exhaustive testing [19] of parallel programs.…”
Section: Original Concept For Message-passing Programsmentioning
confidence: 99%
“…trying not only to replay but also to enforce different (timing) conditions onto the investigated set of processes (services) in the dynamically changing and non-deterministic environment. The literature [40] illustrated its basic principles and mechanism with the well-known Producer-Consumer problem and its implementation in the P-GRADE programming environment using an inner Buffer process with a circular puffer, message passing paradigm and synchronous communication primitives. The illustration described a typical bug, when the two branches of a conditional (if-then-else) construct have been accidentally swapped and led to an erroneous situation, which was discovered during the macrostep based debugging by traversing and investigating the possible state space of the problem.…”
Section: B Baseline Model: Producer-consumermentioning
confidence: 99%
“…The labelling is also supported in PRISM: the 'nolostmessage' global property was evaluated by each simulation step successfully in order to verify the most crucial requirement of the model, i.e. the already produced but still unconsumed items are stored in the buffer: Similarly to the original work [40], we injected one error manually in the implementation and its model. The behaviour of the buffer has become faulty because it switches to the serving state instead of receiving an item in the first command.…”
Section: B Baseline Model: Producer-consumermentioning
confidence: 99%
“…Kovacs et al [23] present a framework for writing full temporal assertions on message passing programs. Although these temporal assertions are powerful, they are also complex.…”
Section: A What They Check -Property Specificationmentioning
confidence: 99%