Properties and Algorithms for Unfolding of Probabilistic Data-Flow Graphs

  • Authors:
  • Sissades Tongsima;Timothy W. O'neil;Chantana Chantrapornchai;Edwin H.-M. Sha

  • Affiliations:
  • Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN 46556, USA;Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN 46556, USA;Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN 46556, USA;Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN 46556, USA

  • Venue:
  • Journal of VLSI Signal Processing Systems
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

It is known that any selection statement (e.g. if and switch-case statements) in an application is associated with a probability which could either be predetermined by user input or chosen at runtime. Such a statement can be regarded as a computation node whose computation time is represented by a random variable. This paper focuses on iterative applications (containing loops) reflecting those uncertainties. Such an application can then be transformed to a probabilistic data-flow graph.Two timing models, the time-invariant and time-variant models, are introduced to characterize the nature of these applications. Since there can be many unfolding factors associated with each of the possible graph outcomes, for the time-invariant model, we propose a means of selecting a constant minimum rate-optimal unfolding factor for unfolding the probabilistic graph. We demonstrate that this factor guarantees the best schedule length.We also suggest a good estimate for choosing an unfolding factor for a graph under the time-variant model. Experiments show that using our selection scheme results in an iteration period close to the theoretical iteration bound of the experimental graph. Furthermore, this paper discusses an alternative approach which selects a few optimal schedules (with respect to the graph outcomes) to be stored in the system. The other possibilities will be represented by a modified template graph.