Mapping applications on volatile resource

H Casanova, F Dufossé, Y Robert… - … International Journal of …, 2015 - journals.sagepub.com
The International Journal of High Performance Computing …, 2015journals.sagepub.com
In this paper, we study the execution of iterative applications on volatile processors such as
those found on desktop grids. We envision two models, one where all tasks are assumed to
be independent, and another where all tasks are tightly coupled and keep exchanging
information throughout the iteration. These two models cover the two extreme points of the
parallelization spectrum. We develop master–worker scheduling schemes that attempt to
achieve good trade-offs between worker speed and worker availability. Any iteration entails …
In this paper, we study the execution of iterative applications on volatile processors such as those found on desktop grids. We envision two models, one where all tasks are assumed to be independent, and another where all tasks are tightly coupled and keep exchanging information throughout the iteration. These two models cover the two extreme points of the parallelization spectrum. We develop master–worker scheduling schemes that attempt to achieve good trade-offs between worker speed and worker availability. Any iteration entails the execution of a fixed number of independent tasks or of tightly coupled tasks. A key feature of our approach is that we consider a communication model where the bandwidth capacity of the master for sending application data to workers is limited. This limitation makes the scheduling problem more difficult both in a theoretical sense and in a practical sense. Furthermore, we consider that a processor can be in one of three states: available, down, or temporarily preempted by its owner. This preempted state also complicates the scheduling problem. In practical settings, for example desktop grids, master bandwidth is limited and processors are temporarily reclaimed. Consequently, addressing the aforementioned difficulties is necessary for successfully deploying master–worker applications on volatile platforms.
Our first contribution is to determine the complexity of the scheduling problems in their offline versions, that is, when processor availability behaviors are known in advance. Even with this knowledge, the problems are NP-hard. Our second contribution is an evaluation of the expectation of the time needed by a worker to complete a set of tasks. We obtain a close formula for independent tasks and an analytical approximation for tightly coupled tasks. Those evaluations rely on a Markovian assumption for the temporal availability of processors, and are at the heart of some heuristics that aim at favoring ‘reliable’ processors in a sensible manner. Our third contribution is a set of heuristics for both models, which we evaluate in simulation. Our results provide guidance in selecting the best strategy as a function of processor state availability vs average task duration.
Sage Journals
Showing the best result for this search. See all results