1 / 28

Optimal Resource Allocation in Clouds

2010 IEEE 3 rd International Conference on Cloud Computing. Optimal Resource Allocation in Clouds. 9 th October, 2012 Presented by, Chidambara Nadig. Fangzhe Chang, Jennifer Ren, Ramesh Viswanathan Bell-Labs, Alcatel-Lucent. Abstract.

tovi
Télécharger la présentation

Optimal Resource Allocation in Clouds

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 2010 IEEE 3rd International Conference on Cloud Computing Optimal Resource Allocation in Clouds 9th October, 2012 Presented by, Chidambara Nadig. Fangzhe Chang, Jennifer Ren, Ramesh Viswanathan Bell-Labs, Alcatel-Lucent

  2. Abstract • Cloud Platforms lease computing power in the form of virtual machines to enterprises. • It is a challenge for the enterprise users to decide HOW MANY and WHAT KINDS of virtual machines are needed from the clouds. • This paper endeavors to provide enterprise users with an APPROXIMATION ALGORITHM which can help reduce the leasing cost and reduce administration overheads. Such as setting up of VPNs or Configuring a Cluster. Optimal Resource Allocation in Clouds

  3. It does not matter how many resources you have if you don’t know how to use them! Optimal Resource Allocation in Clouds

  4. Introduction • Computing Power can now be packaged in the form of Virtual Machines (VMs) on cloud platforms and leased to individual or enterprise users. • This way enterprises can save equipment cost by provisioning its private network for only average demand of computing power. • They can extend their network to leased machines in public clouds during peak demand. • Problem lies in deciding how many and what kinds of virtual machines and other resources the enterprise will need. Optimal Resource Allocation in Clouds

  5. Some bases and assumptions • The authors of this paper have assumed for simplicity purposes that computational tasks arrive in a sequential order. • Hence, tasks which come later can make use of the same resources which has already been used and released by an earlier task. • Sequence of tasks create a sequential batch of resource requests. • For a Batch of k tasks we get the set R = { R1, R2, R3….Rk } • Each Rihas a sequence of mi requests xi1, xi2, xi3…. ximi Optimal Resource Allocation in Clouds

  6. Batch R of k tasks Optimal Resource Allocation in Clouds

  7. Facts • Tasks are Heterogeneous. • Heterogeneity appears in different types of resources they request. Example – VMs, Block Storage, Message Queues and Data Bases. • Or, Heterogeneity can appear in different configurations of the same type of resource. Example – VMs configured to have different number of CPUs or Memory capacity. Optimal Resource Allocation in Clouds

  8. What is the main reason you bought the computer you’re using right now?? Optimal Resource Allocation in Clouds

  9. Optimal Resource Allocation in Clouds

  10. Classification Resource requirements • At Configuration level • At attribute level • One can easily convert attribute-based requirements to configuration name based requirements. Optimal Resource Allocation in Clouds

  11. Table 1The amazon ec2 (elastic compute cloud) Check out www.aws.amazon.com/ec2 Optimal Resource Allocation in Clouds

  12. The resource universe - B • The Resource Universe Bis a multiset as it contains many copies of a same resource. • The notation B is used to represent the base set of B. • A multiplicity function mB(b) to represent the number of copies a resource b ∈ B (i.e., B = {b ∈ B| mB(b) > 0}). • Each slot xij ∈ 2B × N describes what types of resource configurations are requested together with the number of copies to satisfy the requirement from j-th slot of task Ri. • Where 2B denotes the power set of B and N denotes the set of natural numbers. Optimal Resource Allocation in Clouds

  13. Subsumption • Subsumption relationships among resources exists in real world. • For instance, a m1.large machine is subsumed by a m1.xlarge machine. • Therefore, request for two m1.large machines can be satisfied by • Two m1.xlarge machines. • Two m1.large machines. • One m1.xlarge and One m1.large machines. • Subsumption relations are modeled as partial order relationships. • The above relationship can be written as ({m1.large, m1.xlarge},2) Optimal Resource Allocation in Clouds

  14. Table 2An example resource requirements What they asked for…. Optimal Resource Allocation in Clouds

  15. Table 3requirements with Subsumption What they were given… The arguments can be represented by the notations xij.fst and xij.snd Optimal Resource Allocation in Clouds

  16. resource allocation - A • Resources are allocated to meet the demands from all slots of all tasks. • A Resource Allocation Ais a function with A (i,j) ⊆ B identifying which resources and how many copies are allocated for the j-th slot of task Ri. • A(i) denotes all resources allocated to a task Ri . • A(i) = {(b,∑1≤j≤mi mA(i,j)(b))} Optimal Resource Allocation in Clouds

  17. Batch resource allocation with cost problem (B,R,c) • A monetary cost c(b) is associated for each resource b ∈ B. • This is a flat rate nonnegative real number cost for each • resource configurations by function c : B → R+) and try to • The total cost |B(A)|cis given by |B(A)|c = ∑b∈B(A) c(b) × mB(A)(b). Optimal Resource Allocation in Clouds

  18. Problem complexity • Flow Graph Gi(S) = (V, E, s, t, c) • V = {s,t} U V1 U V2 • V1 – One vertex for each slot position of Ri • V2 – S : Base set of S • E = E1 U E2 U E2 • E1 – One edge from {s} to each slot • E2 – One edge from slot j to all resources which can satisfy that slot requirements (considering subsumption of machines). • The Max Flow of this graph is given by M(Gi(S)) Optimal Resource Allocation in Clouds

  19. Theorems • Theorem 1 :A task Ri = [xi1, xi2, … ximi ] is satisfiable by resources S iff M(Gi(S)) =∑j=1…..mixij.snd A task Ri is satisfiable by resource allocation multiset S, if and only if the Max Flow of the graph Gi(S) is equal to the sum of all the resources required by Ri • Theorem 2 : The batch resource allocation problem (B, R, c) is NP-complete. One of the non-optimal heuristic repeatedly computes a least cost allocation for every task of a batch using min-cost max flow and then takes the multiset union of computed resource allocation for each task. It is denoted as the maximum feasibility algorithm (MaxF) and use it as the baseline to see how much improvement can be made. • Theorem 3 :A batch R is satisfiable by a resource multiset S iff fR(S) = FR. A batch of tasks R is satisfiable by a resource multiset S if and only if the sum over all tasks of max flow of S is equal to the sum of all resources by all tasks. fR(S) = ∑i=1…..kM(Gi(S)) - Sum of the max flow of the graph G(S) for each task FR = ∑i=1…..k∑j=1…..mixij.snd - Sum of all resource requirements in each slot of every task Optimal Resource Allocation in Clouds

  20. An approximation algorithm for resource allocation • FR – Total Requirements of R • fR(S) – Resources allocated so far. • c(b) – cost of the resource b Optimal Resource Allocation in Clouds

  21. Sub modular multiset cover • Let B be a multiset and f : P(B) → R be a real-valued function defined on all multisets that are subsets of B. • 1) The function f is monotone if for all multisets X,Y ⊆ B, we have that if X ⊆ Y then f(X) ≤ f(Y). • 2) The function f is submodular if for all multisets X,Y⊆ B, we have that f(X) + f(Y) ≥ f(X ∪ Y) + f(X ∩ Y) Optimal Resource Allocation in Clouds

  22. Sub modular multiset cover • An instance of the Submodular Multiset Cover (SMC) problem is given by (B, f, c), where B is a multiset, f : P(B) → R is monotone and submodular, and c : B → R is a cost function on the underlying set of B. With respect to such an instance (B, f, c) of the SMC problem, we define the following: • A feasible solution is a multiset S ⊆ Bsuch that f(S) = f(B). • The cost of a feasible solution S⊆ Bis given by c(S) = ∑b∈B mS(b)c(b). • The optimization problem is to find the minimum value of c(S) among all feasible solutions S. • Intuitively, the function f defines the coverage of any solution and a feasible solution is one that has the same coverage as the universe B. • The SMC problem is then to find the smallest cost solution with the most coverage. Optimal Resource Allocation in Clouds

  23. An algorithm for sub modular multiset cover • The element b picked in each iteration is the “greedy” one in the sense that b maximizes the coverage increase per cost among those not yet selected, Optimal Resource Allocation in Clouds

  24. Comparing size of the allocation • The Approximation algorithm reduces the allocation size by more than 50% of the base line. Optimal Resource Allocation in Clouds

  25. Comparing cost of allocation • In this case, the approximation algorithm yields a reduction in cost around 60% Optimal Resource Allocation in Clouds

  26. conclusion • Cloud computing enable enterprises to reserve a group of resources and use them to establish common platforms (e.g., VPNs, clusters) to run computation tasks. • This paper investigates the issue of deciding how many and what kinds of resources need to be reserved for these computations after the computations have been linearized into the form of a sequence of tasks. • This algorithm can be used by both enterprises and cloud providers to reduce cost or to allow a higher degree of resource sharing. Optimal Resource Allocation in Clouds

  27. Questions? Optimal Resource Allocation in Clouds

  28. Thank you! Optimal Resource Allocation in Clouds

More Related