A Parallel Approach to Concolic Testing with Low-cost Synchronization

  • Authors:
  • Xiao Yu;Shuai Sun;Geguang Pu;Siyuan Jiang;Zheng Wang

  • Affiliations:
  • Shanghai Key Laboratory of Trustworthy Computing, East China Normal University, Shanghai, China;Shanghai Key Laboratory of Trustworthy Computing, East China Normal University, Shanghai, China;Shanghai Key Laboratory of Trustworthy Computing, East China Normal University, Shanghai, China;Shanghai Key Laboratory of Trustworthy Computing, East China Normal University, Shanghai, China;Shanghai Key Laboratory of Trustworthy Computing, East China Normal University, Shanghai, China

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

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.