Efficient composite data flow analysis applied to concurrent programs

  • Authors:
  • Gleb Naumovich;Lori A. Clarke;Leon J. Osterweil

  • Affiliations:
  • Laboratory for Advanced Software Engineering Research, Computer Science Department, University of Massachusetts, Amherst, Massachusetts;Laboratory for Advanced Software Engineering Research, Computer Science Department, University of Massachusetts, Amherst, Massachusetts;Laboratory for Advanced Software Engineering Research, Computer Science Department, University of Massachusetts, Amherst, Massachusetts

  • Venue:
  • Proceedings of the 1998 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

FLAVERS, a tool for verifying properties of concurrent systems, uses composite data flow analysis to incrementally improve the precision of the results of its verifications. Although FLAVERS is one of the few static analysis techniques for concurrent systems that has the potential to handle large scale systems, it sometimes can still be very expensive to use. In this paper we experimentally compare the cost of two versions of this approach for solving composite data flow analysis problems. The first version, product-based, uses the more straightforward approach, and the second, tuple-based, is built around the idea of reducing analysis space requirements at the expense of analysis time. We demonstrate experimentally, by analyzing properties of actual concurrent programs, that the tuple-based version is comparable in time to the product-based version but for large composite data flow problems it requires several orders of magnitude less space.