Petri-net based performance-evaluation of distributed homogeneous task systems

TG (task graphs) are used to describe the execution of several tasks under some precedence constraints. Direct evaluation of TG provides an average completion time of the overall job, assuming no limits exist in the number of processing units and with no regard for allocation schemes. This paper presents a systematic approach for evaluating TG of jobs executed under predetermined allocation constraints. This extension of TG relies on GSPN (generalized stochastic Petri nets). A systematic mapping of a TG into a GSPN model is discussed. This GSPN model is extended to incorporate information about the static allocation of the set of tasks in the TG. An algorithm is implemented to evaluate static allocation schemes with or without task replication. However, for task replication, a homogeneous system is assumed because the execution time of those tasks does not change when allocated to various processing units. Also, under this assumption, task execution rates are modified by adding communication costs involved in sending data required by the next task, in turn, to execute. Thus, using a single model, TG are evaluated with constraints not only on where replicated and nonreplicated tasks are to be executed but on the number of processing units available, task allocation constraints, and the communication costs involved when they are remotely located.

[1]  Kishor S. Trivedi,et al.  Performance and Reliability Analysis of Computer Systems , 1996, Springer US.

[2]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[3]  Kishor S. Trivedi,et al.  Performance and Reliability Analysis Using Directed Acyclic Graphs , 1987, IEEE Transactions on Software Engineering.

[4]  Alexander Thomasian,et al.  Analytic Queueing Network Models for Parallel Processing of Task Systems , 1986, IEEE Transactions on Computers.

[5]  Alois Ferscha,et al.  A Petri Net Approach for Performance Oriented Parallel Program Design , 1992, J. Parallel Distributed Comput..

[6]  Behrooz Shirazi,et al.  Analysis and Evaluation of Heuristic Methods for Static Task Scheduling , 1990, J. Parallel Distributed Comput..

[7]  Yong Yuan Li,et al.  Scheduling a computational dag on a parallel system with communication delays and replication of node execution , 1993, [1993] Proceedings Seventh International Parallel Processing Symposium.

[8]  François Baccelli,et al.  On the execution of parallel programs on multiprocessor systems—a queuing theory approach , 1990, JACM.

[9]  Hesham El-Rewini,et al.  Parallax: a tool for parallel program scheduling , 1993, IEEE Parallel & Distributed Technology: Systems & Applications.

[10]  Héctor-Gabriel Acosta-Mesa,et al.  Specification and control of cooperative work in a heterogeneous computing environment , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[11]  Hesham H. Ali,et al.  Task scheduling in parallel and distributed systems , 1994, Prentice Hall series in innovative technology.

[12]  Marco Ajmone Marsan,et al.  A class of generalized stochastic Petri nets for the performance evaluation of multiprocessor systems , 1984, TOCS.

[13]  Edward A. Lee,et al.  Declustering: A New Multiprocessor Scheduling Technique , 1993, IEEE Trans. Parallel Distributed Syst..

[14]  Daniel Gajski,et al.  Hypertool: A Programming Aid for Message-Passing Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[15]  Stephen F. Lundstrom,et al.  Predicting Performance of Parallel Computations , 1990, IEEE Trans. Parallel Distributed Syst..

[16]  Giuliana Franceschinis,et al.  Understanding Parallel Program Behavior through Petri Net Models , 1992, J. Parallel Distributed Comput..

[17]  Kishor S. Trivedi,et al.  Reliability Modeling Using SHARPE , 1987, IEEE Transactions on Reliability.