Contributor

## Calculating Maximum CPU Reservation For a VM With 6 CPU

Hi,

I just can't work it out!

What's the maximum Mhz reservation I can set for a VM with 6 CPU's using the below UCS hosts (I have 4 hosts in a cluster)?

Model: Cisco UCSB-B200-M3

CPU Cores:                20 CPU's x 2.80 GHz

Processor Type:         Intel(R) Xeon(R) CPU E5-2680 v2 @2.80GHz

Sockets:                     2

Cores per Socket:     10

Logical Processors:   40

Regards,

Zoen

1 Solution

Accepted Solutions
Expert

It will be 6 times the clock speed of single core. The trick here is not assume the headline figure for CPU speed is correct, i.e. it is unlikely to be 2800MHz as the processor type you list suggests.

If you select your host in vCenter or via the onboard web client and look at the host summary page. Towards the upper right, there are three graphical bars (CPU, Memory and Storage). The CPU bar has a figure for "Capacity". This figure will be the product of the number of cores and the clock speed per core.

So you might expect your host to have 20 x 2800 MHz available, i.e. 56000MHz. It won't be, I expect it will be closer to 55800. Divide this number by the number of cores to get the max for one core and multiply by 6. So from your numbers I would expect something like 16740MHz to be the maximum CPU reservation for your 6 vCPU VM. If you are using clusters and want that VM to be able to run on any of them, make sure your reservation falls within the maximum for the host with the lowest CPU clock speed. The cluster I work with has 2.6GHz nominal CPUs, the actual CPU speeds across 37 hosts vary from 2594MHz up to 2600MHz. So all my reservations have to be based on 2594, and in fact I elect to use 2590MHz.

Another thing to remember is that the total of all CPU reservations for all VMs on a host cannot be more than 90% of the host capacity as 10% is reserved by the host itself. We use 12% for our calculations to leave a little wriggle room.

3 Replies
Expert

It will be 6 times the clock speed of single core. The trick here is not assume the headline figure for CPU speed is correct, i.e. it is unlikely to be 2800MHz as the processor type you list suggests.

If you select your host in vCenter or via the onboard web client and look at the host summary page. Towards the upper right, there are three graphical bars (CPU, Memory and Storage). The CPU bar has a figure for "Capacity". This figure will be the product of the number of cores and the clock speed per core.

So you might expect your host to have 20 x 2800 MHz available, i.e. 56000MHz. It won't be, I expect it will be closer to 55800. Divide this number by the number of cores to get the max for one core and multiply by 6. So from your numbers I would expect something like 16740MHz to be the maximum CPU reservation for your 6 vCPU VM. If you are using clusters and want that VM to be able to run on any of them, make sure your reservation falls within the maximum for the host with the lowest CPU clock speed. The cluster I work with has 2.6GHz nominal CPUs, the actual CPU speeds across 37 hosts vary from 2594MHz up to 2600MHz. So all my reservations have to be based on 2594, and in fact I elect to use 2590MHz.

Another thing to remember is that the total of all CPU reservations for all VMs on a host cannot be more than 90% of the host capacity as 10% is reserved by the host itself. We use 12% for our calculations to leave a little wriggle room.

Contributor

Thank you, this makes things a lot clearer!

Contributor

Thanks man, u have done a great job expalining things here 🙂 thumbs up for you.