Online Prediction of the Running Time of Tasks

We describe and evaluate the Running Time Advisor (RTA), a system that can predict the running time of a compute-bound task on a typical shared, unreserved commodity host. The prediction is computed from linear time series predictions of host load and takes the form of a confidence interval that neatly expresses the error associated with the measurement and prediction processes, error that must be captured to make statistically valid decisions based on the predictions. Adaptive applications make such decisions in pursuit of consistent high performance, choosing, for example, the host where a task is most likely to meet its deadline. We begin by describing the system and summarizing the results of our previously published work on host load prediction (P.A. Dinda, 1999; 2000)We then describe our algorithm for computing predictions of running time from host load predictions. Finally, we evaluate the system using over 100000 randomized testcases run on 39 different hosts.

[1]  Francine Berman,et al.  Scheduling from the perspective of the application , 1996, Proceedings of 5th IEEE International Symposium on High Performance Distributed Computing.

[2]  R. Wolski,et al.  Predicting the CPU availability of time‐shared Unix systems on the computational grid , 1999, Proceedings. The Eighth International Symposium on High Performance Distributed Computing (Cat. No.99TH8469).

[3]  P. Young,et al.  Time series analysis, forecasting and control , 1972, IEEE Transactions on Automatic Control.

[4]  Miron Livny,et al.  The Available Capacity of a Privately Owned Workstation Environmont , 1991, Perform. Evaluation.

[5]  Peter A. Dinda,et al.  The statistical properties of host load , 1999, Sci. Program..

[6]  Ray Jain,et al.  The art of computer systems performance analysis - techniques for experimental design, measurement, simulation, and modeling , 1991, Wiley professional computing.

[7]  Edward D. Lazowska,et al.  The limited performance benefits of migrating active processes for load sharing , 1988, SIGMETRICS 1988.

[8]  Teunis J. Ott,et al.  Load-balancing heuristics and process behavior , 1986, SIGMETRICS '86/PERFORMANCE '86.

[9]  Peter A. Dinda,et al.  Resource Signal Prediction and Its Application to Real-time Scheduling Advisors (Thesis Summary) , 2000 .

[10]  J.M. Schopf,et al.  Stochastic Scheduling , 1999, ACM/IEEE SC 1999 Conference (SC'99).

[11]  John A. Zinky,et al.  Architectural Support for Quality of Service for CORBA Objects , 1997, Theory Pract. Object Syst..

[12]  Peter Steenkiste,et al.  Automatic generation of parallel programs with dynamic load balancing , 1994, Proceedings of 3rd IEEE International Symposium on High Performance Distributed Computing.

[13]  Peter A. Dinda,et al.  Realistic CPU Workloads through Host Load Trace Playback , 2000, LCR.

[14]  Peter A. Dinda,et al.  The Case for Prediction-Based Best-Effort Real-Time Systems , 1999, IPPS/SPDP Workshops.

[15]  Peter A. Dinda,et al.  Preliminary Report on the Design of a Framework for Distributed Visualization , 1999, PDPTA.

[16]  Mor Harchol-Balter,et al.  Exploiting process lifetime distributions for dynamic load balancing , 1996, SIGMETRICS '96.

[17]  Monica S. Lam,et al.  Jade: a high-level, machine-independent language for parallel programming , 1993, Computer.

[18]  Richard Wolski,et al.  Forecasting network performance to support dynamic scheduling using the network weather service , 1997, Proceedings. The Sixth IEEE International Symposium on High Performance Distributed Computing (Cat. No.97TB100183).

[19]  Andrea C. Arpaci-Dusseau,et al.  Effective distributed scheduling of parallel workloads , 1996, SIGMETRICS '96.