Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Kansas City CMG, 2005 Ethan Bolker and Yiping Ding October, 2005 Virtual performance won't do : Capacity planning for virtual systems.

Similar presentations


Presentation on theme: "1 Kansas City CMG, 2005 Ethan Bolker and Yiping Ding October, 2005 Virtual performance won't do : Capacity planning for virtual systems."— Presentation transcript:

1 1 Kansas City CMG, 2005 Ethan Bolker and Yiping Ding October, 2005 Virtual performance won't do : Capacity planning for virtual systems

2 2 Kansas City CMG 05 Everything we think we know is virtual What we can measure and verify is limited

3 3 Kansas City CMG 05 What Analysts are Saying? “Enterprises that do not leverage virtualization technologies will pay up to 40 percent more in acquisition costs by 2008, and roughly 20 percent more in administrative costs than enterprises that leverage virtualization technologies” T. Bittman, Gartner Research – July 2003 What we see is not Reality. It is our Perception. Virtualization is the Perception. Perception is the Business.

4 4 Kansas City CMG 05 The History of Computing Is A History of Virtualization

5 5 Kansas City CMG 05 What is the “Performance” Model for that? 1 S 1 Throughput Service time Utilization = Throughput x Service time Utilization: % of system busy

6 6 Kansas City CMG 05 One job may take days to complete … 1 Days Throughput Service time Utilization = Throughput x Service time U = 1 job / 30 days x 3 days / job = 10% Response time almost equals service time

7 7 Kansas City CMG 05 Multiprogramming: nontrivial performance modeling x R x Multics Utilization = Throughput x Service time U = 8 job / 1 min. x 0.1 min / job = 80% Throughput Response time = service time / (1 – U) = 0.1 / 0.2 = 0.5 min

8 8 Kansas City CMG 05 Advanced Chips x R x

9 9 Kansas City CMG 05 A Basic Computer System without Virtualization Applications Operating System Processors Network Interface I/O Subsystem Memory Hardware Sum of app utilization = processor utilization Capture Ratio: SUM of U(Ai) / U(P) U(Ai) U(P)

10 10 Kansas City CMG 05 MemoryProcessors Hardware Operating System I/O Subsystem Network Interface MemoryProcessors Hardware I/O Subsystem Network Interface Virtualized Layer OS Applications OS Applications Application A Virtualized System

11 11 Kansas City CMG 05 Three Basic Architectures of Virtualization  Virtualization Layer below the OS  Virtualization Layer above the OS  (Virtualization Layer both below and above the OS)

12 12 Kansas City CMG 05 Examples of Virtualization Products VendorBelow / Above OS Hyper-threaded Processor IntelBelow VMware ESX ServerVMware (EMC)Below VMware GSX ServerVMware (EMC)Above Virtual Machine Technology MicrosoftAbove AIX MicropartitionIBMBelow Sun N1SUNAbove and Below nPar, vParHPBelow PR/SMIBMBelow

13 13 Kansas City CMG 05 VMware ESX Server: V Layer is below OS

14 14 Kansas City CMG 05 VMware GSX Server: V Layer is both above and below the OS

15 15 Kansas City CMG 05 Microsoft Virtual Machine Technology Virtual Machine Operating System and Applications IA-32 Server Windows Server 2003 Virtual Server 2005 Virtual Hardware Virtual Server is above and below the OS, like VMWare GSX

16 16 Kansas City CMG 05 Model with Virtual Layer above OS  When Virtual Layer is above an OS, Virtual Layer is an extension of the OS Virtual Machine Operating System and Applications IA-32 Server Windows Server 2003 Virtual Server 2005 Virtual Hardware A New OS with additional measurements Any HW presented by an OS is virtual HW Applications running on the new OS with OS like measurements. (ie, treat it as an application.)

17 17 Kansas City CMG 05 Model with V Layer below OS When V Layer is below OS, V Layer serves as a new OS A new OS with new Measurements An application with OS like measurements

18 18 Kansas City CMG 05 Virtualization layer below operating system MemoryProcessors Hardware Operating System Applications I/O Subsystem Network Interface MemoryProcessors Hardware I/O Subsystem Network Interface Virtualized Layer New OS New App

19 19 Kansas City CMG 05 Sun N1: Virtualization above and below OS OS Separately Administrable Solaris Instances

20 20 Kansas City CMG 05 Definitions of utilization Vj(P) = (virtual) processor utilization measured by guest j = sum( Vj(Ai) ) Uj(P) = real processor utilization charged to guest j by the virtualization manager U0(P) = real processor utilization the virtualization manager uses to do its work Central question: does Vj(P) = Uj(P) ?

21 21 Kansas City CMG 05 Guests and Virtualization Manager  Each guest runs its own OS  The OS could be different for different guests  Each guest knows nothings about the others  Performance data is collected at each guest  Only Virtualization Manager knows all and keeps track of the resource consumption of each virtual machine on the physical system  The Virtualization Manager schedule access to real physical resources to support each guest

22 22 Kansas City CMG 05 Stretch-out! We expect to see Vj(P) > Uj(P) … the fraction of time the guest run queue is not empty is larger than the time charged to guest j by the manager, which may award the CPU cycles to some other guest, forcing guest j to wait even while it thinks it is processing work

23 23 Kansas City CMG 05 Two virtual machines on one physical system Memory Processors Hardware Operating System Applications I/O Subsystem Network Interface MemoryProcessors, V1(P) Hardware I/O Subsystem Network Interface Virtualized Layer Hardware Operating System Applications MemoryProcessors, V2(P) I/O Subsystem Network Interface Virtualized Layer Virtualization Manager V2(P) = sum V2(Ai) U(P) = sum Uj(P) V1(P) = sum V1(Ai)

24 24 Kansas City CMG 05 sum Uj(P) = U(P)

25 25 Kansas City CMG 05 How to Allocate Resource among Guests  Each guest consumes as much of the processing power as it wishes, provided U(P) < 1 (no shares assigned)  Assign each guest a (fraction) share f(j), which is interpreted as either a cap or a guarantee When shares are caps, each guest owns its fraction of processing power, but no more than that When shares are guarantees, each guest could consume more than its share when other guests are idle  In each of the three cases, we must know how to interpret the measurements in each guest

26 26 Kansas City CMG 05 Easiest Case to Understand: Shares as Caps  Each guest is unaffected by other guests  The relationship between the guest Virtual utilization and the guest physical utilization is simple: Vj(P) = Uj(P) / f(j)  Vj(P) approaches 100% as Uj(P) approaches the cap f(j)

27 27 Kansas City CMG 05 No Shares Assigned Vi(P) = Ui(P) / [1 – (U(P) – Ui(P))] Where Ui(P) ≤ U(P) ≤ 1 Ui(P) ≤ Vi(P) ≤ 1 If Ui(P) = U(P) then processor is busy for guest i only (and there is no overhead), thus Vi(P) = Ui(P) Vi(P) is usually greater than Ui(P) Each guest consumes as much of the processing power as it wishes, provided U(P) < 1

28 28 Kansas City CMG 05 No Shares Assigned Vi(P) = Ui(P) / [1 – (U(P) – Ui(P))]

29 29 Kansas City CMG 05 Shares as Guarantees  When shares are guarantees, each guest can consume more than its share when other guests are idle Vi = F(f1, …, fn, U1,…, Un) Virtual utilization depends on share and utilization of each guest

30 30 Kansas City CMG 05 Processors, Hardware Windows 2000 Guest 1: Bermuda Processors Hardware Virtualized Layer Hardware Windows 2000 Guest 2: Largo Virtualized Layer VMware experiments Virtualization Manager U(Bermuda) = 25%U(Largo) = 20% - 40% U(P) = 45% - 65% V(Bermuda) = ? Processors V(Largo) = ?

31 31 Kansas City CMG 05 Processors, U(P) Hardware Windows 2000 Guest 1: Bermuda Hardware Virtualized Layer Hardware Windows 2000 Guest 2: Largo Virtualized Layer VMware experiments: Guest Bermuda Virtualization Manager U(Largo) = 20% - 40% Processors, V(Largo) V(Bermuda) Processors U(Bermuda) = 25%

32 32 Kansas City CMG 05 Processors Hardware Windows 2000 Guest 1: Bermuda Processors, V(Bermuda) Hardware Virtualized Layer Hardware Windows 2000 Guest 2: Largo Virtualized Layer VMware experiments: Guest Largo Virtualization Manager U(Bermuda) = 25% Processors V(Largo) U(Largo) = 20% - 40%

33 33 Kansas City CMG 05 VMware measurements Same total utilization

34 34 Kansas City CMG 05 Observations of VMware experiments  Guest’s utilization (Vi) was larger than the utilization attributed to it by the manager (Ui) Vi Ui

35 35 Kansas City CMG 05 Observations of VMware experiments  The proportional utilization stretching is roughly constant for each guest, but different for the two guests

36 36 Kansas City CMG 05 Observations of VMware experiments  The response time on each machine depends on the total utilization Total utilization Response Time

37 37 Kansas City CMG 05 Observations of VMware experiments  When both guests ran at the same (approximate) load (Experiment 2), job response time was essentially the same on each

38 38 Kansas City CMG 05 Main points / Summary  showed processor utilizations measured by the guest and by the virtualization manager need not agree  discussed the relationship between those utilization measurements when no shares have been assigned  proposed a methodology for computing how activity in one guest can affect the performance in others  suggested the value of using throughput rather than utilization as the independent variable when attempting to answer what-if questions about transaction response time

39 39 Kansas City CMG 05 Future Work  find a virtualization system that allows us to specify “no shares” so that we can validate the model introduced in the paper  continue our experiments on VMware and other systems in order to understand share allocation semantics  develop a reasonably generic methodology for modeling at least the simplest of the share allocation semantics


Download ppt "1 Kansas City CMG, 2005 Ethan Bolker and Yiping Ding October, 2005 Virtual performance won't do : Capacity planning for virtual systems."

Similar presentations


Ads by Google