8,587 research outputs found
Energy Efficient Scheduling of MapReduce Jobs
MapReduce is emerged as a prominent programming model for data-intensive
computation. In this work, we study power-aware MapReduce scheduling in the
speed scaling setting first introduced by Yao et al. [FOCS 1995]. We focus on
the minimization of the total weighted completion time of a set of MapReduce
jobs under a given budget of energy. Using a linear programming relaxation of
our problem, we derive a polynomial time constant-factor approximation
algorithm. We also propose a convex programming formulation that we combine
with standard list scheduling policies, and we evaluate their performance using
simulations.Comment: 22 page
From Dataflow Specification to Multiprocessor Partitioned Time-triggered Real-time Implementation *
International audienceOur objective is to facilitate the development of complex time-triggered systems by automating the allocation and scheduling steps. We show that full automation is possible while taking into account the elements of complexity needed by a complex embedded control system. More precisely, we consider deterministic functional specifications provided (as often in an industrial setting) by means of synchronous data-flow models with multiple modes and multiple relative periods. We first extend this functional model with an original real-time characterization that takes advantage of our time-triggered framework to provide a simpler representation of complex end-to-end flow requirements. We also extend our specifications with additional non-functional properties specifying partitioning, allocation , and preemptability constraints. Then, weprovide novel algorithms for the off-line scheduling of these extended specifications onto partitioned time-triggered architectures Ă la ARINC 653. The main originality of our work is that it takes into account at the same time multiple complexity elements: various types of non-functional properties (real-time, partitioning, allocation, preemptability) and functional specifications with conditional execution and multiple modes. Allocation of time slots/windows to partitions can be fullyor partially provided, or synthesized by our tool. Our algorithms allow the automatic allocation and scheduling onto multi-processor (distributed) sys-tems with a global time base, taking into account communication costs. We demonstrate our technique on a model of space flight software systemwith strong real-time determinism requirements
Scheduling Algorithms for Procrastinators
This paper presents scheduling algorithms for procrastinators, where the
speed that a procrastinator executes a job increases as the due date
approaches. We give optimal off-line scheduling policies for linearly
increasing speed functions. We then explain the computational/numerical issues
involved in implementing this policy. We next explore the online setting,
showing that there exist adversaries that force any online scheduling policy to
miss due dates. This impossibility result motivates the problem of minimizing
the maximum interval stretch of any job; the interval stretch of a job is the
job's flow time divided by the job's due date minus release time. We show that
several common scheduling strategies, including the "hit-the-highest-nail"
strategy beloved by procrastinators, have arbitrarily large maximum interval
stretch. Then we give the "thrashing" scheduling policy and show that it is a
\Theta(1) approximation algorithm for the maximum interval stretch.Comment: 12 pages, 3 figure
How the structure of precedence constraints may change the complexity class of scheduling problems
This survey aims at demonstrating that the structure of precedence
constraints plays a tremendous role on the complexity of scheduling problems.
Indeed many problems can be NP-hard when considering general precedence
constraints, while they become polynomially solvable for particular precedence
constraints. We also show that there still are many very exciting challenges in
this research area
Implementing Multi-Periodic Critical Systems: from Design to Code Generation
This article presents a complete scheme for the development of Critical
Embedded Systems with Multiple Real-Time Constraints. The system is programmed
with a language that extends the synchronous approach with high-level real-time
primitives. It enables to assemble in a modular and hierarchical manner several
locally mono-periodic synchronous systems into a globally multi-periodic
synchronous system. It also allows to specify flow latency constraints. A
program is translated into a set of real-time tasks. The generated code (\C\
code) can be executed on a simple real-time platform with a dynamic-priority
scheduler (EDF). The compilation process (each algorithm of the process, not
the compiler itself) is formally proved correct, meaning that the generated
code respects the real-time semantics of the original program (respect of
periods, deadlines, release dates and precedences) as well as its functional
semantics (respect of variable consumption).Comment: 15 pages, published in Workshop on Formal Methods for Aerospace
(FMA'09), part of Formal Methods Week 2009
Energy-aware scheduling of bag-of-tasks applications on master-worker platforms
International audienceWe consider the problem of scheduling an application composed of independent tasks on a fully heterogeneous master-worker platform with communication costs. We introduce a bi-criteria approach aiming at maximizing the throughput of the application while minimizing the energy consumed by participating resources. Assuming arbitrary super-linear power consumption laws, we investigate different models, with energy overheads and memory constraints. Building upon closed-form expressions for the uni-processor case, we derive asymptotically optimal solutions for all models
Solving a multiprocessor problem by column generation and branch-and-price
This work presents an algorithm for solving exactly a scheduling problem with identical
parallel machines and malleable tasks, subject to arbitrary release dates and due dates. The objective is to
minimize a function of late work and setup costs. A task is malleable if we can freely change the set of
machines assigned to its processing over the time horizon. We present an integer programming model, a
Dantzig-Wolfe decomposition reformulation and its solution by column generation. We also developed
an equivalent network flow model, used for the branching phase. Finally, we carried out extensive
computational tests to verify the algorithm’s efficiency and to determine the model’s sensitivity to
instance size parameters: the number of machines, the number of tasks and the size of the planning
horizon
On the periodic behavior of real-time schedulers on identical multiprocessor platforms
This paper is proposing a general periodicity result concerning any
deterministic and memoryless scheduling algorithm (including
non-work-conserving algorithms), for any context, on identical multiprocessor
platforms. By context we mean the hardware architecture (uniprocessor,
multicore), as well as task constraints like critical sections, precedence
constraints, self-suspension, etc. Since the result is based only on the
releases and deadlines, it is independent from any other parameter. Note that
we do not claim that the given interval is minimal, but it is an upper bound
for any cycle of any feasible schedule provided by any deterministic and
memoryless scheduler
- …