VMware Global Community
alexperez
Contributor
Contributor

¿VT o AMD-V son imprescindible?

Por lo que he leido no es un requerimiento para la instalación del ESX que la CPU tenga soporte VT o AMD-V, y aunque el rendimiento se verá mermado, ¿alguien lo tiene funcionando en micros no VT?

Reply
0 Kudos
19 Replies
josep_ros
Enthusiast
Enthusiast

Efectivamente Álex,

No es obligatorio pero sí altamente recomendable. Si no tienes VT:

1. No puedes ejecutar VM de 64 bits.

2. No tienes la velocidad extra en todas las VM que proporciona VT.

Yo tengo algunos ESX en CPU sin VT, se trata de diferentes CPU Xeon de diferentes subfamilias.

Saludos

http://josepros.blogspot.com
Reply
0 Kudos
FMorales
Contributor
Contributor

Hola, OJO el uso de las caracteristicas y propiedades de las instrucciones de nueva generacion VT NO aumentan el rendimiento de los ESX, maquinas virtuales ...etc etc,

vmware lo ha introducido como mera opcion para que la gente de xen y otras empresas que empiezan a virtualizar no se agarren al echo de que vmware no soporta VT.

La realidad es que los algoritmos software de planificacion de tareas, y reparto de carga entre microprocesadores de vmware FUNCIONAN MUCHO MEJOR SIN VT, QUE CON VT, ya

que dichos algoritmos software están mucho mejor hechos a dia de hoy que la propia implementacion de Intel y Amd en sus procesadores.

Es por eso que vmware no recomienda habilitar VT ... por el momento si no es absolutamente necesario (VM 64...)

Vamos que ellos hacen por software mucho mejor, lo que por hardware aun esta verde.

Un saludo

Francisco Morales López de Gamarra Vmware VCP | LPI - CCNA
Reply
0 Kudos
vmwareuser2009
Contributor
Contributor

hola yo tenia mucha dudas de si VMWARE WORKSTATION soportaba esas tecnologia, yo se que virtualpc y virtualbox lo soportan pero no estaba seguro de vmware.

en pocas palabras soporta vwmare workstation las tecnologias de AMD-V?? si o no???

Saludos, que bueno saber que hay una comunidad hispanopartalante

Reply
0 Kudos
FMorales
Contributor
Contributor

Si, lo soporta, es la llamada paravirtualización, pero como he comentado antes .... actualmente casi por regla general decrementa el rendimiento

de las maquinas virtuales en lugar de aumentarlo.

Un saludo

Francisco Morales López de Gamarra Vmware VCP | LPI - CCNA
Reply
0 Kudos
vmwareuser2009
Contributor
Contributor

bueno, justamente eh desactivado AMD-V desde el BIOS por temor a perder performance en mi maquina virtual

saludos

Reply
0 Kudos
asolana
Enthusiast
Enthusiast

No mezclemos conceptos. Una cosa no tiene nada que ver con la otra ni es real tal cual se ha expresado el tema de pérdida de rendimiento.

Todo está relacionado con la arquitectura Intel de procesadores que fundamentalmente utilizaba dos niveles de privilegio en la ejecución de instrucciones. Nivel 0 o kernel -instrucciones de mayor nivel de privilegio propias del sistema operativo.

Nivel 3 o de aplicación o usuario. Instrucciones que permite la ejecución de una aplicación.

Al virtualizar introducimos una nueva necesidad.... Donde ejecutamos el hipervisor? En que nivel?

Han surgido distintas tecnologías que tratan de resolver esta problemática:

Virtualización transparente o traducción Binaria. El sistema operativo no es consciente de ejecutar en un entorno físico o virtual. Y el hipervisor en el nivel 0, se encarga de capturar las instrucciones privilegiadas del Sistema Operativo (en teoría ahora en nivel 1) para garantizar que se ejecutan en el nivel 0 que le corresponde.

Paravirtualización: hacer consciente al sistema operativo de que ejecuta en un entorno virtual introduciendo el conjunto de instrucciones paravirt_ops a nivel de kernel de sistema operativo para que ejecute cada instrucción en el nivel que le corresponde. O bien a nivel de drivers de dispositivos.

Intel VT y AMD-V por reducir la explicación introducen un nivel ROOT que será donde ejecute el hipervisor, y de esta manera aseguramos que el sistema operativo ejecuta en nivel 0. No es que esta tecnología implique pérdida de rendimiento, todo depende del coste o peaje en los cambios de contexto o llamadas exit entre un nivel 0 y el ROOT.

Espero que aclare un poco los conceptos.

Un saludo.

Sorry for the brevity, sent from my handheld.

Alejandro.

Reply
0 Kudos
asolana
Enthusiast
Enthusiast

Por cierto, el rendimiento final de una alternativa frente a la otra dependerá de la frecuencia de las llamadas al sistema que se realicen en ese determinado entorno. Lo fundamental es conocer las implicaciones de cada una para optar por la alternativa más conveniente.

Sorry for the brevity, sent from my handheld.

Alejandro.

Reply
0 Kudos
vmwareuser2009
Contributor
Contributor

gracias por la explicacion, ahora para hacerlo simple. Si mis intenciones es obtener el mejor rendimiento de mi maquina virtual que deberia hacer "activar" o "desactivar" la vritualizacion por hardware,digo el AMD-V en enable o disable, esa es mi duda

saludos

Reply
0 Kudos
asolana
Enthusiast
Enthusiast

La verdad es que, sin mucho detalle sobre la VM, yo haría directamente la prueba aunque sólo fuera por curiosidad. Arrancaria la VM con AMD-V habilitado y deshabilitado y comparariá el resultado.

Sorry for the brevity, sent from my handheld.

Alejandro.

Reply
0 Kudos
FMorales
Contributor
Contributor

Hola, como he comentado antes, el rendimiento es siempre menor actualmente.

Un saludo

Francisco Morales López de Gamarra Vmware VCP | LPI - CCNA
Reply
0 Kudos
jlmedina1
Enthusiast
Enthusiast

A ver... como dice el gran Alejandro Solana, no mezclemos churras con merinas. VT sólo es necesario, actualmente, para que un host Intel ejecute VM de 64 bits, y esto viene dado por la manera cuando menos curiosa que Intel tiene de implementar los 64bits. VT sólo le da capacidades extras al procesador para entornos virtuales (consultad http://bevirtual.blogspot.com/search/label/Virtualizaci%C3%B3n%20asistida) Yo, personalmente, aunque soy un chico Opteron, he hecho más de un a prueba con host Intel, con o sin VT habilitadas, y no he observado diferencial de rendimiento. VT no ayuda en nada a ESX, ya que no necesita usar extensiones VT (a diferencia de Hyper-V o Xen) para virtualizar. Los fabricantes de chips (AMD e Intel, y especialmente esta última) hacen incapié en estas capacidades como argumento de marqueting. De hecho, y está demostrado, el "cambio de mundos", es decir, el switching entre una VM y otra es más lento utilizando VT que cuando lo haces por software (VMware way). Otra cosa es que comparemos un Xeon de generaciones anteriores que NO implemente VT con un Xeon más actual.... efectivamente el procesador es más rápido. Haced vuestras pruebas y veréis que, bajo ESX, no hay diferencia.

Un saludo.

---- J.L. Medina - vExpert'09 http://bevirtual.blogspot.com
Reply
0 Kudos
vmwareuser2009
Contributor
Contributor

Antes que nada quiero agradecerles la ayuda y comentarios que hacen ya que esto es muy importante para mi y tuve muchas dudas. Me eh creido todo el marketing de AMD e INTEL con respecto a la virtuallización por hard que ellos ofrecian.

Ahora les cuento que en VMWARE e logrado ver que trabaja mejor con las amd-v, desactivadas pero???.... VMWARE por defecto tiene desactivado las extenciones amd-v y hay que usar este codigo en la configuración de la maquina para poder usarlas:

monitor_control.enable_svm= "TRUE"

VMWARE no tiene ninguna opcion que diga o permita activar las AMD-V por lo que asumo que vienen desactivadas por defecto. Osea, VMWARE no las utiliza y hay que configurarlas manualmente en el archivo de configuración de cada maquina virtual.

Comparado con VIRTUALBOX que si tiene la posibilidad de activar o desactivar dichas opciones de la configuración global o por maquina, eso es muy útil. Ademas VIRTUALBOX es mas rapido que VMWARE pero no tan flexible como VMWARE....

Bueno me podrian aclarar si en VWMARE la opcion AMD-V viene desactivada por defecto.

lean esto

Finally, if you have an Intel VT powered CPU or an AMD SVM (or AMD-V) powered CPU you have to add to your .vmx file one of the following entries to improve performances:

    • monitor_control.vt32 = "TRUE" or*

  • * monitor_control.enable_svm = "TRUE"*

el link

http://www.virtualization.info/2007/06/tech-how-to-run-esx-server-3-on-vmware.html

Saludos.

Reply
0 Kudos
jlmedina1
Enthusiast
Enthusiast

Vamos a ver... la opción que me comentas creo que es para VMware workstation, no para ESX. Creo (que me corrija quien sepa) que Workstation soporta Paravirtualización, y por eso incluye estas opciones. ESX sólo utiliza VT en plataformas Intel para ejecutar 64 bits. Por el momento, ESX no utiliza en AMD cosas como el TTLB y demás (el gran Alejandro me corrija, please). ESX no soporta kernels paravirtualizados.

---- J.L. Medina - vExpert'09 http://bevirtual.blogspot.com
Reply
0 Kudos
vmwareuser2009
Contributor
Contributor

Agregando monitor_control.enable_svm = "TRUE" la performance de la maquina virtual en vwmare workstation es horrible.

No agregandolo mejora muchisimo...

Agregando monitor_control.vt32 = "TRUE" la performance parece mejorar o igual que no agregando nada de lo anterior. Lo que no entiendo es que significa esa linea, acaso con eso activo la paravirtualization????. De todas formas VMWARE WORKSTATION soporta paravirtualizacion..??? y de ser si, como la activo... con alguna de esas lineas???

--

Los que tiene micros amd deberian agregar monitor_control.enable_svm = "TRUE", los que tienen micro intel la segunda opcion. Lo cierto es que la performance es horrible asi que no vale la pena agregar dichas opciones al vmware. Por lo menos eh llegado a esa conclusion: EN VMWARE WORSTATION NO DEBEMOS ACTIVAR LAS EXTENCIONES AMD-V PORQUE NO MEJORAN LA PERFORMANCE EN LO ABSOLUTO. En otros productos como VirtualBOX, no se si hace falta, la opcion esta y no es posible medir sus mejoras ya que parece inpercetible ver algo estando activada o no.

Saludos.

Saludos.

Reply
0 Kudos
jlmedina1
Enthusiast
Enthusiast

Uhm.

Una cosa son las extensiones de virtualización HW (Que es lo que activamos al usar el monitor_control.enable_svm en AMD o monitor_control.vt32 en Intel), otra la paravirtualización en Workstation mediante VMI, y otra el rendimiento de una VM. El uso de las extensiones de virtualización NO SUPONE, per sé, un aumento de rendimiento. Sólo damos soporte a otro método por el cual el hypervisor maneja los diferentes "worlds" o VM. No tiene nada quever con el rendimiento. Lo que sí permite es el uso de máquinas de 64 bits en entornos Intel (por aquello de que los procesadores Intel no son de 64 bits puros e implementan las x64 Extensions) y el funcionamiento de determinados entornos operativos que no llevan "bien" el ejecutarse fuera del ring 0 del procesador. Según este documento (y cito):

"When you power on a virtual machine with a 64-bit guest operating system, Workstation
+ + performs an internal check: if the host CPU is not a supported 64-bit processor, you cannot++
+ + power on the virtual machine.++
+ + VMware also provides this standalone processor check utility, which you can use without++
+ + Workstation to perform the same check and determine whether your CPU is supported for++
+ + virtual machines with 64-bit guest operating systems.++
+ + Note: On hosts with EM64T VT-capable processors, you may not be able to power on a 64-bit++
+ + guest, even though the processor check utility indicates that the processor is supported for 64-++
+ + bit guests. VT functionality can be disabled via the BIOS, but the processor check utility cannot++
+ + read the appropriate model-specific register (MSR) to detect that the VT functionality has been++
+ + disabled in the BIOS.++ "

Respecto a la paravirtualización, se basa en que el sistema operativo guest sea consciente de que está siendo virtualizado, y permita, de modo transparente, el ejecutarseen otro ring distinto del 0. VMware Workstation soporta la especificaciín VMI (Virtual Machine Interface) diseñada por VMware y ya soportada (creo) por los kernels de linux.Esto, en ningún caso, es aplicable a los Sistemas Operativos de Microsoft (No hay un Windows Vista Paravirtualized Edition.... ¿o sí?)

En resumen:

  • Las extensiones VT en VMware Workstation NO TIENEN porqué suponer un incremento de rendimiento y sí cierta penalización (en especial si usamos los parámetros de AMD en Intel y viceversa)

  • Las necesitaremos si queremos ejecutar VM de 64 bits en entornos Intel

  • La paravirtualizaciónsólo aplica a kernels linux con soporte VMI - Corrección: La paravirtualizaión completa o virtualización transparente. Los drivers de VMware (VMware Tools) son drivers paravirtualizados....

Espero haber sido de ayuda.

---- J.L. Medina - vExpert'09 http://bevirtual.blogspot.com
Reply
0 Kudos
vmwareuser2009
Contributor
Contributor

Bueno agradezco la respuesta, ahora todo esta mas claro. Yo actualmente uso Vista x64, tal vez vuelva a xp 64, y trataba de buscar la mejor performance para una maquina virtual. Hace mucho usaba los productos vmware, hasta la version 5 ofrecian un rendimiento, optimo tanto en el host como en el guest, ocea era mas rapido. La version 6 no lo es, es lenta a comparación de su antecesora. Tanto con amd-v activado o desactivado la performance es inferior a que usar otras alternativas como VirtualBox.

La gente de vmware no es claro en su postura de las extensiones amd-v, por lo menos yo lo aprecio asi. Vmware intenta decir "si pero no" y termina en una notable confusión.

Ahora hay mas alternativas donde siempre uno se veia obligado a utilizar Vmware, ahora ya no. VirtualBox es una excelente alternativa, rapida, estable y confiable tanto a nivel host como guest asi que desde ahora no creo que vuelva a usar productos vwmare, no los necesito pero si rescato su alto nivel de configuración a nivel redes y hardware virtualizado, pero que puedo decir es lento a comparación de virtual box.

Saludos y gracias por sacarme las dudas.

Reply
0 Kudos
asolana
Enthusiast
Enthusiast

Buenas noches,

Espero que este hilo te ayude a salir de dudas. Lo bueno de la virtualización es que permite plantearse multitud de posibilidades y que todos ellas son igual de válidas. Y el hecho de que existan más alternativas hoy en día, no hace otra cosa que elegir libremente la opción que mejor nos encaje.

Realmente viendo tu objetivo de "obtener el mejor performance para una máquina virtual" sin más, mi primera pregunta sería... Si ese es el único objetivo... ¿realmente cuál es el objetivo que te planteas con la virtualización?

Posteriormente, te preguntaría ¿qué es lo que quieres virtualizar? Y ¿sobre qué hardware y sistema operativo? Y trataría de proporcionarte la mejor alternativa.

Respecto a la afirmación de que VMware no es clara en su postura, lamento tener que puntualizar que realmente mi opinión es totalmente opuesta. VMware es consciente de que existen múltiples tecnologías disponibles y cada una se adapta mejor a determinados contextos. De ahí que haya incluido el soporte a todas ellas en sus productos, para poder disponer de la mejor alternativa en cada contexto, obteniendo el mejor rendimiento para el mayor número de entornos posibles. Básicamente se trata de conocer las alternativas, su aplicación y la configuración más adecuada para obtener la mejor solución.

Coincido contigo en que VirtualBox es una solución interesante, y si simplemente se trata de ejecutar un única máquina virtual puede ser igual de válida que VMware Player. Ahora, comparando VirtualBox vs. VMware Workstation ahí hay multitud de razones para seguir eligiendo Workstation, una de ellas por supuesto el rendimiento, además de la configuración de redes y hardware virtualizado que comentas, pero hay muchas más. Google ahí te puede ayudar mucho, que no se trata de convertir este hilo en una campaña de marketing. Smiley Happy

Reply
0 Kudos
asolana
Enthusiast
Enthusiast

Vamos a ver... Creo que vmwareuser2009 está fundamentalmente más focalizado en el contexto de Vmware Workstation.

En los siguientes enlaces pueden ser de sumo interés para resolver las dudas que estamos comentando respecto a los conceptos de Paravirtualización, Hardware Assist y Virtualizacion Transparente o Traducción Binaria, y la idoneidad de unos frente a otros:

Diferentes alternativas de Virtualización: http://www.vmware.com/resources/techresources/1008

Posibilidades de Tuning en Workstation: http://www.vmware.com/pdf/WS6_Performance_Tuning_and_Benchmarking.pdf

Tanto Workstation como ESX soportan Paravirtualización via VMI.

Respecto a ESX en versión 3.5 se incluyó soporte a:

Support for hardware nested page tables such as AMD's Rapid Virtualization. Indexing®.

Support for large memory pages

Más info: http://www.vmware.com/files/pdf/esx_datasheet.pdf

En el update 2 de VI 3 se ha incluido mayor soporte a los interfaces de Intel VT y AMD-v y el Enhanced vMotion es prueba de ello:

http://blogs.vmware.com/vi/2008/08/interesting-ite.html

Y ahí seguimos, incorporando nuevas tecnologías paulatinamente Smiley Happy

Reply
0 Kudos
vmwareuser2009
Contributor
Contributor

muchas gracias..... excelente nivel de informacion que manejan.

ahora veo que la virtualizacion no es tan solo instalar un software que dice que hace eso... y listo.... hay muchisimas cosas de por medio y si la empresa pionera dice lo que dice es porque sabe lo que hizo y hace.

Bueno...trate de instalar vwmare 5.5 pero no pude asi que tuve que volver a la 6.0.4 desactive el amd-v por bios y puedo comprobar los resultados.

saludos

Reply
0 Kudos