VM CPU and Memory Allocation

When you create a VM, you can allocate virtual CPUs, specify how many cores-per-socket to present to the vCPUs, and set initial memory resources for the VM. You can change the settings at any time after the new VM is created.

The vCPU hotplug feature in XenCenter enables customers to dynamically increase the number of vCPUs assigned to a running Linux VM, without having to restart the VM.

Options

Number of vCPUs

(for Windows VMs)

Enter the number of virtual CPUs (vCPUs) you would like to allocate to the new VM.

To get the best performance out of the VM, the number of vCPUs assigned to the VM mustn’t exceed the number of physical CPUs on the server.

Note:

This value can be changed later, if needed. For more information, see Change VM properties: CPU. For information about the maximum number of vCPUs supported on a VM, see the Citrix Hypervisor Configuration Limits.

Maximum number of vCPUs

(for Linux VMs)

Select the maximum number of virtual CPUs (vCPUs) you would like to allocate to the new VM from the menu.

To get the best performance out of the VM, the number of vCPUs assigned to the VM mustn’t exceed the number of physical CPUs on the server.

Note:

This value can be changed later, if needed. For more information, see Change VM properties: CPU.

Topology

Specify the topology for the vCPU.

By default, Citrix Hypervisor allocates one core per socket for each vCPU. For example, allocating 4 vCPUs appear as 4 sockets with 1 core per socket. Click the Topology menu to change this setting and choose an option from the list.

Note:

The cores-per-socket setting depends on the number of sockets present on the server and the operating system installed. Some operating systems have restrictions on the number of CPUs. Comply with the operating system requirements when setting this option.

Initial number of vCPUs

(for Linux VMs)

This option displays the initial number of vCPUs allocated to the VM. By default, this number is equal to the Maximum number of vCPUs set in the previous step. You can choose from the list and modify the initial number of vCPUs allocated to the VM.

Memory

Enter the amount of memory you want to allocate to the VM.

The Citrix Hypervisor templates provide typical VM configurations and set reasonable defaults for the memory, based on the type of guest operating system. The following considerations can affect how much memory you decide to initially allocate to a new VM:

  • The kinds of applications that run on the VM.
  • Other virtual machines that use the same memory resource.
  • Applications that run on the server alongside the virtual machine.

You can adjust the memory allocation after the new VM is created on the VM’s Memory tab. On this tab, you can also enable Dynamic Memory Control (DMC) to allow dynamic reallocation of memory between VMs in the same pool. For more information, see Configuring VM memory.

VM power state scenarios

The following table lists the three VM power states and describes their various vCPU scenarios.

VM Power State Maximum Number of vCPUs Initial number of vCPUs Current number of vCPUs
Running Cannot be increased/decreased N/A Can only be increased.
Shutdown Can be increased/decreased Can be increased/decreased N/A
Suspended Cannot be modified N/A Cannot be modified

VM CPU and Memory Allocation