and scheduling techniques agenda for today
play

and Scheduling Techniques Agenda for Today Resource management - PowerPoint PPT Presentation

Day 5 Heuristic Resource Provisioning and Scheduling Techniques Agenda for Today Resource management encompasses all the characteristics and usage of cloud resources including resource provisioning and resource scheduling The resource


  1. Day 5 Heuristic Resource Provisioning and Scheduling Techniques

  2. Agenda for Today • Resource management encompasses all the characteristics and usage of cloud resources including resource provisioning and resource scheduling • The resource allocation problem is a recurring issue in distributed computing. • It has remained a topic of research in various fields such as – job shop, flow shop or open shop scheduling in production environment, printed circuit board assembly scheduling – scheduling of tasks in distributed computing systems such as cluster, grid or cloud. • We will look at heuristic approaches today..

  3. Cloud Data Center Model • Cloud services and basic functions are provided based on Virtual Resources which are abstracted from Physical Resources. Result Virtualized Resources Cloud consumer request Service Provisioning J1 Jn J1 Advance Spot On-demand Reservation Instances resource provisioning resource allocation VM scheduling • The Cloud resource provisioning enables virtualized resources to be allocated to Cloud consumers based on three provisioning plans.

  4. Resource provisioning • Resource provisioning is responsible – To understand the user needs – To prepare VMs with appropriate resources to match the workloads and QoS requirements – SLA Negotiation – Etc. Result Virtualized Resources Cloud consumer request Service Provisioning J1 Jn J1 Advance Spot On-demand Reservation Instances resource provisioning resource allocation VM scheduling

  5. Resource Allocation • Resource allocation is responsible – To select an optimal set of physical machines to host the received services (VMs), – To ensure the resource and QoS constraints are met. – To manage changes in resources availability through VMs restore or migration Result Virtualized Resources Cloud consumer request Service Provisioning J1 Jn J1 Advance Spot On-demand Reservation Instances resource provisioning resource allocation VM scheduling

  6. VM Scheduling • VM scheduling is responsible – A resource can be used either in shared (time sharing) mode or exclusive mode (space sharing). – To ensure that the VMs receive the required services based on the rule (policy) description. Result Virtualized Resources Cloud consumer request Service Provisioning J1 Jn J1 Advance Spot On-demand Reservation Instances resource provisioning resource allocation VM scheduling

  7. Cloud resource provisioning problem • The Cloud resource provisioning problem involves tasks that must be scheduled on cloud resources subject to some constraints to optimize some objective function. • The growing scale of Cloud computing and the increasing complexity of users’ requirements introduce additional constraints and make allocation decisions more challenging with difficult tradeoffs between user satisfaction and profit maximization.

  8. Resource Provision and Allocation • A wide variety of resource provisioning goals exist: – High resource utilization – Energy efficiency – reliability of services – Low performance interference • Optimally achieving the above goals in cloud computing environment has been proved to be an NP-complete problem due to its combinatorial optimization nature. • There are no algorithms which may produce optimal solution within polynomial time for such kind of problems.

  9. Optimization algorithms • Optimization algorithms can be roughly divided into two categories: exact algorithms and heuristics. • Exact algorithms are designed in such a way that it is guaranteed that they will find the optimal solution in a finite amount of time. – For scheduling optimization problems (e.g. NP-hard or global optimization) this "finite amount of time" may increase exponentially in respect to the dimensions of the problem. • Heuristics do not have this guarantee, and therefore generally return solutions that are worse than optimal. – Heuristic algorithms usually find "good" solutions in a "reasonable" amount of time.

  10. Heuristic algorithms • Heuristic algorithms usually are – adapted to the problem at hand and they try to take full advantage of the particularities of this problem. – However, because they are often too greedy, they usually get trapped in a local optimum and thus fail, in general, to obtain the global optimum solution. – Heuristic algorithms are generally make simplifying assumptions to relax constrains.

  11. Relevant Information • When developing resource provisioning algorithms, it is imperative to consider information such as • highly heterogeneous and time-varying workloads. – daily demand distribution of a typical Internet application – request arrivals and departures statistics stochastic request arrivals and departures https://gigaom.com/2012/02/11/which-is-less-expensive-amazon-or-self-hosted/, https://github.com/google/cluster-data/blob/master/ClusterData2011_2.md,

  12. Relevant Information • Need to consider fundamental challenges that arise from aspects such as – the multi-tenant, – resource-abundant, – elastic resource model and – quality of service requirements expressed in terms of execution time and cost. • How about cloud user’s job that often requires cooperation among multiple VM instances?

  13. Relevant Information Cloud providers are faced with stochastic request arrivals and departures, which generates highly heterogeneous and time-varying Cloud consumer workloads. J1 Jn J1 What are the workload characteristics? request What are the VM capability Service Provisioning Advance Spot On-demand What do we want to minimize: power Reservation Instances consumption, SLA violation, etc.? What do we want to maximize: resource usage, revenue, etc.? What do we want to Minimize: completion time , cost, etc. ?

  14. Relevant Information • What type of resources the application needs? – VM that is abundant in a particular type of resource: bandwidth, CPU, or storage. • VMs types oblivious Cloud resource provisioning is most common.

  15. VM type-oblivious Heuristic Algorithms • This question usually not considered in the heuristic algorithm as it is usually assumed that – A single type of VMs is usable by all applications, or – VMs are substitutes in that a high-end VM is equivalent to a number of low-end VMs. For example, a Type II (2 × Core, 2 GB RAM, 40 GB Disk) VM equals two Type I (1 × Core, 1 GB RAM, 20 GB Disk) VMs. • Such type-oblivious VM heuristic algorithm do not handle the existing VM heterogeneity in today’s cloud computing platforms.

  16. Resource provisioning classification • Resource provisioning can be generally classified as – Static Resource Provisioning • Given information such as highly heterogeneous and time-varying workloads , allocation solutions based on static resource provisioning lead to poor performance and hinder providers from achieving expected profits. – Dynamic Resource Provisioning • With dynamic provisioning, the provider allocates more resources as they are needed and removes them when they are not. – Hybrid Resource Provisioning • Combines other resource provisioning approaches

  17. Plan-oblivious Heuristic Algorithms • Cloud providers can offer cloud consumers three different provisioning plans for computing resources, namely reservation and on‐demand plans. • Cloud resource provisioning that are oblivious to various plans offered by the service provider is common – Can we run FCFS on shared systems following the on- demand plan? – How about system with advanced reservations?

  18. Over provisioning problem • Over-provisioning to handle demand peaks can result in significant costs and unused capacities Resource waste

  19. Under provisioning problem • Planning resources for only usual workloads request rejection and QoS degradation QoS violation applicat ion

  20. Example of Heuristic Algorithms • Rule-based heuristics – First Come First Serve (FCFS), – Minimum Completion Time (MCT), – Minimum Execution Time (MET), – Max-min, – Min-min and – Sufferage.

  21. Question • How do I compare my algorithm with existing heuristic algorithms for tasks scheduling? • It is difficult to compare heuristic algorithms due to the contrasting underlying assumption by each heuristic algorithm. • The results of the simulation for all the heuristics are considered under the same assumption.

  22. Performance Implications of VM Co-locations • Independent VMs can share a VM 1 VM 2 physical machine. Task 2 Task 3 • The extent of interference impact depends on the type of Task 4 Task 4 application Hypervisor • The analysis of co-located data- Virtualization intensive applications [Chiang and Huang] shows that the effects Processor Mem Disk for such applications is more Co-hosted VMs share hardware and software pronounced than others

  23. Data Intensive Application Interference • Interference slows down the tasks dramatically • Three approaches for interference prediction model is proposed. – Linear Model – Quadratic Model – Exponential Model • Also, an Interference-Aware Task Scheduling approach is proposed TRACON: Interference-Aware Scheduling for Data-Intensive Applications in Virtualized Environments. SC ’ 11 Interference and Locality-Aware Task Scheduling for MapReduce Applications in Virtual Clusters HPDC ’ 13

Recommend


More recommend