Published March 22, 2024 | Version 2.0
Dataset Open

Replication package for article 'Parallel Program Analysis on Path Ranges'

  • 1. University of Oldenburg
  • 2. LMU Munich

Description

This Replication package contains all the results for the article "Parallel Program Analysis on Path Ranges"

Abstract. Symbolic execution is a software verification technique symbolically running programs and thereby checking for bugs.  
Ranged symbolic execution  
performs symbolic execution on program parts, so called {\em path ranges}, in parallel.
Due to the parallelism, verification is accelerated and hence scales to larger programs.

In this paper, we discuss a generalization of ranged symbolic execution to arbitrary program analyses.
More specifically, we present a verification approach that splits programs into path ranges and
then runs arbitrary analyses on the ranges in parallel. Our approach in particular allows to run {\em different}
analyses on different program parts.
We have implemented this generalization on top of  the tool \textsc{CPAchecker} and evaluated it on programs from the SV-COMP benchmark. Our evaluation shows that verification can benefit from the parallelisation of the verification task,
but also needs a form of work stealing (between analysis) as to become efficient.

Files

artifact_Parallel_Program_Analysis_on_Path_Ranges.zip

Files (12.5 GB)

Name Size Download all
md5:a7a28f7a0d938c69440f51ec2900438b
1.7 GB Preview Download
md5:d8d23d15206a1c1c2a338044e5a00ad8
10.8 GB Download