Hey all,
Quick question (I hope)..
We have a VM that is a reporting application... Now its data set is quite huge (~190GB mark), considering the application works by basically loading the data-set into vRAM..
I've spoken to application vendors and they believe that we need to add more vCPU's to the VM as some of the reports generated from this is quite CPU dependent..
I've requested that our infrastructure vendor to increase the vCPU size from 10 vCPU's to 14.. But they've come back with the following..
Your Host is a 4 socket / 10 core server with 512GB of Ram or 128GB per socket, The VM is configured with 190Gb of vRAM. Therefore, part of the vRAM is located outside the NUMA alignment and as advised, the best practice is to limit the number of cores to 1 socket.. Maybe you should look at splitting the server into multiple smaller VM's.
We cant currently split the VM into smaller sizes, we are working at re-designing the data-set and splitting them up into separate stores, but for the meantime I need to get this one running a more efficient.
Therefore, based on the fact that:-
We have a 3 host cluster that is only at 35% utilization, and based on the info on how NUMA works, couldn't we spread the application across 2 sockets, instead of the one?
I'm more seeking exactly how NUMA works.. if the Host has 4 sockets with 10cores per socket and 512GB ram there each socket is assigned 128GB Ram, if we changed the server from 1xsocket 10x cores to 2xsockets and 7cores (or 10cores) then the VM is assign 2 sockets and 256GB of RAM and therefore falls under the NUMA alignment?
The other option could be that we could setup the VM as a wide/flat vCPU setup of 10sockets and 1core to see if that helps.. But I'm not sure if that would work or the best idea