118 research outputs found

    The energy scheduling problem: Industrial case-study and constraint propagation techniques

    Get PDF
    This paper deals with production scheduling involving energy constraints, typically electrical energy. We start by an industrial case-study for which we propose a two-step integer/constraint programming method. From the industrial problem we derive a generic problem,the Energy Scheduling Problem (EnSP). We propose an extension of specific resource constraint propagation techniques to efficiently prune the search space for EnSP solving. We also present a branching scheme to solve the problem via tree search.Finally,computational results are provided

    Malleable task-graph scheduling with a practical speed-up model

    Get PDF
    Scientific workloads are often described by Directed Acyclic task Graphs.Indeed, DAGs represent both a model frequently studied in theoretical literature and the structure employed by dynamic runtime schedulers to handle HPC applications. A natural problem is then to compute a makespan-minimizing schedule of a given graph. In this paper, we are motivated by task graphs arising from multifrontal factorizations of sparsematrices and therefore work under the following practical model. We focus on malleable tasks (i.e., a single task can be allotted a time-varying number of processors) and specifically on a simple yet realistic speedup model: each task can be perfectly parallelized, but only up to a limited number of processors. We first prove that the associated decision problem of minimizing the makespan is NP-Complete. Then, we study a widely used algorithm, PropScheduling, under this practical model and propose a new strategy GreedyFilling. Even though both strategies are 2-approximations, experiments on real and synthetic data sets show that GreedyFilling achieves significantly lower makespans

    Scheduling Malleable Tasks with Precedence Constraints

    Get PDF
    In this paper we propose an approximation algorithm for scheduling malleable tasks with precedence constraints. Based on an interesting model for malleable tasks with continuous processor allotments by Prasanna and Musicus \cite{PrMu91,PrMu94,PrMu96}, we define two natural assumptions for malleable tasks: the processing time of any malleable task is non-increasing in the number of processors allotted, and the speedup is concave in the number of processors. We show that under these assumptions the work function of any malleable task is non-decreasing in the number of processors and is convex in the processing time. Furthermore, we propose a two-phase approximation algorithm for the scheduling problem. In the first phase we solve a linear program to obtain a fractional allotment for all tasks. By rounding the fractional solution, each malleable task is assigned a number of processors. In the second phase a variant of the list scheduling algorithm is employed. %In the phases we use two parameters Ό∈{1,
⌊(m+1)/2⌋}\mu\in\{1,\dots\lfloor (m+1)/2\rfloor\} and ρ∈[0,1]\rho\in [0,1] for the allotment and the rounding, respectively, where mm is the number of processors. By choosing appropriate values of the parameters, we show (via a nonlinear program) that the approximation ratio of our algorithm is at most 100/63+100(6469+13)/5481≈3.291919100/63+100(\sqrt{6469}+13)/5481\approx 3.291919. We also show that our result is asymptotically tight

    Optimizing busy time on parallel machines

    Get PDF
    We consider the following fundamental scheduling problem in which the input consists of n jobs to be scheduled on a set of identical machines of bounded capacity g (which is the maximal number of jobs that can be processed simultaneously by a single machine). Each job is associated with a start time and a completion time, it is supposed to be processed from the start time to the completion time (and in one of our extensions it has to be scheduled also in a continuous number of days, this corresponds to a two-dimensional version of the problem). We consider two versions of the problem. In the scheduling minimization version the goal is to minimize the total busy time of machines used to schedule all jobs. In the resource allocation maximization version the goal is to maximize the number of jobs that are scheduled for processing under a budget constraint given in terms of busy time. This is the first study of the maximization version of the problem. The minimization problem is known to be NP-Hard, thus the maximization problem is also NP-Hard. We consider various special cases, identify cases where an optimal solution can be computed in polynomial time, and mainly provide constant factor approximation algorithms for both minimization and maximization problems. Some of our results improve upon the best known results for this job scheduling problem. Our study has applications in power consumption, cloud computing and optimizing switching cost of optical networks

    Approximationsalgorithmen fĂŒr Packungs- und Scheduling-Probleme

    Get PDF
    Algorithms for solving optimization problems play a major role in the industry. For example in the logistics industry, route plans have to be optimized according to various criteria. However, many natural optimization problems are hard to solve. That is, for many optimization problems no algorithms with running time polynomial in the size of the instance are known. Furthermore, it is a widely accepted assumption that many optimization problems do not allow algorithms that solve the problem optimally in polynomial time. One way of overcoming this dilemma is using approximation algorithms. These algorithms have a polynomial running time, but their solutions are in general not optimal but rather close to an optimum. The main subject of this thesis is approximation algorithms for packing and scheduling problems: For the three-dimensional orthogonal knapsack problem (OKP-3) without rotations we present algorithms with approximation ratios arbitrarily close to 9, 8 and 7. For OKP-3 with 90 degree rotations around the z-axis or around all axes, we present algorithms with approximation ratios arbitrarily close to 6 and 5, respectively. Both for the malleable and for the non-malleable case of the non-preemptive parallel job scheduling problem in which the number of available machines is polynomially bounded in the number of jobs, we present polynomial time approximation schemes. For the cases in which additionally the machines allotted to each job have to be contiguous, we show the existence of approximation algorithms with ratio arbitrarily close to 1.5

    La pĂ©riode de checkpoint de Young/Daly n’est pas optimale pour l’exĂ©cution de graphes de tĂąches

    Get PDF
    This paper revisits checkpointing strategies when workflows composed of multiple tasks execute on a parallel platform. The objective is to minimize the expectation of the total execution time. For a single task, the Young/Daly formula provides the optimal checkpointing period. However, when many tasks execute simultaneously, the risk that one of them is severely delayed increases with the number of tasks. To mitigate this risk, a possibility is to checkpoint each task more often than with the Young/Daly strategy. But is it worth slowing each task down with extra checkpoints? Does the extra checkpointing make a difference globally? This paper answers these questions. On the theoretical side, we prove several negative results for keeping the Young/Daly period when many tasks execute concurrently, and we design novel checkpointing strategies that guarantee an efficient execution with high probability. On the practical side, we report comprehensive experiments that demonstrate the need to go beyond the Young/Daly period and to checkpoint more often, for a wide range of application/platform settings.Cet article Ă©tudie les stratĂ©gies de checkpoint pour l’exĂ©cution de graphes de tĂąches (applications de type workflow). La formule de Young/Daly est optimale pour minimiser l’espĂ©rance du temps d’exĂ©cution d’une seule tĂąche. Mais quand plusieurs tĂąches s’exĂ©cutent en parallĂšle, le risque est grand que l’une d’entre elles soit retardĂ©e significativement, et partant, que soit retardĂ©e l’exĂ©cution de ses successeurs dans le graphe de tĂąches. Nous Ă©tudions la meilleure stratĂ©gie de checkpoitnt dans ce contexte, et montrons qu’effectivement il faut prendre des checkpoints plus souvent pour obtenir une solution efficace avec trĂšs grande probabilitĂ©. Nous conduisons des simulations sur des graphesde tĂąches de rĂ©fĂ©rence, qui confirment les rĂ©sultats thĂ©oriques
    • 

    corecore