Skip to main navigation Skip to search Skip to main content

Performance Evaluation of Applications for Heterogeneous Systems by means of Performance Probes.

Student thesis: Doctoral thesis

Abstract

This doctoral Thesis describes a novel way to select the best computer node out of_x000D_ a pool of available potentially heterogeneous computing nodes for the execution of_x000D_ computational tasks. This is a very basic and dificult problem of computer science_x000D_ and computing centres tried to get around it by using only homogeneous compute_x000D_ clusters. Usually this fails as like any technical equipment, clusters get extended,_x000D_ adapted or repaired over time, and you end up with a heterogeneous configuration._x000D_ So far, the solution for this, was:_x000D_ • To leave it to the computer users to choose the right node(s) for execution, or_x000D_ •To make extensive tests by executing and measuring all tasks on every type_x000D_ of computing node available in the pool. In the typical case, where a large_x000D_ number of tasks would need to be tested on many different types of nodes, this_x000D_ could use a lot of computing resources, sometimes even more than the actual_x000D_ execution one wants to optimize._x000D_ In a specific situation (hierarchical multi-clusters), the situation is worse, as_x000D_ the configuration of the cluster changes over time, so that the execution tests would_x000D_ have to be done over and over, every time the configuration of the cluster is changed._x000D_ I developed a novel and elegant solution for this problem, named "Performance_x000D_ Probe", or just "Probe", for short. A probe is a striped-down version of a compu-_x000D_ tational task which includes all important characteristics of the original task, but_x000D_ can be executed in a much shorter time (seconds, instead of hours), is much smaller_x000D_ than the original task (about 5% of the original size in the worst cases), but allows_x000D_ to predict the execution time of the original within reasonable bounds (around 90%_x000D_ accuracy)._x000D_ These results are very important: as scheduling is a basic problem of computer_x000D_ science, these results cannot only be used in the setting described by the thesis (of_x000D_ setting the right compute node for tasks in a hierarchical multi-cluster), but can_x000D_ also be applied in many diferent contexts every time scheduling and/or selection_x000D_ decisions have to be made: selecting where a computational task would run most_x000D_ efficiently (which cluster at which centre); picking the right execution nodes in a_x000D_ large complex (grid, cloud), work_x000D_ ows and many more.
Date of Award15 Jul 2011
Original languageEnglish
SupervisorEmilio Luque Fadon (Director)

Cite this

'