Performance estimation using symbolic data

  • Authors:
  • Jian Zhang

  • Affiliations:
  • State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, Beijing, China

  • Venue:
  • Theories of Programming and Formal Methods
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Symbolic execution is a useful technique in formal verification and testing. In this paper, we propose to use it to estimate the performance of programs. We first extract a set of paths (either randomly or systematically) from the program, and then obtain a weighted average of the performance of the paths. The weight of a path is the number of input data that drive the program to execute along the path, or the size of the input space that corresponds to the path. As compared with traditional benchmarking, the proposed approach has the benefit that it uses more points in the input space. Thus it is more representative in some sense. We illustrate the new approach with a sorting algorithm and a selection algorithm.