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 />

Chapter 3. The High-Performance Scheduling Problem<br />

The computational Grids provide a platform for a new generation of applications [80].<br />

Grid applications include ‘portable’ applications which can be executed on a number of<br />

computation and communication sites, resource-intensive applications which must<br />

aggregate distributed resources (memory, data, computation) to produce results. Grid<br />

applications include sequential, parallel and distributed programs. All of these<br />

applications can be executed on Grids simultaneously and share the available resources.<br />

Most importantly, each of these applications will seek to leverage the performance<br />

potential of computational Grids to optimize their own execution.<br />

From the application perspective, performance is the objective, while scheduling<br />

is fundamental to performance. Schedulers employ predictive models to evaluate the<br />

performance of the application on the underlying system, and use this information to<br />

determine an assignment of tasks, communication, and data to resources, with the goal of<br />

leveraging the performance potential of the target platform.<br />

As we saw earlier, in Grid environments applications share resources<br />

(computation resources, communication resources, instruments, data) and both<br />

applications and system components must be scheduled to achieve good performance.<br />

However, each scheduling mechanism may have a different performance goal. We can<br />

distinguish three kinds of schedulers:<br />

1. Job schedulers promote the performance of the system, as measured by aggregate job<br />

performance, by optimizing throughput measured by the number of jobs executed by the<br />

system<br />

2. Resource schedulers coordinate multiple requests for access to a given resource by<br />

optimizing fairness criteria to ensure that all requests are satisfied. Alternatively, they<br />

optimize resource utilization to measure the amount of the resource used.<br />

3. Application schedulers, which promote the performance of individual applications on<br />

computational Grids by optimizing performance measures such as minimal execution,<br />

22

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

Saved successfully!

Ooh no, something went wrong!