Acabo de recibir una máquina Host actualizada, y estoy tratando de llevar algunos de esos avances a mis sistemas operativos invitados de estaciones de trabajo. En particular, solía tener un único procesador, con 2 núcleos, por lo que mi sistema operativo invitado solo tenía 1/1.
Ahora, tengo un único procesador con 8 núcleos, así que tengo curiosidad acerca de lo que se recomendaría para mi SO invitado ahora.
- 1 procesador / 4 núcleos?
- 2 procesadores / 2 núcleos?
- 4 procesadores / 1 núcleo?
Mi instinto dice que me quede con la cantidad de procesadores físicos (o menos), pero ¿se basa eso en la realidad? Pasé un buen rato buscando una respuesta a esto, pero quizás mi google-karma no está a mi favor hoy.
cpu
vmware-workstation
reidLinden
fuente
fuente
Respuestas:
En mis propias pruebas, con VMWare Workstation, usando las últimas pruebas de 64 bits de GeekBench 3, en una máquina host con 1 CPU, 2 núcleos (con HT activado, entonces 4 núcleos):
Sistema host:
Virtualizado:
Entonces, al menos en mis pruebas, parece que hay un beneficio al configurar su número virtual de núcleos para que coincida con sus núcleos físicos. Puede ser que esté equivocado. Me encantaría discutirlo.
fuente
No sé si esta información sigue siendo válida, pero en el pasado no hace mucho tiempo, las CPU invitados adicionales no escalaban tan bien como las CPU host. De hecho, la mejor recomendación era quedarse con CPU individuales en sus configuraciones de invitado a menos que estuviera probando / depurando específicamente el software multiproceso en sus invitados y requiriera un entorno SMP.
Editar: esta respuesta es particular a la virtualización de escritorio, no a la virtualización del servidor.
fuente
A lo sumo le doy a mis invitados OS 2 núcleos. No importa si haces 1 procesador 2 núcleos o 2 procesadores 1 núcleo cada uno. La configuración del procesador es por razones de compatibilidad. Los procesadores / núcleos no se escalan tan bien para el sistema operativo invitado debido a la programación del proceso de núcleo / procesador. 2 núcleos parece ser el punto ideal.
fuente
Hay poca diferencia en este punto. En algunos casos, las licencias de software pueden depender de núcleos o CPU.
Esto es solo en un punto de referencia que utiliza todos los núcleos. La mayoría de las aplicaciones no escalan el rendimiento linealmente con el conteo de núcleos, ya que simplemente no usan los núcleos adicionales.
También hay cierto nivel de sobrecarga al agregar más núcleos. En resumen, solo agregue la cantidad de núcleos que su aplicación necesita para desempeñarse en los niveles que necesita. El hecho de que tenga 4 núcleos en su host no significa que todas las máquinas virtuales deben obtener 4 núcleos.
En varios de los entornos que administro tenemos CPU duales de 10 núcleos con un total de 40 hilos lógicos y mis controladores de dominio solo obtienen dos núcleos.
fuente
Estoy bastante sorprendido de que estas preguntas frecuentes no hayan sido respondidas completamente por ahora. Su CPU host debería admitir algunas tecnologías de virtualización, por ejemplo, Intel VTx. Eso le permite "tunelizar" toda la potencia de la CPU en su sistema operativo invitado. De lo contrario, habrá una enorme caída de velocidad debido a la emulación de una CPU. Si tiene una CPU con hyperthreading, debería ver 8 procesadores para una CPU de cuatro núcleos en el administrador de dispositivos de su máquina host (hyperthreading duplica el número de sus núcleos). En ese caso, puede asignar 1 procesador con 4 núcleos para su sistema operativo invitado. Mientras no tenga ningún otro procesador físico en su sistema, no asigne más de 1 procesador a su máquina virtual. Puede asignar más o menos núcleos a su sistema operativo invitado, según sus necesidades, pero no debe t asigne un valor más alto que sus núcleos hyperthreading. Pero tenga en cuenta que su host también necesita algo de potencia de CPU. Por lo general, configuro el número medio de mis núcleos hyperthreading y el número medio de mi memoria, por ejemplo, 8192 MB cuando tienes 16 Gig de RAM. Esta suele ser una buena configuración, pero no si desea ejecutar más de una máquina virtual a la vez.
fuente