Information Technology Reference
In-Depth Information
Tabl e 2 . E ciency
Initial
Static Analysis
Dynamic Analysis Correction-Based
model
|FCs|
|FCs| Red. Time |FCs| Red. Time |FCs| Red. Time
model-1
63
51 19.05 < 1.00
37 41.27 < 1.00
23 63.49 < 1.00
model-2
53
47 11.32 < 1.00
30 43.40 < 1.00
17 67.92 < 1.00
model-3
22
18 18.18 < 1.00
12 45.45 < 1.00
11 50.00 < 1.00
model-4
367
74 79.84 < 1.00
43 88.32
12.81
30 91.83
14.21
model-5
615
130 78.86
1.43
92 85.04
26.52
3 99.51
2.96
model-6
833
728 12.61
9.52
374 55.10
51.99
29 96.52
39.97
All experiments are conducted on an AMD Athlon 6000+ (3GHz) running
Linux. The main memory was limited to 4 GB and the run time is measured
in CPU seconds. The word level framework WoLFram is the back-end for
the analysis [19]. ZChaff is the underlying SAT engine for correction-based
debugging [14].
The experimental results are shown in Table 2. Column |FCs| gives the
number of fault candidates and Column Red. denotes the reduction to the
initial number of fault candidates in percent. The diagnosis time for the
debugging algorithms is shown in Column Time .
All debugging algorithms are capable to reduce the initial number of
fault candidates. For model-4 and model-5 more than 78% of the instruc-
tions are determined by all algorithms to not be a fault candidate. For
other benchmarks, static analysis and dynamic analysis provide a rough di-
agnosis only, e.g. for model-1 and model-2. Here, simulation has advantages
over static analysis, but correction-based debugging outperforms both algo-
rithms. Correction-based debugging shows the best diagnostic resolution for
all benchmarks. Thereby, the original fault site has been correctly determined
by all algorithms. Fault candidates are eciently detected by all methods and
the complexity for a subsequent manual fix of an engineer is reduced. Regard-
ing run time, all debugging algorithms require less than one minute for the
diagnosis only.
In summary, all debugging algorithms support the manual debugging task
by reducing the number of fault candidates. An engineer can focus on small
parts of the whole program only. Automatic debugging gives hints for correc-
tion and helps to understand the faulty behavior. The computational over-
head is low and the accuracy high.
References
1. M. Abramovici, P.R. Menon, and D.T. Miller. Critical path tracing - an alter-
native to fault simulation. In Design Automation Conf. , pages 214-220, 1983.
2. H. Agrawal and J.R. Horgan. Dynamic program slicing. In PLDI '90: Proceed-
ings of the ACM SIGPLAN 1990 conference on Programming language design
and implementation , pages 246-256, 1990.
3. G. Canet, S. Cou n, J.-J. Lesage, A. Petit, and P. Schnoebelen. Towards the
automatic verificication of PLC programs written in instruction list. In IEEE
conf. on Systems, Man and Cybernetics (SMC) , pages 2449-2454, 2000.
 
Search WWH ::




Custom Search