MEfoc
Contributor
Contributor

Duda CPU vs CORE

Jump to solution

Hola,

Ayer, comentando con un colega nos surgió una duda:

Yo le comentaba que cuando le asignas dos CPU's a una maquina virtual lo que hace VMWare en realidad es asignarle dos CORES. Es decir que, la limitación de 4 CPU's por maquina virtual de VMWARE en realidad es de 4 Cores. El decía que no que si le asignabas una CPU se la asignas con los cores que tenga la CPU.

Alguien sabe realmente que asigna VMWare, CPU o CORE?

Saludos y Gracias por adelantado.

0 Kudos
1 Solution

Accepted Solutions
jose_maria_gonz
Virtuoso
Virtuoso

Hola,

El VMkernel chequea cada 20ms los procesos que corren en los cores físicos y los migra a otro core si es necesario, es decir, una MV con dos vCPUs en una maquina con dos CPU (dual Core) se ejecutara en todos los corres y el VMkernel moverá el proceso cada 20ms en aquel core que tiene el menor uso. No obstante es posible hacer uso de la funcionalidad de "affinity" y mapear una VM con dos vCPUS a dos cores físicos determinados - esto inválida la funcionalidad de VMotion.

Mi consejo es que pruebes primero con una vCPU en tu MV y tomes un baseline del rendimiento. Luego añade otra vCPU al la MV y ejecuta el mismo test y compara los resultados. Puede ser que el rendimiento sea el mismo!!!!

Saludos,

Jose Maria Gonzalez,

-


VMware vExpert 2009

-


If you find this or any other answer useful please consider awarding points by marking the answer helpful or correct.

!http://feedproxy.google.com/ElBlogDeVirtualizacionEnEspanol.2.gif![http://www.josemariagonzalez.es|http://feedproxy.google.com/ElBlogDeVirtualizacionEnEspanol]

View solution in original post

0 Kudos
7 Replies
Samquejo
Commander
Commander

Puedes asignar hasta 4 vcpu, lo que no hace referencia obligada a 4 cpus físicas, logicas (cores) o de hipertreading.

lo ideal es que cuando una máquina virtual quiera hacer uso de las vcpu que le asignes, caiga cada una a una unidad de proceso física y que la misma unidad no se reparta 2 o mas vcpu a la vez de la misma máquina.

imagina los antiguos P4 HT a 3ghz, esos equipos eran 1 solo micro, con 1 core y 2 unidades de ejecución. Pues bien, daba opción a que el vsmp del esx leyera 2 cpu para ejecución.

teniendo en cuenta las nuevas (o no tan nuevas) tecnologias, un i7 puede tener hasta 4 cores por pastilla con HT, lo que daría 8 micros a presentar, pero es 1 sola pastilla de procesador (cosa muy util a la hora de licenciar un esx).

Espero no haberme enrollado demasiado y resolver tu duda.

saludos

Si esta u otra respuesta es util, por favor marca su correspondiente notificador. Gracias/Regards
MEfoc
Contributor
Contributor

Una pregunta más para ver si acabo de aclararme:

Si le asigno 4 vcpu a una maquina virtual, esta VM se ejecutara en 4 cpus fisicas independientemente de los cores que tenga?

Saludos

0 Kudos
Samquejo
Commander
Commander

No tiene porqué

Si vsmp lo cree conveniente puede asignar (en caso de un hp bl685) cada vcpu a cada pastilla, o bien hacer 22 o 21+1. no me terminé muy bien de enterar como funciona, pero la base es lo que puse arriba.

Saludos

Si esta u otra respuesta es util, por favor marca su correspondiente notificador. Gracias/Regards
0 Kudos
MEfoc
Contributor
Contributor

Te concreto un poco más el porque de la pregunta:

Tengo una aplicación que tiene unos requisitos de 2 CPU's Quad Core Intel Xeon 2x 6 MB Cache, 2,0 Ghz, 133 MHZ FSB. La maquina que tiene el ESX tiene 4 cores de los que pide la aplicación, o que no se es como se ejecutara en ESX.

Saludos.

0 Kudos
Samquejo
Commander
Commander

Prueba a ver si puedes

instalate un ESX en una máquina que no se parezca pero que puedas poner solo para esto.

enchufa el converter al equipo de tu aplicación.

Prueba a ver como va. Si el converter ve mas de 4 cpus en máquina origen, asignará 4 vcpu pero todo esto debes probarlo siempre.

si te funciona, el comercial que ha pasado los requisitos no sabe o te la ha colado. deberia saber si su soft comprueba a nivel físico o logico la cpu.

Saludos

Si esta u otra respuesta es util, por favor marca su correspondiente notificador. Gracias/Regards
0 Kudos
jose_maria_gonz
Virtuoso
Virtuoso

Hola,

El VMkernel chequea cada 20ms los procesos que corren en los cores físicos y los migra a otro core si es necesario, es decir, una MV con dos vCPUs en una maquina con dos CPU (dual Core) se ejecutara en todos los corres y el VMkernel moverá el proceso cada 20ms en aquel core que tiene el menor uso. No obstante es posible hacer uso de la funcionalidad de "affinity" y mapear una VM con dos vCPUS a dos cores físicos determinados - esto inválida la funcionalidad de VMotion.

Mi consejo es que pruebes primero con una vCPU en tu MV y tomes un baseline del rendimiento. Luego añade otra vCPU al la MV y ejecuta el mismo test y compara los resultados. Puede ser que el rendimiento sea el mismo!!!!

Saludos,

Jose Maria Gonzalez,

-


VMware vExpert 2009

-


If you find this or any other answer useful please consider awarding points by marking the answer helpful or correct.

!http://feedproxy.google.com/ElBlogDeVirtualizacionEnEspanol.2.gif![http://www.josemariagonzalez.es|http://feedproxy.google.com/ElBlogDeVirtualizacionEnEspanol]

View solution in original post

0 Kudos
MEfoc
Contributor
Contributor

Gracias

0 Kudos