A Parallel Approach to Concolic Testing with Low-cost Synchronization

Xiao Yu,Shuai Sun,Geguang Pu,Siyuan Jiang,Zheng Wang
DOI: https://doi.org/10.1016/j.entcs.2011.07.008
2011-01-01
Electronic Notes in Theoretical Computer Science
Abstract:This paper presents a practical approach to parallelize the test data generation algorithm by which computing resources can be fully used. The test data generation approach that we are using is based on the dynamic symbolic execution (concolic testing). The basic idea of parallelizing the algorithm is to distribute analysis processes of different paths to different computing units. Although a centralized scheduler with several sub processes can directly achieve the goal of parallelism, it may cause global idle time when parallel processes frequently end at same time. In our approach, a runtime deterministic scheduler is introduced to reduce the potential global idle time. Our experiments show some notable results when using a proper scheduling function. Compared with the sequential concolic testing, our approach can save nearly 70% computing time in some cases on a system with eight CPU cores from our experiments.
What problem does this paper attempt to address?