Title :
A statistical approach to branch modeling in static program performance prediction
Author :
Gautama, Hasyim ; Van Gemund, Arjan J C
Author_Institution :
Fac. of Inf. Technol. and Syst., Delft Univ. of Technol., Netherlands
Abstract :
Current static performance prediction methods have been less successful in statistically accounting for program workload distribution due to input data set variability, of which data-dependent branches are usually the most important contributors. While data-dependent basic block execution time is often characterized in terms of, e.g., mean and variance, branching conditions still are typically characterized by only one parameter, usually known as the truth probability. We propose and evaluate three statistical approaches to modeling branching behavior, to be used within a compositional method to predict program execution time distribution. The approaches are coined the empirical, the Bernoulli, and the ARP (Alternating Renewal Processes) approach. While the Empirical approach is based on measuring branching behavior in terms of the surrounding loop construct, the other approaches aim at deriving a statistical model of the branch itself, which enables a higher level of compositionality. Our measurement results, based on synthetic as well as on real programs, show that the Empirical approach delivers the highest accuracy, whereas the alternative approaches trade accuracy for compositionality. For Markovian branches, the compositional approaches deliver high prediction accuracy. In contrast to intuition and our synthetic experiments, in real programs the two-parameter ARP approach does not always outperform the one-parameter Bernoulli approach.
Keywords :
Markov processes; distributed programming; program control structures; program diagnostics; statistical analysis; Markovian branches; branch modeling; branching behavior; branching conditions; compositional method; data-dependent basic block execution time; data-dependent branches; empirical approach; input data set variability; loop construct; one-parameter Bernoulli approach; prediction accuracy; program execution time distribution; program workload distribution; static performance prediction methods; static program performance prediction; statistical approach; statistical approaches; statistical model; truth probability; two-parameter ARP approach; Accuracy; Convolution; Costs; Information technology; Performance analysis; Prediction methods; Predictive models; Probability; Sorting; Stochastic processes;
Conference_Titel :
Parallel and Distributed Processing Symposium, 2003. Proceedings. International
Print_ISBN :
0-7695-1926-1
DOI :
10.1109/IPDPS.2003.1213503