Symbolic Performance Prediction of Data-Dependent Parallel Programs

  • Authors:
  • Hasyim Gautama;Arjan J. C. van Gemund

  • Affiliations:
  • -;-

  • Venue:
  • TOOLS '02 Proceedings of the 12th International Conference on Computer Performance Evaluation, Modelling Techniques and Tools
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Analytically predicting the performance of data-dependent programs is an extremely challenging problem. Even for a fixed problem size the variety of typical input data sets may cause a considerable execution time variance. Especially for time-critical applications, merely predicting the mean execution time does not suffice and knowledge of the execution time distribution is essential. In this paper we present a compositional analytic method to approximate the first four statistical moments of the program execution time in terms of the first four moments of the loop bounds, the branch conditions, and the execution time delays of the constituent tasks. The approach applies to sequential and parallel programs of which the associated DAG has a series-parallel structure. For each binary or N-ary sequential, parallel, or conditional composition the solution complexity is merely O(1). The method is exact for sequential and conditional composition. Furthermore, for N-ary parallel compositions experimental results of synthetic and real workloads show that the actual prediction error of the moments method is in the percent range. The analytic method is implemented in terms of the performance modeling language PAMELA. Apart from the theory, in this paper we also present a symbolic PAMELA compiler. Provided with a PAMELA process model of the (parallel) program, the PAMELA compiler symbolically translates this source to closed-form expressions that express the first four moments of the program execution time.