Efficient Parallel CTL Model-Checking for Pushdown Systems

2018 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Ubiquitous Computing & Communications, Big Data & Cloud Computing, Social Computing & Networking, Sustainable Computing & Communications (ISPA/IUCC/BDCloud/SocialCom/SustainCom)(2018)

引用 6|浏览18
暂无评分
摘要
A Pushdown system (PDS) is a finite transition system equipped with stacks that are allowed to accurately model procedure calls and mimic the program's stack. Therefore, a PDS is extensively used for the analysis and verification of sequential programs. The computational tree logic (CTL) model checking for PDS is reduced to an emptiness problem, which consists of computing the set of accepting configurations of an alternating Buchi PushDown System(ABPDS). When the PDSs are very large, the emptiness analysis can be time-consuming. In this study, we use the features of a Compute Unified Device Architecture (CUDA) to achieve the parallelism. First, we propose a parallel algorithm to conduct the emptiness analysis of the ABPDS in multi-threads. Thus we propose a partitioned alternating multi automaton, which is a parallel extension of the alternating multi automaton (AMA) to represent the infinite set of configurations for the alternating Pushdown System and demonstrate how the emptiness analysis can be conducted in parallel based on a partitioned alternating multi automaton. Second, the process of the emptiness analysis is irregular, which means it is difficult to allocate resources dynamically. In order to effectively utilize the graphics processing unit (GPU), we design a new data structure and use thread scheduling to fit the computing model. The algorithm is implemented in a tool and is compared to the PDS model checker PuMoC as a benchmark. The results demonstrate a significant performance speedup (average 50X and up to 180X).
更多
查看译文
关键词
Pushdown Systems,CTL,CUDA,model checking
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要