针对现有的基于图挖掘技术的软件故障定位技术中运用到图约简算法保留原图信息不够、影响定位准确性、约简效率不高的缺点,提出了并行子树约简方法。该方法采用设计简单而且对并行计算性能的获取卓有成效的Fork/Join并行计算框架,运用反复递归和划分子任务的方式将目标问题划分成足够精简的子任务,实现了对程序调用图的高效约简。实验结果表明,并行子树约简方法不仅能实现对节点数大的图的约简而且对图约简效率的提高高达55.1%,明显提高了故障定位效率。
In view of the existing shortcomings of graph reduction approach for call-graph-based software defect localization as following:they couldn't keep as much information as possible of the original graph which leaded to inaccurate locating and the reduction efficiency was very low,this paper proposed a novel approach for call graph reduction which introduced parallel subtree reduction. This approach achieved efficiency by adopting the Fork /Join framework for parallel computing. This algorithm had been always recursive and splitting subtasks until they were small enough to solve. What's more,this framework is not only simple in design but also obtains good parallel performance. The experimental results show that parallel subtree reduction approach not only can achieve reduction of the graphs which have large number of nodes but also can significantly improve the efficiency of defect localization,as much as 55. 1%.