Managing cpu resources, Cpu virtualization basics, Software-based cpu virtualization – VMware vSphere vCenter Server 4.0 User Manual

Page 17: Managing cpu resources 17, Cpu virtualization basics 17

Advertising
background image

Managing CPU Resources

2

ESX/ESXi hosts support CPU virtualization.
When you utilize CPU virtualization, you should understand how it works, its different types, and processor-

specific behavior. Also, you need to be aware of the performance implications of CPU virtualization.
This chapter includes the following topics:

n

“CPU Virtualization Basics,”

on page 17

n

“Administering CPU Resources,”

on page 18

CPU Virtualization Basics

CPU virtualization emphasizes performance and runs directly on the processor whenever possible. The

underlying physical resources are used whenever possible and the virtualization layer runs instructions only

as needed to make virtual machines operate as if they were running directly on a physical machine.
CPU virtualization is not the same thing as emulation. With emulation, all operations are run in software by

an emulator. A software emulator allows programs to run on a computer system other than the one for which

they were originally written. The emulator does this by emulating, or reproducing, the original computer’s

behavior by accepting the same data or inputs and achieving the same results. Emulation provides portability

and runs software designed for one platform across several platforms.
When CPU resources are overcommitted, the ESX/ESXi host time-slices the physical processors across all

virtual machines so each virtual machine runs as if it has its specified number of virtual processors. When an

ESX/ESXi host runs multiple virtual machines, it allocates to each virtual machine a share of the physical

resources. With the default resource allocation settings, all virtual machines associated with the same host

receive an equal share of CPU per virtual CPU. This means that a single-processor virtual machines is assigned

only half of the resources of a dual-processor virtual machine.

Software-Based CPU Virtualization

With software-based CPU virtualization, the guest application code runs directly on the processor, while the

guest privileged code is translated and the translated code executes on the processor.
The translated code is slightly larger and usually executes more slowly than the native version. As a result,

guest programs, which have a small privileged code component, run with speeds very close to native. Programs

with a significant privileged code component, such as system calls, traps, or page table updates can run slower

in the virtualized environment.

VMware, Inc.

17

Advertising
This manual is related to the following products: