3,811 research outputs found
Malleable Scheduling Beyond Identical Machines
In malleable job scheduling, jobs can be executed simultaneously on multiple machines with the processing time depending on the number of allocated machines. Jobs are required to be executed non-preemptively and in unison, in the sense that they occupy, during their execution, the same time interval over all the machines of the allocated set. In this work, we study generalizations of malleable job scheduling inspired by standard scheduling on unrelated machines. Specifically, we introduce a general model of malleable job scheduling, where each machine has a (possibly different) speed for each job, and the processing time of a job j on a set of allocated machines S depends on the total speed of S for j. For machines with unrelated speeds, we show that the optimal makespan cannot be approximated within a factor less than e/(e-1), unless P = NP. On the positive side, we present polynomial-time algorithms with approximation ratios 2e/(e-1) for machines with unrelated speeds, 3 for machines with uniform speeds, and 7/3 for restricted assignments on identical machines. Our algorithms are based on deterministic LP rounding and result in sparse schedules, in the sense that each machine shares at most one job with other machines. We also prove lower bounds on the integrality gap of 1+phi for unrelated speeds (phi is the golden ratio) and 2 for uniform speeds and restricted assignments. To indicate the generality of our approach, we show that it also yields constant factor approximation algorithms (i) for minimizing the sum of weighted completion times; and (ii) a variant where we determine the effective speed of a set of allocated machines based on the L_p norm of their speeds
Complexity of scheduling multiprocessor tasks with prespecified processor allocations
We investigate the computational complexity of scheduling multiprocessor tasks with prespecified processor allocations. We consider two criteria: minimizing schedule length and minimizing the sum of the task completion times. In addition, we investigate the complexity of problems when precedence constraints or release dates are involved
Algorithms for Hierarchical and Semi-Partitioned Parallel Scheduling
We propose a model for scheduling jobs in a parallel machine setting that takes into account the cost of migrations by assuming that the processing time of a job may depend on the specific set of machines among which the job is migrated. For the makespan minimization objective, the model generalizes classical scheduling problems such as unrelated parallel machine scheduling, as well as novel ones such as semi-partitioned and clustered scheduling. In the case of a hierarchical family of machines, we derive a compact integer linear programming formulation of the problem and leverage its fractional relaxation to obtain a polynomial-time 2-approximation algorithm. Extensions that incorporate memory capacity constraints are also discussed
Dynamic resource allocation in a hierarchical multiprocessor system: A preliminary study
An integrated system approach to dynamic resource allocation is proposed. Some of the problems in dynamic resource allocation and the relationship of these problems to system structures are examined. A general dynamic resource allocation scheme is presented. A hierarchial system architecture which dynamically maps between processor structure and programs at multiple levels of instantiations is described. Simulation experiments were conducted to study dynamic resource allocation on the proposed system. Preliminary evaluation based on simple dynamic resource allocation algorithms indicates that with the proposed system approach, the complexity of dynamic resource management could be significantly reduced while achieving reasonable effective dynamic resource allocation
Throughput Maximization in Multiprocessor Speed-Scaling
We are given a set of jobs that have to be executed on a set of
speed-scalable machines that can vary their speeds dynamically using the energy
model introduced in [Yao et al., FOCS'95]. Every job is characterized by
its release date , its deadline , its processing volume if
is executed on machine and its weight . We are also given a budget
of energy and our objective is to maximize the weighted throughput, i.e.
the total weight of jobs that are completed between their respective release
dates and deadlines. We propose a polynomial-time approximation algorithm where
the preemption of the jobs is allowed but not their migration. Our algorithm
uses a primal-dual approach on a linearized version of a convex program with
linear constraints. Furthermore, we present two optimal algorithms for the
non-preemptive case where the number of machines is bounded by a fixed
constant. More specifically, we consider: {\em (a)} the case of identical
processing volumes, i.e. for every and , for which we
present a polynomial-time algorithm for the unweighted version, which becomes a
pseudopolynomial-time algorithm for the weighted throughput version, and {\em
(b)} the case of agreeable instances, i.e. for which if and only
if , for which we present a pseudopolynomial-time algorithm. Both
algorithms are based on a discretization of the problem and the use of dynamic
programming
ILP-based approaches to partitioning recurrent workloads upon heterogeneous multiprocessors
The problem of partitioning systems of independent constrained-deadline sporadic tasks upon heterogeneous multiprocessor platforms is considered. Several different integer linear program (ILP) formulations of this problem, offering different tradeoffs between effectiveness (as quantified by speedup bound) and running time efficiency, are presented
- …