484 research outputs found
From Preemptive to Non-preemptive Scheduling Using Rejections
International audienceWe study the classical problem of scheduling a set of independent jobs with release dates on a single machine. There exists a huge literature on the preemptive version of the problem, where the jobs can be interrupted at any moment. However, we focus here on the non-preemptive case, which is harder, but more relevant in practice. For instance, the jobs submitted to actual high performance platforms cannot be interrupted or migrated once they start their execution (due to prohibitive management overhead). We target on the minimization of the total stretch objective, defined as the ratio of the total time a job stays in the system (waiting time plus execution time), normalized by its processing time. Stretch captures the quality of service of a job and the minimum total stretch reflects the fairness between the jobs. So far, there have been only few studies about this problem, especially for the non-preemptive case. Our approach is based to the usage of the classical and efficient for the preemptive case shortest remaining processing time (SRPT) policy as a lower bound. We investigate the (offline) transformation of the SRPT schedule to a non-preemptive schedule subject to a recently introduced resource augmentation model, namely the rejection model according to which we are allowed to reject a small fraction of jobs. Specifically, we propose a 2 ǫ-approximation algorithm for the total stretch minimization problem if we allow to reject an ǫ-fraction of the jobs, for any ǫ > 0. This result shows that the rejection model is more powerful than the other resource augmentations models studied in the literature, like speed augmentation or machine augmentation, for which non-polynomial or non-scalable results are known. As a byproduct, we present a O(1)-approximation algorithm for the total flow-time minimization problem which also rejects at most an \epsilon-fraction of jobs
Optimal on-line flow time with resource augmentation
AbstractWe study the problem of scheduling n jobs that arrive over time. We consider a non-preemptive setting on a single machine. The goal is to minimize the total flow time. We use extra resource competitive analysis: an optimal off-line algorithm which schedules jobs on a single machine is compared to a more powerful on-line algorithm that has ℓ machines. We design an algorithm of competitive ratio 1+2min(Δ1/ℓ,n1/ℓ), where Δ is the maximum ratio between two job sizes, and provide a lower bound which shows that the algorithm is optimal up to a constant factor for any constant ℓ. The algorithm works for a hard version of the problem where the sizes of the smallest and the largest jobs are not known in advance, only Δ and n are known. This gives a trade-off between the resource augmentation and the competitive ratio.We also consider scheduling on parallel identical machines. In this case the optimal off-line algorithm has m machines and the on-line algorithm has ℓm machines. We give a lower bound for this case. Next, we give lower bounds for algorithms using resource augmentation on the speed. Finally, we consider scheduling with hard deadlines, and scheduling so as to minimize the total completion time
Packing Sporadic Real-Time Tasks on Identical Multiprocessor Systems
In real-time systems, in addition to the functional correctness recurrent
tasks must fulfill timing constraints to ensure the correct behavior of the
system. Partitioned scheduling is widely used in real-time systems, i.e., the
tasks are statically assigned onto processors while ensuring that all timing
constraints are met. The decision version of the problem, which is to check
whether the deadline constraints of tasks can be satisfied on a given number of
identical processors, has been known -complete in the strong sense.
Several studies on this problem are based on approximations involving resource
augmentation, i.e., speeding up individual processors. This paper studies
another type of resource augmentation by allocating additional processors, a
topic that has not been explored until recently. We provide polynomial-time
algorithms and analysis, in which the approximation factors are dependent upon
the input instances. Specifically, the factors are related to the maximum ratio
of the period to the relative deadline of a task in the given task set. We also
show that these algorithms unfortunately cannot achieve a constant
approximation factor for general cases. Furthermore, we prove that the problem
does not admit any asymptotic polynomial-time approximation scheme (APTAS)
unless when the task set has constrained deadlines, i.e.,
the relative deadline of a task is no more than the period of the task.Comment: Accepted and to appear in ISAAC 2018, Yi-Lan, Taiwa
Minimizing Flow-Time on Unrelated Machines
We consider some flow-time minimization problems in the unrelated machines
setting. In this setting, there is a set of machines and a set of jobs,
and each job has a machine dependent processing time of on machine
. The flow-time of a job is the total time the job spends in the system
(completion time minus its arrival time), and is one of the most natural
quality of service measure. We show the following two results: an
approximation algorithm for minimizing the
total-flow time, and an approximation for minimizing the maximum
flow-time. Here is the ratio of maximum to minimum job size. These are the
first known poly-logarithmic guarantees for both the problems.Comment: The new version fixes some typos in the previous version. The paper
is accepted for publication in STOC 201
Optimal Algorithms for Scheduling under Time-of-Use Tariffs
We consider a natural generalization of classical scheduling problems in
which using a time unit for processing a job causes some time-dependent cost
which must be paid in addition to the standard scheduling cost. We study the
scheduling objectives of minimizing the makespan and the sum of (weighted)
completion times. It is not difficult to derive a polynomial-time algorithm for
preemptive scheduling to minimize the makespan on unrelated machines. The
problem of minimizing the total (weighted) completion time is considerably
harder, even on a single machine. We present a polynomial-time algorithm that
computes for any given sequence of jobs an optimal schedule, i.e., the optimal
set of time-slots to be used for scheduling jobs according to the given
sequence. This result is based on dynamic programming using a subtle analysis
of the structure of optimal solutions and a potential function argument. With
this algorithm, we solve the unweighted problem optimally in polynomial time.
For the more general problem, in which jobs may have individual weights, we
develop a polynomial-time approximation scheme (PTAS) based on a dual
scheduling approach introduced for scheduling on a machine of varying speed. As
the weighted problem is strongly NP-hard, our PTAS is the best possible
approximation we can hope for.Comment: 17 pages; A preliminary version of this paper with a subset of
results appeared in the Proceedings of MFCS 201
- …