XenServer blogs

Back to blogs

64 vCPU support

XenServer 8 now supports up to 64 vCPUs. There are however some considerations to bear in mind.

AUTHOR: Xihuan Yang
TARGET: Customers (Intermediate)

OS capabilities and vendor limits

OS Architecture CPU limit
(maximum)
CPU limit
(minimum)
Comments
Windows 10 (64-bit) x86-32 Limit of 4 sockets and 1280 logical cores >=2 logical cores Windows license has a 4 socket limit for Enterprise SKUs. Home Edition has a 1 socket limit and Pro Edition has a 2 socket limit.
Windows 11 x86-32 Limit of 4 sockets and 1280 logical cores >=2 logical cores
Windows Server 2016 (64-bit)

Windows Server 2019 (64-bit)

Windows Server 2022 (64-bit)
x86-32 Limit of 64 sockets and unlimited cores >=2 logical cores
Red Hat Enterprise Linux 7

Oracle Linux 7

CentOS 7

Scientific Linux 7
x86-32 Tested Limit: 768

Theoretical Limit: 5120
   
Red Hat Enterprise Linux 8

Oracle Linux 8

Rocky Linux 8
x86-32 Tested Limit: 768

Theoretical Limit: 8192
   
Debian Bullseye 11

Ubuntu Jammy Jellyfish 22.04

Ubuntu Focal Fossa 20.04

SUSE Linux Enterprise Desktop/Server 15 (64-bit)

SUSE Linux Enterprise Server 12 SP5 (64-bit)
x86-32 Theoretical Limit: 8192    
Debian Buster 10

Gooroom Platform 2.0
x86-32 Theoretical Limit: 512    
Debian Buster 10

Debian Bullseye 11
x86-32 Theoretical Limit: 32   32 bit Debian OS has a limit of 32 CPUs.

Consult the vendor limitations to ensure that you do not exceed the supported CPU limits.

Examples of exceeding the supported CPU limits

If you exceed or fail to meet the supported CPU limits on a Linux or Windows guest OS, you may encounter the following issues.

Example 1: Exceeding the maximum vCPU limit on a Linux guest OS

For an x86-32 Debian 10 OS, if you set the Maximum number of vCPUs field to 40, the Topology field is set to 10 sockets with 4 cores per socket. This exceeds the 32 CPU limit and although the 32 vCPUs are listed, any excess CPUs are not displayed. Similarly, the number of cores per socket is displayed in the same way, however, the number of sockets is limited to only the supported numbers to ensure that the total vCPUs do not exceed 32.

# lscpu
Architecture:         i686
CPU op-mode(s):       32-bit, 64-bit
Byte Order:           Little Endian
Address sizes:        48 bits physical, 48 bits virtual
CPU(s):               32
On-line CPU(s) list:  0-31
Thread(s) per core:   1
Core(s) per socket:   4
Socket(s):            8

Example 2: Exceeding the socket limit on a Windows guest OS

For an x86-64 Windows 10 OS, if you set the Maximum number of vCPUs field to 10, the Topology field is set to 5 sockets with 2 cores per socket. This exceeds the Windows license limit of 4 sockets for Enterprise SKUs. In your Windows guest, you will see only 4 sockets. Hence the total vCPUs number shown is 8.

the cpu performance graph for amd epc 702 core processor

Example 3: Failing to meet the minimum vCPU requirement on a Windows guest OS

For an x86-64 Windows 10 OS, if you set the Maximum number of vCPUs field to 1, the Topology field is set to 1 socket with 1 core per socket. This does not meet the minimum vCPU requirement of 2 CPUs and so XenCenter displays a warning to prompt you to select at least 2 vCPUs for your Windows guest.

a screenshot of a computer screen with the number of vCPUs

How XenCenter calculates your vCPU topology

  1. In the Maximum number of vCPUs field in XenCenter, you select an integer between 1 and 64.
  2. XenCenter breaks this number down into two integers: the number of sockets and the number of cores per socket. These numbers multiply together to make up the Maximum number of vCPUs.
  3. XenCenter calculates and displays the different topology configurations available to you in the Topology field.

Some topology configurations will not be available due to the following limits:

  • The number of sockets is limited to 16.
  • The number of cores per socket cannot exceed the physical cores per socket limit.

Example 1: Your host has 32 physical CPUs

The following command displays the host’s CPU information:

# xe host-cpu-info
cpu_count: 32
socket_count: 2
vendor: GenuineIntel

We can see that the host has 32 logical CPU cores and 2 sockets, therefore the number of cores per socket is limited to 16.

The Maximum number of vCPUs that you can select is from 1 to 64.

a screenshot of the maximum number of vCPUs

If you set the Maximum number of vCPUs field to 64, XenCenter displays a warning saying that the host only has 32 physical CPUs, but that you can still choose 64 vCPUs for the VM.

warning message displaying user only has 32 physical CPUs

The Topology field in XenCenter displays the different topology configurations that you can select:

screenshot of dropdown menu for Xencenter topology

This table shows the different topology configurations calculated by XenCenter, and why some topology configurations are not available for you to select.

Sockets Cores per socket Is this option available to select in XenCenter? Why is this option not available?
64 1 No This option is not available as the socket number exceeds 16.
32 2 No This option is not available as the socket number exceeds 16.
16 4 Yes  
8 8 Yes  
4 16 Yes  
2 32 No This option is not available as the cores per socket exceeds the physical cores per socket number.
1 64 No This option is not available as the cores per socket exceeds the physical cores per socket number.

Example 2: Your host has >= 64 physical CPUs

The following command displays the host’s CPU information:

# xe host-cpu-info
cpu_count: 256
socket_count: 2
vendor: AuthenticAMD

We can see that the host has 256 logical CPU cores and 2 sockets, therefore the number of cores per socket is limited to 128.

The Maximum number of vCPUs that you can select is from 1 to 64.

screenshot of maximum number of vCPUs you can select from

If you set the Maximum number of vCPUs field to 64, XenCenter displays a security warning saying that you have selected more than 32 vCPUs, but that you can still choose 64 vCPUs for the VM.

screenshot of warning message for maximum number of vCPUs

The Topology field in XenCenter displays the different topology configurations that you can select:

screenshot of a dropdown for different topology configurations

This table shows the different topology configurations calculated by XenCenter, and why some topology configurations are not available for you to select.

Sockets Cores per socket Is this option available to select in XenCenter? Why is this option not available?
64 1 No This option is not available as the socket number exceeds 16.
32 2 No This option is not available as the socket number exceeds 16.
16 4 Yes  
8 8 Yes  
4 16 Yes  
2 32 Yes  
1 64 Yes