Results 1  10
of
20
Toward a fully decentralized algorithm for multiple bagoftasks application scheduling on grids

"... (slides) ..."
Scheduling Parallel Iterative Applications on Volatile Resources
"... Abstract—In this paper we study the execution of iterative applications on volatile processors such as those found on desktop grids. We develop masterworker scheduling schemes that attempt to achieve good tradeoffs between worker speed and worker availability. A key feature of our approach is that ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
(Show Context)
Abstract—In this paper we study the execution of iterative applications on volatile processors such as those found on desktop grids. We develop masterworker scheduling schemes that attempt to achieve good tradeoffs between worker speed and worker availability. 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, e.g., desktop grids, master bandwidth is limited and processors are temporarily reclaimed. Consequently, addressing the aforementioned difficulties is necessary for successfully deploying masterworker applications on volatile platforms. Our first contribution is to determine the complexity of the scheduling problem in its offline version, i.e., when processor availability behaviors are known in advance. Even with this knowledge, the problem is NPhard, and cannot be approximated within a factor 8/7. Our second contribution is a closedform formula for the expectation of the time needed by a worker to complete a set of tasks. This formula relies on a Markovian assumption for the temporal availability of processors, and is at the heart of some heuristics that aim at favoring “reliable” processors in a sensible manner. Our third contribution is a set of heuristics, which we evaluate in simulation. Our results provide guidance to selecting the best strategy as a function of processor state availability versus average task duration. I.
Reliability and performance optimization of pipelined realtime systems
, 2009
"... We consider pipelined realtime systems, commonly found in assembly lines, consisting of a chain of tasks executing on a distributed platform. Their processing is pipelined: each processor executes only one interval of consecutive tasks. We are therefore interested in minimizing both the inputoutpu ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
(Show Context)
We consider pipelined realtime systems, commonly found in assembly lines, consisting of a chain of tasks executing on a distributed platform. Their processing is pipelined: each processor executes only one interval of consecutive tasks. We are therefore interested in minimizing both the inputoutput latency and the period. For dependability reasons, we are also interested in maximizing the reliability of the system. We therefore assign several processors to each task, so as to increase the reliability of the system. We assume that both processors and communication links are unreliable and subject to transient failures, the arrival of which follows a constant parameter Poisson law. We also assume that the failures are statistically independent events. We study several variants of this multiprocessor mapping problem with several hypotheses on the target platform (homogeneous/heterogeneous speeds and/or failure rates). We provide NPhardness complexity results, and optimal mapping algorithms for polynomial problem instances. Keywords: Pipelined realtime systems, interval mapping, multicriteria (reliability, latency, period) optimization, complexity results, dynamic programming algorithm. 1 Reliability
Resource Allocation Strategies for Constructive InNetwork Stream Processing
, 2010
"... In this paper we consider the operator mapping problem for innetwork stream processing applications. Innetwork stream processing consists in applying a tree of operators in steadystate to multiple data objects that are continually updated at various locations on a network. Examples of innetwork ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
(Show Context)
In this paper we consider the operator mapping problem for innetwork stream processing applications. Innetwork stream processing consists in applying a tree of operators in steadystate to multiple data objects that are continually updated at various locations on a network. Examples of innetwork stream processing include the processing of data in a sensor network, or of continuous queries on distributed relational databases. We study the operator mapping problem in a “constructive ” scenario, i.e., a scenario in which one builds a platform dedicated to the application by purchasing processing servers with various costs and capabilities. The objective is to minimize the cost of the platform while ensuring that the application achieves a minimum steadystate throughput. The first contribution of this paper is the formalization of a set of relevant operatorplacement problems, and a proof that even simple versions of the problem are NPcomplete. Our second contribution is the design of several polynomial time heuristics, which are evaluated via extensive simulations and compared to theoretical bounds for optimal solutions.
Mapping TightlyCoupled Applications on Volatile Resources
"... Abstract—Platforms that comprise volatile processors, such as desktop grids, have been traditionally used for executing independenttask applications. In this work we study the scheduling of tightlycoupled iterative masterworker applications onto volatile processors. The main challenge is that work ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
Abstract—Platforms that comprise volatile processors, such as desktop grids, have been traditionally used for executing independenttask applications. In this work we study the scheduling of tightlycoupled iterative masterworker applications onto volatile processors. The main challenge is that workers must be simultaneously available for the application to make progress. We consider two additional complications: one should take into account that workers can become temporarily reclaimed and, for dataintensive applications, one should account for the limited bandwidth between the master and the workers. In this context, our first contribution is a theoretical study of the scheduling problem in its offline version, i.e., when processor availability is known in advance. Even in this case the problem is NPhard. Our second contribution is an analytical approximation of the expectation of the time needed by a set of workers to complete a set of tasks and of the probability of success of this computation. This approximation relies on a Markovian assumption for the temporal availability of processors. Our third contribution is a set of heuristics, some of which use the above approximation to favor reliable processors in a sensible manner. We evaluate these heuristics in simulation. We identify some heuristics that significantly outperform their competitors and derive heuristic design guidelines. I.
Redundant Virtual Machines Management in Virtualized Cloud Platform
 Int. J. Modeling, Simulation, and Scientific Computing
, 2011
"... Selecting and utilizing proper virtual machines in a virtualized cloud platform to achieve high availability, throughput, reliability, as well as low cost and makespan is very important. The importance lies in the adaptive resource provisioning to satisfy variant of workloads. An Adaptive Accessing ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Selecting and utilizing proper virtual machines in a virtualized cloud platform to achieve high availability, throughput, reliability, as well as low cost and makespan is very important. The importance lies in the adaptive resource provisioning to satisfy variant of workloads. An Adaptive Accessing Aware Algorithm (A5) is proposed in this paper to deal with this conflicting objective optimization problem. The main strategy of A5 is selecting adaptive upper/lower bound of service capacity to decide the time for scheduling redundant virtual machines and a Paretofrontbased multiobjective optimization method to decide the number of scheduling virtual machines. We carried out experiments in simulation, which show that A5 can achieve much higher performance improvements in four different workload testing environments, compared with other three commonly used methods.
Resource Allocation Strategies for InNetwork Stream Processing
, 2008
"... In this paper we consider the operator mapping problem for innetwork stream processing applications. Innetwork stream processing consists in applying a tree of operators in steadystate to multiple data objects that are continually updated at various locations on a network. Examples of innetwork ..."
Abstract
 Add to MetaCart
In this paper we consider the operator mapping problem for innetwork stream processing applications. Innetwork stream processing consists in applying a tree of operators in steadystate to multiple data objects that are continually updated at various locations on a network. Examples of innetwork stream processing include the processing of data in a sensor network, or of continuous queries on distributed relational databases. We study the operator mapping problem in a“constructive”scenario, i.e., a scenario in which one builds a platform dedicated to the application buy purchasing processing servers with various costs and capabilities. The objective is to minimize the cost of the platform while ensuring that the application achieves a minimum steadystate throughput. The first contribution of this paper is the formalization of a set of relevant operatorplacement problems as linear programs, and a proof that even simple versions of the problem are NPcomplete. Our second contribution
Scheduling for LargeScale Systems
"... In this chapter, scheduling is defined as the activity that consists in mapping a task graph onto a target platform. The task graph represents the application, nodes denote computational tasks, and edges model precedence constraints between tasks. For each task, an assignment (choose the processor t ..."
Abstract
 Add to MetaCart
(Show Context)
In this chapter, scheduling is defined as the activity that consists in mapping a task graph onto a target platform. The task graph represents the application, nodes denote computational tasks, and edges model precedence constraints between tasks. For each task, an assignment (choose the processor that will execute the task) and a schedule (decide when to start the execution) are determined. The goal is to obtain an efficient
Scheduling TightlyCoupled Applications on Heterogeneous Desktop Grids
"... Abstract—Platforms that comprise volatile processors, such as desktop grids, have been traditionally used for executing independenttask applications. In this work we study the scheduling of tightlycoupled iterative masterworker applications onto volatile processors. The main challenge is that work ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract—Platforms that comprise volatile processors, such as desktop grids, have been traditionally used for executing independenttask applications. In this work we study the scheduling of tightlycoupled iterative masterworker applications onto volatile processors. The main challenge is that workers must be simultaneously available for the application to make progress. We consider three additional complications: (i) one should take into account that workers can become temporarily reclaimed and, for dataintensive applications; (ii) one should account for the limited bandwidth between the master and the workers; and (iii) workers are strongly heterogeneous, with different computing speeds and availability probability distributions. In this context, our first contribution is a theoretical study of the scheduling problem in its offline version, i.e., when processor availability is known in advance. Even in this case the problem is NPhard. Our second contribution is an analytical approximation of the expectation of the time needed by a set of workers to complete a set of tasks and of the probability of success of this computation. This approximation relies on a Markovian assumption for the temporal availability of processors. Our third contribution is a set of heuristics, some of which use the above approximation to favor reliable processors in a sensible manner. We evaluate these heuristics in simulation. We identify some heuristics that significantly outperform their competitors and derive heuristic design guidelines. I.