On the Arcgis Enterprise (10.5, 10.6...) documentation, regarding virtualization
It's recommended that you use a few large virtual machines as opposed to many small virtual machines. For example, a single virtual machine with eight CPUs will perform better than four virtual machines each with two CPUs. If you're configuring failover, high availability, or separate ArcGIS Server sites for separate purposes, follow the recommendation above to determine the size of machines in each site.
I would like to ask if dynamic or static allocation of the vCPU should be take into account when considering this recommendation ? Some architect told me that it's always better to use small virtual machines when the system use dynamic vCPU allocation. One expert from Esri France told me that the performance curve is an asymptote. when you add more vCPU, you gain less. Then it’s not recommend to add to much vCPU.
What is best in term of performance (not failover) having 2 VM with 4cpu or 1 VM with 8 vCPU?
How many ram should be allocated to your vm,. A common rules is to allocate 4Gb for each vCPU. (Some says 3Gb, but 4 should be better to stay under 80%). Are you ok with that rule ?
Here is a great site with lots of information and an example of memory recommendations: Windows Memory Management - GIS Wiki | The GIS Encyclopedia