Click to edit Master text styles Second level Third level Fourth level Fifth level Sucha Smanchat, PhD 1.

Slides:



Advertisements
Similar presentations
Operations Scheduling
Advertisements

Energy-efficient Task Scheduling in Heterogeneous Environment 2013/10/25.
ECE 667 Synthesis and Verification of Digital Circuits
Hadi Goudarzi and Massoud Pedram
Scheduling in Distributed Systems Gurmeet Singh CS 599 Lecture.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Multi-Objective Optimization NP-Hard Conflicting objectives – Flow shop with both minimum makespan and tardiness objective – TSP problem with minimum distance,
ISE480 Sequencing and Scheduling Izmir University of Economics ISE Fall Semestre.
Green Cloud Computing Hadi Salimi Distributed Systems Lab, School of Computer Engineering, Iran University of Science and Technology,
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
Tai, Yu-Chang 4/29/2013 Future Generation Computer Systems(FGCS.J) journal homepage: Saeid Abrishami a, ∗, Mahmoud Naghibzadeha,
Planning under Uncertainty
GridFlow: Workflow Management for Grid Computing Kavita Shinde.
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Definition of complexity class NP –Nondeterministic computation –Problems.
Chapter 2: Model of scheduling problem Components of any model: Decision variables –What we can change to optimize the system, i.e., model output Parameters.
The Theory of NP-Completeness
NP-complete and NP-hard problems
Analysis of Algorithms CS 477/677
Computational Complexity, Physical Mapping III + Perl CIS 667 March 4, 2004.
EDA (CS286.5b) Day 11 Scheduling (List, Force, Approximation) N.B. no class Thursday (FPGA) …
Chapter 11: Limitations of Algorithmic Power
CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)
Scheduling Master - Slave Multiprocessor Systems Professor: Dr. G S Young Speaker:Darvesh Singh.
Product layout Assembly-line balancing approach. 2 Facility layout Process terminology Cycle time: Average time between completions of successive units.
Ana-Maria Oprescu, Thilo Kielmann (Vrije University) Presented By Gal Cohen Cloud Computing Seminar CS Technion, Spring 2012.
Self-Organizing Agents for Grid Load Balancing Junwei Cao Fifth IEEE/ACM International Workshop on Grid Computing (GRID'04)
A Budget Constrained Scheduling of Workflow Applications on Utility Grids using Genetic Algorithms Jia Yu and Rajkumar Buyya Grid Computing and Distributed.
Bold Stroke January 13, 2003 Advanced Algorithms CS 539/441 OR In Search Of Efficient General Solutions Joe Hoffert
Scott Perryman Jordan Williams.  NP-completeness is a class of unsolved decision problems in Computer Science.  A decision problem is a YES or NO answer.
Network Aware Resource Allocation in Distributed Clouds.
ROBUST RESOURCE ALLOCATION OF DAGS IN A HETEROGENEOUS MULTI-CORE SYSTEM Luis Diego Briceño, Jay Smith, H. J. Siegel, Anthony A. Maciejewski, Paul Maxwell,
Static Process Schedule Csc8320 Chapter 5.2 Yunmei Lu
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 March 01, 2005 Session 14.
SOFTWARE / HARDWARE PARTITIONING TECHNIQUES SHaPES: A New Approach.
Scheduling policies for real- time embedded systems.
CS 345: Chapter 10 Parallelism, Concurrency, and Alternative Models Or, Getting Lots of Stuff Done at Once.
1 Distributed Energy-Efficient Scheduling for Data-Intensive Applications with Deadline Constraints on Data Grids Cong Liu and Xiao Qin Auburn University.
Topic 5.8 ( only HL ) IB Business & Management Project Management Mr L Greenbank 1.
Stochastic DAG Scheduling using Monte Carlo Approach Heterogeneous Computing Workshop (at IPDPS) 2012 Extended version: Elsevier JPDC (accepted July 2013,
Constraint Satisfaction CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
Static Process Scheduling Section 5.2 CSc 8320 Alex De Ruiter
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
Mobile Agent Migration Problem Yingyue Xu. Energy efficiency requirement of sensor networks Mobile agent computing paradigm Data fusion, distributed processing.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Outline Introduction Minimizing the makespan Minimizing total flowtime
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
Operational Research & ManagementOperations Scheduling Economic Lot Scheduling 1.Summary Machine Scheduling 2.ELSP (one item, multiple items) 3.Arbitrary.
Optimization Problems
Static Process Scheduling
Young CS 331 D&A of Algo. NP-Completeness1 NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and.
A stochastic scheduling algorithm for precedence constrained tasks on Grid Future Generation Computer Systems (2011) Xiaoyong Tang, Kenli Li, Guiping Liao,
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
Efficient Coflow Scheduling with Varys
Jérémie Sublime Sonia Yassa Development of meta-heuristics for workflow scheduling based on quality of service requirements 1.
Some Topics in OR.
Priority Queues An abstract data type (ADT) Similar to a queue
Algorithm Design Methods
CHAPTER 8 Operations Scheduling
Basic Project Scheduling
A Dynamic Critical Path Algorithm for Scheduling Scientific Workflow Applications on Global Grids e-Science IEEE 2007 Report: Wei-Cheng Lee
Basic Project Scheduling
Design and Analysis of Algorithm
Multi-Objective Optimization
Priority Queues An abstract data type (ADT) Similar to a queue
Topic 15 Job Shop Scheduling.
Algorithm Design Methods
Major Design Strategies
Major Design Strategies
Algorithm Design Methods
Presentation transcript:

Click to edit Master text styles Second level Third level Fourth level Fifth level Sucha Smanchat, PhD 1

2 Concept of scheduling Scheduling models Workflow scheduling problem Computational complexity overview Workflow scheduling techniques In Grid computing environment In Cloud computing environment

3 A branch of Operational Research Scheduling Theory started in 1950s

4 Scheduling is a decision-making process of allocating tasks to (limited) resource Task or job – the activity to be carried out Resource – what is required to do task or job “A schedule is a job sequence determined for every machine of the processing system.” Normally 1 task per 1 resource at a given time Resource can be homogeneous or heterogeneous

5 Time taken to complete all tasks Cost to complete all tasks Resource utilization Reliability Security Energy consumption (carbon footprint) Etc.

6 Hard objectives are usually imposed as constraints Hard time objective is a deadline Hard cost objective is a budget Hard security objective is security constraint Soft objectives are usually optimized without specifying a threshold Soft time objective is minimizing overall makespan Soft cost objective is minimizing execution cost Soft energy objective is minimizing energy consumption Soft utilization objective is to maximize resource utilization

7 Scheduling objectives are usually in conflict with each other e.g. A faster / reliable resource usually costs higher Increasing resource utilization may increase time Increasing reliability may reduce security and consume more energy Optimize between two or more objectives Pareto optimal solution or “Pareto Front” is a set of optimal solutions given two or more objectives Trade off between multiple objectives Hard VS Soft objectives

8 Single machine - simplest Parallel machines Homogeneous – A job can be processed by any resource Homogeneous, different capability (e.g. speed) – A job can be processed by any resource but processing time of each resource is different Heterogeneous – A job can be processed by certain resources

9 Flow Shops For m machine, every job has to be processed on each one of the m machines (e.g. assembly line) Flexible Flow Shops Every job has to go through a number of stage. Each stage can be handled by one of multiple machines

10 Job Shops Each job has its own predetermined route Same as Flow Shops except that a job can be processed by the same machine more than once Flexible Job Shops Each job has its own predetermined route Similar to Job Shops but the machines are group as work centre so a job can be processed by any of machine in the centre Open Shops Each job has to be processed on each one of the m machines No restrictions on job routing (e.g. scheduler’s decision)

11 A workflow W is composed of a set of tasks T connected according to a set of precedence dependencies E W = (T, E) A precedence dependency e in E e = (t i, t j ) where t i ≠ t j specifies that t i must finish before t j can start Given a set of resources R, workflow scheduling problem is to find the mapping of the tasks in T to the resources in R so that the scheduling objective(s) is optimized.

12 To explain why some problems can be solved easier Time complexity or running time expresses the total number of elementary operations as a function of the size of the problem instance Input size is bounded by The number of jobs The number of resource

13 A decision problem is said to be polynomial or a polynomial-time algorithm if its running time is bounded by a polynomial in input size.” – P complexity E.g. O(n 2 ) : number of operations grows as the function Cn 2 “Polynomial algorithms are sometimes called efficient. The class of all polynomially solvable problems is called class P” If no polynomial-time algorithm is known for a problem, the problem is known as class NP-hard problem. Generally cannot be solved in polynomial time Many scheduling problems are NP-hard

14 Set of all decision problems Non-deterministic Polynomial-time The solution to a decision problem can be verified in polynomial time by a (non-)deterministic Turing machine

15

16 NP-Complete class is the hardest problems in class NP An NP-Complete problem is also NP-Hard No known polynomial-time algorithms to solve It is almost impossible to solve these problems or obtain optimal solution in a reasonable time period If you encounter such problem, do not try to find optimal answer because you won’t find one probably in your lifetime. Use alternative methods Approximation algorithm Heuristic algorithm

17 Non-deterministic Polynomial-time hard Can be many types of problems Decision problems Search problems Optimization problems Class of problems that are at least as hard as the hardest problems in NP class (NP-Complete) NP-Complete is NP-Hard, but NP-Hard is not necessarily be NP-Complete

18 Sequencing and scheduling Database problems Network design e.g. spanning tree Mathematical programming Games and puzzles Automata and language theory Program optimization e.g. code generation Algebra and number theory

19 Exact – Find optimal solutions Approximate – guaranteed fixed percentage of optimum in polynomial time, performance is verified analytically Heuristic – no guarantee, performance is verified by computational experiment Construction – start with no schedule and add a job at a time Improvement – Start with a schedule and try to find a better one

20 “Experience-based techniques for problem solving, learning, and discovery” Produce good-enough solutions, which may not be optimal But fast to compute and generate solution when exhaustive search is not practical Can be used with other methods to improve efficiency Examples Rule of thumb Trial and Error

21 High-level heuristic that is designed to generate a heuristic that shall give a good solution Metaheuristic techniques usually give better result than heuristic techniques, BUT are slower than heuristic techniques – not appropriate for time-sensitive applications Examples Genetic Algorithm (GA) Particle Swarm Optimization (PSO)

22

23 Grid workflow scheduling Time-sensitive Focus on fast execution (resource sharing model) Cloud workflow scheduling Time-sensitive Focus on cost (business-driven model) but still have to be fast enough (multi-objectives of cost and time) Because both are time-sensitive, metaheuristic techniques are usually not acceptable

24 Popular research field during the time of Grid computing Because Grid computing is based on resource sharing, the most important objective is to finish a workflow as fast as possible to allow other users to use Grid resources Grid environment may change at any time (resources may not be subject to central control) so scheduling process must be fast (time-sensitive)

25 Each task has an execution time on each resource EET – Estimated Execution Time Each resource may have a queue of waiting tasks EWT – Estimated Wait Time Hardware queues VS queues maintained by scheduler Data may be transferred between resources according to task dependencies ETT – Estimated Transfer Time

26 HEFT - Heterogeneous-Earliest-Finish-Time Another popular algorithm with decent performance Calculate task rank recursively backward from the last task through the longest path to the first task The last task has the lowest rank The first task has the highest rank

27 Ranking funcation w = average computation time of the task c i,j = average communication time between the task and each child task Iteratively assign the task with highest rank to the resource that can finish it at earliest time (fastest). Many HEFT extensions exist

28 H. Topcuoglu, S. Hariri and M. Wu, "Performance-effective and low-complexity task scheduling for heterogeneous computing," IEEE Transactions on Parallel and Distributed Systems, vol. 13, pp , 2002.

29

30 Three popular batch algorithms Min-Min, Max-Min, and Sufferage Task Prioritising Phase Create a list of tasks that are ready to execute according to precedence dependencies Find the resource that can execute each task fastest with Minimum Completion Time (MCT)

31 Resource Selection Phase Min-Min - iteratively schedule the task-resource pair with minimum MCT first Max-Min - iteratively schedule the task-resource pair with maximum MCT first Sufferage - iteratively schedule the task-resource pair that would suffer most if not scheduled first (sufferage determined by min MCT – second min MCT) XSufferage – same as Sufferage but also taking into account data transfer time between tasks

32 H. Topcuoglu, S. Hariri and M. Wu, "Performance-effective and low-complexity task scheduling for heterogeneous computing," IEEE Transactions on Parallel and Distributed Systems, vol. 13, pp , 2002.

33 CPOP (proposed together with HEFT) QoS guided Min-Min Min-Min Max-Min Selective Algorithm Balanced Minimum Completion Time Hybrid HEFT SDC Besom Cluster and Duplication Based Scheduling TDS and TANH

34 Supersede Grid workflow scheduling after Cloud computing became popular. Because Cloud computing is economy-driven, the most important objective is to lower the cost of cloud resources used for execution But the execution still needs to be fast enough - thus multi-objective Cost VS Time - faster servers cost higher Other objectives are receiving more attention e.g. energy consumption and security constraints

35 Cloud environment do not change much because of Service Level Agreement (SLA) Still, it is time-sensitive. No point that the scheduling time is longer than the actual execution. Mostly assume IaaS resources i.e. virtual machines Each task has an execution time on each virtual machine type Estimated Execution Time (EET) Easier to parameterize than Grid resources See EC2 Compute Unit or Elastic Compute Unit – ECU

36 Each virtual machine may have a queue of waiting tasks Estimated Wait Time The queues should mostly maintained by scheduler to avoid complicated virtual machine Data may be transferred between virtual machines according to task dependencies, however, Data transfer within the same region (data center) is usually assumed to be zero

37 Two cost-based scheduling approaches Backtracking and (Partial) Critical Path Workflow partitioning into sequential branches can be applied to reduce complexity Deadline and/or budget may be distributed To individual task as sub-deadline or sub-budget To each branch after partitioning

38 Minimize cost while meeting deadline (or vice versa) Allocates the ready tasks to the cheapest resources then calculate the execution time. If deadline is violated, the last allocated task is reallocated (backtracked) to a faster (more expensive) resource. Multiple backtracking may be required.

39 TaskP1P2P P1P2P3 Cost/time unit Find a schedule with minimum cost within deadline of 45 time units Find a schedule with minimum time with budget of 120

40 Algorithms using this approach first find the critical path of the workflow Critical path is the longest path from the entry task to the exit task of a workflow The tasks outside the critical path are less likely to affect the scheduling objectives Thus, ensuring that the critical path meets the scheduling objective will also ensure that the whole execution meets the scheduling objectives

41 Once the critical path is determined, the tasks in the critical path are usually assigned to: the cheaper (slower) resources that can still meet the workflow deadline or the sub-deadline of each task the fastest resources (more expensive) that can complete the workflow within its budget or the sub-budget of each task The process then finds the new critical among the remaining tasks and repeat the process Algorithms in this approach have different way to select resources for tasks depending on their focus

42

43 The first critical path t2-t6-t9 is allocated to a virtual machine instance of type s2 as it is the cheapest resource that can finish the three tasks within their latest finish times (LFT)

44 IC-PCPD2 (the variation of IC-PCP, proposed in the same paper, that distributes deadline to each individual task) Partitioned Balanced Time Scheduling (PBTS) Hybrid Cloud Optimized Cost scheduling (HCOC) Dynamic Critical Path for Cloud (DCP-C)

45 Workflow scheduling in Hybrid Cloud / Intercloud Virtual machines allocation/placement Which physical host each virtual machine should reside? Host utilization Energy consumption MapReduce scheduling Another unique scheduling problem

46