El título lo dice todo. Me pregunto si esto marca la diferencia en la forma en que las máquinas virtuales procesarán las cosas y si un método es preferible frente a otro.
vmware-esxi
Windows Ninja
fuente
fuente
El objetivo principal de la opción de núcleos / sockets es proporcionar flexibilidad con el software que puede tener requisitos de tiempo de ejecución o de licencia en función del número de sockets "físicos" o núcleos de CPU.
Si bien no hay ninguna diferencia en el rendimiento entre varios núcleos en un socket frente a una combinación de tomas múltiples, existe ES una ligera diferencia en la operación si se habilita o requiere la función de la CPU adición en caliente de la máquina virtual.
Con la función de adición en caliente de la CPU VMware, puede agregar un socket a una VM en ejecución, pero no núcleos adicionales . Por extraño que parezca, esto es algo con lo que me encuentro en la producción en el trabajo y ha influido en la forma en que configuro las nuevas máquinas virtuales.
fuente
En términos generales, hará poca o ninguna diferencia de rendimiento.
Un sistema operativo suficientemente complejo puede alterar su heurística de programación (por ejemplo, mantener subprocesos estrechamente relacionados en los núcleos en el mismo paquete, que con algunos diseños de chips puede aumentar la eficiencia de cómo se usa la caché compartida entre los núcleos) dependiendo de la disposición de los sockets (poblados) y núcleos. En una configuración virtualizada, es probable que cualquier diferencia sea insignificante o se vuelva completamente discutible debido a la forma en que el hipervisor programa el acceso a la CPU para las máquinas virtuales invitadas, a menos que el hipervisor sea bastante inteligente sobre la programación central entre / dentro de las máquinas virtuales también.
Como Dan señala, debe comparar sus tareas (de manera realista: es decir, con otra actividad en el host, no solo en un entorno de prueba donde la VM en cuestión es la única en ejecución) para asegurarse de que múltiples vCores / vCPU / ambos es realmente beneficioso para su desempeño. La forma en que se programa el acceso a los núcleos puede introducir retrasos que eliminan cualquier beneficio y, de hecho, hacen que las cosas sean más lentas en general. el mismo hardware que un número menor de máquinas virtuales multinúcleo (donde "número2 más pequeño incluye uno) (aunque, por supuesto, es probable que imponga una carga de memoria mucho mayor en el host).
fuente