intel_vs_amd1Como vimos en notas anteriores Windows 8 trae Hyper-V, pero para que funcione en nuestro equipo debemos tener uno que soporte Second Level Address Translation (SLAT). Ahora que es esto y como nos afecta? a mi mucho ya que mi equipo no lo soporta, entonces no puedo utilizar Hyper-V.

Second Level Address Translation (SLAT), es una tecnología introducida tanto en los procesadores de Intel como en los AMD. Ambas compañías llaman a su versión con nombres diferentes, la versión de Intel se llama EPT(Extended Page Tables) y AMD llama a los suyos RVI (Rapid Virtualization Indexing).

Intel presentó tablas extendidas de página (EPT) en sus procesadores que fueron construidos con la arquitectura Nehalem, mientras que AMD sólo introdujo RVI en su tercera generación de procesadores Opteron.  Hyper-V utiliza esto para realizar una mayo gestión de las funciones de memoria y reducir los gastos generales de la traducción de las direcciones físicas huéspedes a direcciones físicas.  Al hacer esto, el tiempo de CPU del Hypervisor se reduce significativamente, y más memoria se guarda para cada VM.

Básicamente, el procesador tiene una memoria intermedia de traducción de direcciones (TLB) que soporta la traducción de direcciones de memoria virtual a física.

Un TLB es una caché en el procesador que contiene asignaciones usadas recientemente de la tabla de páginas. Cuando una traducción de una direccion virtual a física es requerida, la TLB comprueba su caché para determinar si contiene o no la información de asignación. Si la TLB contiene una coincidencia, la dirección de memoria física es proporcionada y los datos son de accedidos. Si el TLB no contiene el registro, un error de página se produce, y el Windows comprueba la tabla de páginas para la información de asignación. Si Windows encuentra una correspondencia, se escribe en el TLB, la traducción de direcciones tiene lugar, y luego se accede a los datos. Debido a este buffer, la sobrecarga de lo hypervisors disminuye sustancialmente.

Ahora como verificamos si efectivamente vamos a poder o no ejecutar HyperV en nuestros equipos? Bueno, la solucion es verificar con una utilidad de SysInternals, el CoreInfo si nuestro procesador nos permitira o no utilizarlo.

Coreinfo es una utilidad de línea de comandos que muestra la correspondencia entre procesadores lógicos y el procesador físico, el nodo NUMA, y el zócalo en el que residen, así como la memoria caché asignado a cada procesador lógico. Utiliza la funcion de Windows GetLogicalProcessorInformation para obtener esta información y lo imprime en la pantalla, lo que representa una asignación a un procesador lógico con un ejemplo asterisco ‘*’. Coreinfo es útil para hacerse una idea de la topología de procesador y memoria caché del sistema.

La syntaxis es:

coreinfo [-c] [-f] [-g] [-l] [-n] [-s] [-m] [-v]

  • C Vuelca información sobre núcleos.
  • -F Vuelca información de características básicas.
  • G Volcado de información sobre los grupos.
  • -L Volcar la información en caché.
  • -N Volcar la información en los nodos NUMA.
  • -S Vuelca información sobre sockets.
  • -M Volcado de los costos de acceso NUMA.
  • -V Vuelca sólo los relacionados con la virtualización características incluyendo soporte para la traducción segunda dirección de nivel. (Requiere derechos de administrador en sistemas Intel).
  • Todas las opciones, excepto-V se selecciona por defecto.

Descomprimimos el archivo y ejecutamos una línea de comando, es recomendable ejecutarla con permisos de administrador para no tener problemas con la elevación de permisos.

www.radians.com.ar © 2012

Y ejecutamos CoreInfo.exe –V, y veremos los datos de nuestro equipo. Recordemos que donde hay un * esta presente y si hay un – no cuenta con la característica. Por ejemplo, mi equipo claramente no soporta SLAT – Intel Extended Page Tables.

www.radians.com.ar © 2012

Por lo que lo ideal seria que nos mostrara algo así:

www.radians.com.ar © 2012

En un equipo AMD, no tengo uno cerca ahora como para hacer la captura, veríamos lo mismo pero referido a su tecnología, es decir:

  • Supports AMD hardware-assisted virtualization
  • Supports AMD nested page tables

Espero que les sea de interés y utilidad. En mi caso, tendré que cambiar el equipo. Les dejo los links de descarga. Saludos, Roberto Di Lello.

Mas Información:

Avatar photo

By Roberto Di Lello

Hola, soy Roberto Di Lello trabajo como Consultor Senior en Infraestructura, especializado en Tecnologias Microsoft con mas de 25 años en la industria. He sido galardonado como MS-MVP en Active Directory-Enterprise Mobility por 10 años, y actualmente soy MVP Windows Insider, ademas de poseer otras certificaciones de Microsoft. He trabajado en distintos projectos que involucran Migraciones, Implementaciones, y soporte de Active Directory y Microsoft Exchange, y en los ultimos años me he desempeñado armando equipos de trabajo para diferentes paises y areas de sistemas, he planificado a distintas migraciones a datacenters (ambiente cloud y mixtos). He tenido la oportunidad de participar como miembro del staff de Microsoft en eventos internacionales como ser TechEd NorteAmerica y MS Ignite (NA) al ser Trainer Certificado por Microsoft (MCT).

4 thoughts on “Hyper-V en Windows 8 y el tema del SLAT. Que es eso y como nos afecta?”
  1. Gracias por tu ayuda, en mi caso tampoco pude usar Hyper-V pero gracias a tu excelente explicación ahora se porque…!!! Gracias…!!!

  2. Carlos Gonzalez P, muchas gracias por comentar y participar. Disculpa mi demora en contestar pero estoy poniendome al dia con todos los mails y consultas via Web que tengo pendientes.

    Aprovecho la oportunidad para agradecerte por participar del blog y ayudar a que siga creciendo! Te pido que difundas la direccion del mismo asi podeos llegar a mas gente. Te cuento que hay mucho material en el. Te invito a que veas los labs, videos, tutoriales, notas. Si querés buscar un tema o necesitas ayuda, tenés la solapa AYUDA donde explico un poco como hacerlo, sino también tenés el buscador de google.

    Saludos y gracias!

Comments are closed.