433 research outputs found
Optimal Algorithms and a PTAS for Cost-Aware Scheduling
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 dicult
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. Furthermore, we argue that there is a (4+")-approximation
algorithm for the strongly NP-hard problem with individual job weights.
For this weighted version, we also give a PTAS based on a dual scheduling
approach introduced for scheduling on a machine of varying speed
Optimal Algorithms and a PTAS for Cost-Aware Scheduling
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 dicult
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. Furthermore, we argue that there is a (4+")-approximation
algorithm for the strongly NP-hard problem with individual job weights.
For this weighted version, we also give a PTAS based on a dual scheduling
approach introduced for scheduling on a machine of varying speed
Optimizing egalitarian performance in the side-effects model of colocation for data center resource management
In data centers, up to dozens of tasks are colocated on a single physical
machine. Machines are used more efficiently, but tasks' performance
deteriorates, as colocated tasks compete for shared resources. As tasks are
heterogeneous, the resulting performance dependencies are complex. In our
previous work [18] we proposed a new combinatorial optimization model that uses
two parameters of a task - its size and its type - to characterize how a task
influences the performance of other tasks allocated to the same machine.
In this paper, we study the egalitarian optimization goal: maximizing the
worst-off performance. This problem generalizes the classic makespan
minimization on multiple processors (P||Cmax). We prove that
polynomially-solvable variants of multiprocessor scheduling are NP-hard and
hard to approximate when the number of types is not constant. For a constant
number of types, we propose a PTAS, a fast approximation algorithm, and a
series of heuristics. We simulate the algorithms on instances derived from a
trace of one of Google clusters. Algorithms aware of jobs' types lead to better
performance compared with algorithms solving P||Cmax.
The notion of type enables us to model degeneration of performance caused by
using standard combinatorial optimization methods. Types add a layer of
additional complexity. However, our results - approximation algorithms and good
average-case performance - show that types can be handled efficiently.Comment: Author's version of a paper published in Euro-Par 2017 Proceedings,
extends the published paper with addtional results and proof
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
Non-Preemptive Scheduling on Machines with Setup Times
Consider the problem in which n jobs that are classified into k types are to
be scheduled on m identical machines without preemption. A machine requires a
proper setup taking s time units before processing jobs of a given type. The
objective is to minimize the makespan of the resulting schedule. We design and
analyze an approximation algorithm that runs in time polynomial in n, m and k
and computes a solution with an approximation factor that can be made
arbitrarily close to 3/2.Comment: A conference version of this paper has been accepted for publication
in the proceedings of the 14th Algorithms and Data Structures Symposium
(WADS
Resource Management In Cloud And Big Data Systems
Cloud computing is a paradigm shift in computing, where services are offered and acquired on demand in a cost-effective way. These services are often virtualized, and they can handle the computing needs of big data analytics. The ever-growing demand for cloud services arises in many areas including healthcare, transportation, energy systems, and manufacturing. However, cloud resources such as computing power, storage, energy, dollars for infrastructure, and dollars for operations, are limited. Effective use of the existing resources raises several fundamental challenges that place the cloud resource management at the heart of the cloud providers\u27 decision-making process. One of these challenges faced by the cloud providers is to provision, allocate, and price the resources such that their profit is maximized and the resources are utilized efficiently. In addition, executing large-scale applications in clouds may require resources from several cloud providers. Another challenge when processing data intensive applications is minimizing their energy costs. Electricity used in US data centers in 2010 accounted for about 2% of total electricity used nationwide. In addition, the energy consumed by the data centers is growing at over 15% annually, and the energy costs make up about 42% of the data centers\u27 operating costs. Therefore, it is critical for the data centers to minimize their energy consumption when offering services to customers. In this Ph.D. dissertation, we address these challenges by designing, developing, and analyzing mechanisms for resource management in cloud computing systems and data centers. The goal is to allocate resources efficiently while optimizing a global performance objective of the system (e.g., maximizing revenue, maximizing social welfare, or minimizing energy). We improve the state-of-the-art in both methodologies and applications. As for methodologies, we introduce novel resource management mechanisms based on mechanism design, approximation algorithms, cooperative game theory, and hedonic games. These mechanisms can be applied in cloud virtual machine (VM) allocation and pricing, cloud federation formation, and energy-efficient computing. In this dissertation, we outline our contributions and possible directions for future research in this field
Resource Management In Cloud And Big Data Systems
Cloud computing is a paradigm shift in computing, where services are offered and acquired on demand in a cost-effective way. These services are often virtualized, and they can handle the computing needs of big data analytics. The ever-growing demand for cloud services arises in many areas including healthcare, transportation, energy systems, and manufacturing. However, cloud resources such as computing power, storage, energy, dollars for infrastructure, and dollars for operations, are limited. Effective use of the existing resources raises several fundamental challenges that place the cloud resource management at the heart of the cloud providers\u27 decision-making process. One of these challenges faced by the cloud providers is to provision, allocate, and price the resources such that their profit is maximized and the resources are utilized efficiently. In addition, executing large-scale applications in clouds may require resources from several cloud providers. Another challenge when processing data intensive applications is minimizing their energy costs. Electricity used in US data centers in 2010 accounted for about 2% of total electricity used nationwide. In addition, the energy consumed by the data centers is growing at over 15% annually, and the energy costs make up about 42% of the data centers\u27 operating costs. Therefore, it is critical for the data centers to minimize their energy consumption when offering services to customers. In this Ph.D. dissertation, we address these challenges by designing, developing, and analyzing mechanisms for resource management in cloud computing systems and data centers. The goal is to allocate resources efficiently while optimizing a global performance objective of the system (e.g., maximizing revenue, maximizing social welfare, or minimizing energy). We improve the state-of-the-art in both methodologies and applications. As for methodologies, we introduce novel resource management mechanisms based on mechanism design, approximation algorithms, cooperative game theory, and hedonic games. These mechanisms can be applied in cloud virtual machine (VM) allocation and pricing, cloud federation formation, and energy-efficient computing. In this dissertation, we outline our contributions and possible directions for future research in this field
- …