Nuevo libro ya a la venta: Descubre y domina VMware vSphere™ 5
 

Categorizados | ESX, ESXi, Intel, Trucos, VMware, vSphere

VMware tips & tricks número 24: el uso de hyperthreading en vSphere

VMware tips & tricks número 24: el uso de hyperthreading en vSphere

VMware vSphere tiene una manera muy “peculiar” de balancear el uso de ciclos de CPU física en un servidor VMware ESX/ESXi y pensé, a raíz de una discusión muy interesante iniciada por un usuario en los foros de VMware, que también te interesaría saber, mi querido lector, lo siguiente:

El VMware VMkernel dinámicamente “migra” las máquinas virtuales de CPU cada 20 milisegundos.

Para máquinas virtuales con múltiples CPU virtuales (vCPUs), el VMkernel intentara por todos los medios no poner más de un ciclo de ejecución de una misma máquina virtual en un mismo core. Sin embargo, con la tecnología hyperthreading habilitada, el scheduler del VMkernel tiene más CPUs que verificar.

El uso de la tecnología hyperthreading, permite convertir un core físico en dos – uno físico y otro lógico -, aunque esta tecnología no garantiza el doble de potencia para las máquinas virtuales, es decir, el escaldo no es lineal. Intel estima una mejora en el rendimiento de un 20%, aunque hay excepciones.

Hyperthreading suele estar deshabilitado en la BIOS del servidor físico. Mas cosas, las tareas del Service Console siempre son ejecutadas en la CPU con el ID número 0. El VMkernel nunca migrara ninguna tarea relacionada con el Service Console a otro core diferente.

Recuerda que en vSphere, una máquina virtual puede tener hasta un máximo de 8 vCPUs y ahora, el número de vCPUs puede ser impar. Aunque la máquina virtual puede usar tanto los cores físicos como los lógicos, el scheduler en VMkernel siempre intentara usar los cores físicos versus los lógicos, y siempre que hyperthreading este activado, obviamente.

Moraleja: un servidor vSphere con hyperthrering activado tendrá la capacidad de ejecutar mas threads simultáneos en paralelo (cpu fisica y cpu logica), por consiguiente, la teoría dice que el rendimiento de la infraestructura virtual seria mayor.

"Suscríbete al blog"
Recibe una actualización directamente en tu bandeja de entrada cada vez que publique un nuevo artículo. Tu dirección de correo electrónico nunca será compartida

Los lectores que leyeron este post, también leyeron:

  1. VMware tips & tricks número 21: Opciones de Clustering en vSphere 4.0
  2. VMware tips & tricks número 25: Identificando las características de tu CPU
  3. VMware tips & tricks número 26: Algunos requerimientos de VMware VMotion
  4. VMware tips & tricks número 20: VMware High Availability(HA) y sus pre-requisitos
  5. VMware tips & tricks número 27: Resource Pools heredados

Este post fue escrito por:

- who has written 687 posts on El Blog de la Virtualización de Servidores y del Cloud Computing en español.

Jose Maria Gonzalez es CEO y fundador de JmG Virtual Consulting, S.L., expertos y líderes en Servicios y Soluciones de Virtualización de Sistemas y Cloud Computing. Puedes ver mas información sobre el en este enlace o contactar con el en twitter, facebook o linkedIn

Contact the author

12 Respuestas a “VMware tips & tricks número 24: el uso de hyperthreading en vSphere”

  1. Jorge Costa says:

    Hay que tomar en cuenta que la mejoras de rendimiento dependen mucho del tipo de aplicación que se ejecuta en las VMs. Incluso ciertas aplicaciones pueden tener un rendimiento menor con HT activado porque muchos recursos del procesador físico se comparten entre los dos procesadores lógicos, entre ellos la memoria caché

    Excelente post Jose Maria

    • Gracias Jorge a ti por tu aportación. Estoy totalmente de acuerdo contigo. Sobre todo si la maquina virtual usa funcionalidades del chip de unidad de coma flotante ;)

      Por cierto, tienes experiencia de algún SO+aplicacion estándar ( Exchange, SQL, Oracle, etc) que usen la unidad de coma flotante de manera excesiva como lo hacen apliaciones como fluent en cluster de alto rendimiento?

      Muchas gracias,
      rgds,
      J.

      Exactametne.

      • Jorge Costa says:

        No me ha tocado ningun caso por el momento :) .Como bien dices, el VMkernel siempre asignará cores fisicos que logicos, con lo cual si se diera el caso de tener estas VMs lo ideal sería que residan en ESX con recursos CPU disponibles o directamente configurar la VM para que no comparta cores con otras VMs (HT Core Sharing Mode = None)

        Gracias a ti por fomentar este tipo de discusiones, así aprendemos todos.

  2. cristiansan says:

    Pero para que haga el motion correctamente tendrá que estar activado el hyperthreading en la Bios de todos los hypervisores no? alguna idea de que podria pasar si unicamente estuviera activo en el hypervisor que corre la máquina y esta cayera? aunque es invisible para el SO, tendría alguna implicación para la VM (algún problema en el motion por ejemplo)?

    • Muy buena pregunta Cristina,

      La velocidad de reloj de la CPU, el tamaño de la cache, el numero de cores y el hyperthreading es “filtrado” por el VMkernel con lo que no necesitan ser iguales en los servidores ESX involucrados en la migracion con vMotion.

      rgds,
      J.

  3. cristiansan says:

    mmm chulo :D gracias Jose Maria… tomo nota :D

  4. VirtualDaniel says:

    Alguien me podria ayudar, tengo un servidor con dos (2) procesadores Intel Xeon 6C Modelo E7530, en total doce (12) cores fisicos, con 48GB de RAM.

    Preguntas:

    Cuantas maquinas virtuales con el SW vSphere Adv. puedo crear por cada Core fisico?

    Cuanto es el numero maximo de maqinas virtuales con sistema operativo server soportado por core fisico?

  5. Jesus Pastor says:

    Hola a todos.

    Me he leido este post y algun articulo mas que hay por internet y la verdad es que no me queda claro si es mejor activar el HT o no.

    En donde yo trabajo tenemos 2 host E5504 y uno algo mas antiguo 5120, todos ellos con 18 GB de RAM. En ninguno de ellos tenemos activado el HT y no sabemos si deberiamos tenerlo o no.

    Que recomendais?

    Un saludo y enhorabuena por la web.

    • Hola Jesus,

      Es mejor tener HT activado que desactivado. Con HT activado tienes una cpu “lógica” mas por cada cpu física. Eso significa que puedes correr dos threads en paralelo, uno en la cpu física y otro en la cpu lógica para un servidor con una sola cpu y HT activado.

      VMware recomienda activar HT en los servidores ESX/ESXi.

      rgds,
      J.

Trackbacks/Pingbacks


Deja un Comentario

iTunes App gratuita del blog virtualización

Sigue el blog Virtualización en Español

Blog Sponsors

Mi Empresa

JmG Virtual Consulting, expertos en Servicios y Soluciones de Virtualización y Cloud Computing

 

Síguenos en FaceBook

Descubre y domina VMware vSphere™ 5

Descubre y domina VMware vSphere™ 5. Por José María González

 

Descubre y domina la nueva versión de VMware vSphere™ 5 y aprovéchate de hasta un 20% de descuento al comprarlo online.

 

Pagame con un Tweet y recibe un capitulo del libro totalmente gratuito ...

Nuevo Site Recovery Manager 4 en español Consigue una copia gratuita del eBook

Nuevo VMware Site Recovery Manager 4 download gratis