Assign more than 8 vCPUs a VM on XenServer 6

XenServer supports more than 8 virtual CPUs in a guest, but the XenCenter GUI interface imposes a hard limit of 8. If you want to use more than 8 VCPUs for a guest, you must do so via the ‘xe’ command line:

xe vm-param-set  uuid=your_vms_uuid platform:cores-per-socket=4

xe vm-param-set uuid=your_vms_uuid VCPUs-at-startup=16

xe vm-param-set uuid=your_vms_uuid VCPUs-max=16

To find ‘your_vms_uuid’, you can use:

xe vm-list name-label=VMname

Where “VMname” is the human readable name you assigned in XenCenter.
It is not recommended to use more that 8 vCPUs. More vCPUs does not automatically equal more performance, especially if there are multiple VMs running on this XenServer instance. Also realize that a HT CPU does not equal a full extra CPU.


About the only scenario in which it is necessary to assign all of your physical CPUs over to a single guest if you’re doing 1:1 virtualization of an application that has been proven capable of scaling well to the number of CPUs you’re trying to use. Otherwise you’re just causing additional CPU scheduling overhead in the hypervisor.

No comments:

Post a Comment