20.01.2014 Views

Master Thesis - ICS

Master Thesis - ICS

Master Thesis - ICS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Computer Science Department<br />

Antonis Misargopoulos<br />

A scheduling model consists of a scheduling policy; i.e., a set of rules for<br />

producing schedules, a program model which abstracts the set of programs to be<br />

scheduled, and a performance model which abstracts the behavior of the program on the<br />

underlying system for the purpose of the evaluating the performance potential of<br />

candidate schedules. In addition, the scheduling model utilizes a performance measure<br />

which describes the performance activity to be optimized by the performance model. As a<br />

definition, we can say that high-performance schedulers are software systems which use<br />

scheduling models to predict performance, determine application schedules based on<br />

these models, and take action to implement the resulting schedule. The high-performance<br />

scheduler determines an application schedule; i.e., an assignment of tasks, data and<br />

communication to resources, ordered in time and based on the rules of the scheduling<br />

policy. The goal is to optimize the performance experienced by the application on the<br />

computational Grid.<br />

It is very important to distinguish distributed parallel applications and ‘portable’<br />

single-site applications. Even if an application cannot profit from distribution, the<br />

scheduler may have to locate a computational site and/or co-locate data in a way that<br />

maximizes application performance. For parallel Grid applications, the high-performance<br />

scheduler will need to determine whether performance is optimized by accessing all tasks<br />

to a single site or by distributing the application to multiple sites.<br />

3.2 Developing a Grid Scheduling Model<br />

The development of efficient models for scheduling Grid environments presents a<br />

substantial challenge to researchers and application developers. One approach to<br />

developing Grid models is to compose models from constituent components which reflect<br />

application performance activities. This approach is being taken by a number of<br />

researchers [81, 82, 83, 84]. To illustrate this, consider a simple model which predicts<br />

execution time for a Grid application which executes one task A to completion, and<br />

passes all data to another task B which then executes to completion. Thus, a performance<br />

model for this application is<br />

24

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!