Title :
Evaluating deadlock detection methods for concurrent software
Author :
Corbett, James C.
Author_Institution :
Dept. of Inf. & Comput. Sci., Hawaii Univ., Honolulu, HI, USA
fDate :
3/1/1996 12:00:00 AM
Abstract :
Static analysis of concurrent programs has been hindered by the well-known state explosion problem. Although many different techniques have been proposed to combat this state explosion, there is little empirical data comparing the performance of the methods. This information is essential for assessing the practical value of a technique and for choosing the best method for a particular problem. In this paper, we carry out an evaluation of three techniques for combating the state explosion problem in deadlock detection: reachability searching with a partial-order state-space reduction, symbolic model checking and inequality-necessary conditions. We justify the method used for the comparison, and carefully analyze several sources of potential bias. The results of our evaluation provide valuable data on the kinds of programs to which each technique might best be applied. Furthermore, we believe that the methodological issues we discuss are of general significance in comparison of analysis techniques
Keywords :
concurrency control; multiprocessing programs; programming theory; software engineering; state-space methods; system monitoring; Ada tasking; concurrency analysis; concurrent software; deadlock detection methods; empirical evaluation; inequality-necessary conditions; partial-order state-space reduction; performance; reachability search; state explosion problem; static analysis; symbolic model checking; Application software; Concurrent computing; Data analysis; Explosions; Protocols; Reachability analysis; Software safety; Software tools; State-space methods; System recovery;
Journal_Title :
Software Engineering, IEEE Transactions on