GPU virtual y virtualización de GPU: vGPU, MIG y Passthrough
La virtualización de GPU comprende tres enfoques principales: con GPU Passthrough, una GPU física completa se asigna en exclusiva a una única máquina virtual (VM). Las soluciones de GPU virtual (vGPU), en cambio, permiten compartir los recursos de una GPU entre varias VM mediante mecanismos de virtualización y planificación. En las configuraciones basadas en time slicing, el tiempo de procesamiento de la GPU se distribuye entre las distintas VM. Multi-Instance GPU, o MIG, divide las GPU de NVIDIA compatibles en instancias de hardware independientes y aisladas entre sí.
Resumen
Los puntos clave de la virtualización de GPU de un vistazo:
- GPU Passthrough: asigna una GPU física completa en exclusiva a una única VM — máximo rendimiento, pero sin uso compartido.
- GPU virtual (vGPU): reparte una GPU entre varias VM mediante time slicing y planificadores — mejor aprovechamiento, aunque con un aislamiento solo lógico.
- Multi-Instance GPU (MIG): divide las GPU de NVIDIA compatibles a nivel de hardware en hasta siete instancias aisladas con recursos fijos.
- Límites técnicos: Passthrough restringe la migración en vivo, vGPU requiere licencia y es sensible al efecto de vecino ruidoso, y MIG no permite aprovechar la capacidad libre de otro perfil.
- Cómo elegir: Passthrough para una única VM que necesita toda la GPU, vGPU para muchos usuarios con necesidades moderadas, y MIG o vGPU respaldada por MIG para cargas de IA, inferencia y HPC con rendimiento predecible.
La GPU como recurso de cálculo clave en el centro de datos
Gracias al entrenamiento de IA, la inferencia y la computación de alto rendimiento (HPC) acelerada por GPU, las GPU se han convertido en un recurso de cálculo fundamental en los centros de datos modernos. Lo que antes se utilizaba principalmente para gráficos, renderizado o aplicaciones especializadas, hoy suele ser determinante para el rendimiento de plataformas completas.
Sin embargo, proporcionar recursos de GPU de forma eficiente en entornos virtuales es más complejo que en las cargas de trabajo de CPU. Las GPU trabajan de forma masivamente paralela, disponen de memoria propia de alta velocidad, como VRAM o HBM, y están estrechamente integradas en el sistema mediante PCIe, además de controladores y entornos de ejecución específicos del fabricante. Por este motivo, sus recursos no pueden compartirse con la misma flexibilidad que los núcleos de CPU o la memoria RAM.
En la práctica, se han consolidado tres enfoques principales:
- GPU Passthrough exclusivo: una GPU física completa se asigna a una única máquina virtual.
- Soluciones de GPU virtual (vGPU): varias máquinas virtuales comparten los recursos de una GPU mediante mecanismos de virtualización, controladores y el hipervisor.
- Multi-Instance GPU (MIG): las GPU de NVIDIA compatibles se dividen a nivel de hardware en instancias de GPU independientes con recursos asignados.
Estos métodos se diferencian principalmente en la forma en que se asignan o comparten los recursos y en el grado de aislamiento que existe entre las distintas cargas de trabajo.
| Tecnología | Nivel de aislamiento | Sobrecarga | Escalabilidad | Requisitos |
|---|---|---|---|---|
| GPU Passthrough / asignación de dispositivo PCIe | Asignación exclusiva de una GPU física completa a una única VM | Muy baja, ya que la VM accede directamente a la GPU y puede utilizar controladores nativos | Baja, porque la GPU no puede ser utilizada simultáneamente por otras VM mientras está asignada | La GPU, la plataforma y el hipervisor deben ser compatibles con PCIe Passthrough o DDA |
| GPU virtual (vGPU) | Aislamiento lógico mediante perfiles de vGPU, controladores y mecanismos de planificación | Moderada en configuraciones basadas en time slicing, debido al reparto del tiempo de procesamiento entre varias VM | Alta, ya que varias VM o usuarios pueden utilizar la misma GPU física | GPU compatible, hipervisor compatible, gestor de vGPU, controladores del sistema invitado y licencia adecuada |
| Multi-Instance GPU (MIG) | Aislamiento a nivel de hardware mediante particiones fijas de GPU con recursos propios de cálculo y memoria | Muy baja dentro de la instancia asignada, ya que los recursos están particionados de forma fija | Media a alta, según el modelo de GPU, el tamaño de los perfiles y el número máximo de instancias | GPU de NVIDIA compatible con MIG; para asignar instancias MIG a distintas VM se requiere una configuración MIG-backed vGPU compatible. |
- GPUs NVIDIA H200 para máxima potencia de cálculo
- Rendimiento garantizado gracias a núcleos de CPU totalmente dedicados
- Alojamiento 100% en Europa para la máxima seguridad de los datos y cumplimiento de la RGPD
- Modelo de precios sencillo y calculable con precio fijo por hora
GPU Passthrough: asignación directa de GPU a una VM
Con GPU Passthrough, una GPU física completa se asigna de forma exclusiva a una única máquina virtual. De este modo, la VM obtiene acceso directo a la GPU y puede utilizarla prácticamente como si estuviera conectada directamente a un sistema físico.
Según la plataforma, este procedimiento recibe distintos nombres:
- Microsoft Hyper-V: Discrete Device Assignment (DDA)
- VMware vSphere/ESXi: VMDirectPath I/O o PCI Passthrough
- Linux/KVM: PCI Passthrough mediante VFIO
Técnicamente, este acceso directo se basa en la IOMMU (Input-Output Memory Management Unit), que en las plataformas Intel suele denominarse VT-d y en las de AMD, AMD-Vi. La IOMMU controla y aísla los accesos directos a memoria (DMA) de los dispositivos, de modo que la GPU solo pueda acceder a las áreas de memoria que le corresponden. Así, la VM puede utilizar el controlador nativo del fabricante, es decir, el mismo tipo de controlador que emplearía en un sistema físico.
Ventajas e inconvenientes de GPU Passthrough
La principal ventaja de este enfoque es su rendimiento muy elevado. Como la GPU se asigna directamente a la VM y no tiene que compartirse mediante una capa adicional de virtualización, el rendimiento puede situarse, según la carga de trabajo, muy cerca del obtenido directamente sobre hardware físico.
La principal desventaja es la falta de flexibilidad: una GPU asignada mediante Passthrough queda reservada para una única VM. Ninguna otra VM puede utilizarla simultáneamente, aunque la máquina virtual a la que está asignada solo necesite una pequeña parte de su capacidad de cálculo o memoria.
Limitaciones técnicas de GPU Passthrough
El alto rendimiento de GPU Passthrough conlleva algunas limitaciones prácticas, derivadas principalmente de la asignación exclusiva de la GPU a una única VM:
- Sin uso compartido simultáneo de recursos: una GPU física se asigna de forma exclusiva a una VM. La capacidad que no se utiliza no puede asignarse dinámicamente a otras VM.
- Baja eficiencia con cargas de trabajo pequeñas: para escritorios virtuales, inferencia ligera u otras tareas poco exigentes, dedicar una GPU completa suele suponer un aprovechamiento ineficiente de los recursos.
- Movilidad limitada de la VM: al estar vinculada directamente a una GPU física, algunas funciones de virtualización pueden dejar de estar disponibles o verse considerablemente limitadas. Dependiendo de la plataforma, esto puede afectar a la migración en vivo, los snapshots y las funciones de guardar y restaurar. En determinados entornos de clúster puede ser posible reiniciar automáticamente la VM en otro host tras un fallo, pero esto no equivale a una migración en vivo.
- Dependencia de la plataforma y de la IOMMU: el host debe ser compatible con PCIe Passthrough. Esto requiere, entre otras cosas, extensiones de virtualización de E/S como Intel VT-d o AMD-Vi y una configuración PCIe/IOMMU adecuada. En Linux/KVM también es importante que los dispositivos que se van a asignar estén correctamente aislados a través de la IOMMU.
- Dependencia del hardware, el software y los controladores: no todas las GPU, placas base ni versiones de hipervisor ofrecen el mismo nivel de compatibilidad con Passthrough. En entornos de producción conviene comprobar siempre las listas de compatibilidad de hardware y los requisitos de controladores del fabricante.
GPU virtual (vGPU)
La GPU virtual resuelve una de las principales limitaciones de GPU Passthrough: una GPU física ya no tiene que asignarse en exclusiva a una única VM, sino que puede compartirse entre varias máquinas virtuales.
Para ello, en el host se utiliza un componente específico de virtualización de GPU, como NVIDIA Virtual GPU Manager. Este se ejecuta en el hipervisor correspondiente, por ejemplo, VMware vSphere/ESXi, Linux/KVM o XenServer, y proporciona a las VM dispositivos de GPU virtual. En cada máquina virtual se instala además el controlador NVIDIA vGPU correspondiente.
En las configuraciones clásicas de vGPU, el uso compartido se basa principalmente en el reparto temporal o “time slicing”. Esto significa que la GPU no se divide de forma permanente en particiones de hardware fijas, sino que sus recursos de cálculo y gráficos se comparten en el tiempo entre las distintas VM. Las cargas de trabajo se ejecutan por turnos y en intervalos muy breves sobre la misma GPU física.
Cada VM recibe, mediante un perfil de vGPU, una cantidad determinada de memoria de framebuffer. Estos perfiles definen, entre otras cosas, cuánta memoria de GPU tiene disponible una VM y para qué tipo de carga de trabajo está pensado el perfil. Algunos ejemplos son:
- Perfiles Q para estaciones de trabajo virtuales
- Perfiles B para escritorios virtuales
- Perfiles A para aplicaciones virtuales y streaming de aplicaciones
- Perfiles C para cargas de trabajo de cálculo
En las vGPU basadas en time slicing, la capacidad de cálculo no se divide físicamente en partes fijas, sino que se distribuye mediante un planificador. NVIDIA ofrece, entre otras, las políticas Best Effort, Equal Share y Fixed Share:
- Best Effort permite utilizar la GPU de la forma más flexible posible, pero puede provocar diferencias de rendimiento cuando las cargas de trabajo fluctúan mucho.
- Equal Share y Fixed Share proporcionan, respectivamente, un reparto más uniforme o más fijo del tiempo de GPU.
Ventajas e inconvenientes de la GPU virtual (vGPU)
La principal ventaja de la GPU virtual es que permite aprovechar mucho mejor el hardware. Varias VM pueden compartir una GPU de alto coste en lugar de necesitar una tarjeta dedicada para cada una. Esto resulta especialmente útil para escritorios virtuales, estaciones de trabajo CAD, entornos de renderizado, inferencia ligera de IA y otras cargas que no utilizan de forma continua toda la capacidad de una GPU.
En las vGPU basadas en time slicing, la principal desventaja frente a MIG es que los recursos de cálculo se comparten temporalmente entre varias VM en lugar de estar divididos en particiones de hardware dedicadas. Aunque cada vGPU dispone de memoria asignada y existen mecanismos de aislamiento, varias cargas intensivas que se ejecuten al mismo tiempo pueden competir por el tiempo de procesamiento de la GPU.
Limitaciones técnicas de la GPU virtual (vGPU)
La GPU virtual (vGPU) ofrece mucha más flexibilidad para compartir una GPU, pero también implica una mayor complejidad operativa y, en las configuraciones basadas en time slicing, un aislamiento del rendimiento menor que el de una partición MIG dedicada:
- Licencia necesaria: NVIDIA vGPU es una solución sujeta a licencia. Dependiendo del tipo de vGPU y del caso de uso, pueden utilizarse productos como NVIDIA RTX Virtual Workstation (vWS), NVIDIA Virtual PC (vPC), NVIDIA Virtual Applications (vApps) o NVIDIA AI Enterprise para cargas de cálculo. Si una vGPU que requiere licencia no obtiene una licencia válida dentro del periodo de gracia correspondiente, puede pasar a funcionar con capacidad reducida.
- Posible efecto de vecino ruidoso (noisy neighbor): en las vGPU basadas en time slicing, varias VM comparten los ciclos de procesamiento de la GPU. Por tanto, una carga especialmente intensa puede afectar al rendimiento de otras vGPU alojadas en la misma GPU. Las políticas Equal Share o Fixed Share permiten controlar mejor este reparto, pero no equivalen a una partición de hardware dedicada.
- Necesidad de controladores compatibles: NVIDIA Virtual GPU Manager en el host y el controlador vGPU del sistema invitado deben encontrarse dentro de las combinaciones de versiones compatibles definidas por NVIDIA. No siempre tienen que ser exactamente de la misma versión, pero una combinación no compatible puede impedir que la vGPU funcione correctamente.
- Mayor complejidad operativa: la GPU virtual requiere coordinar la GPU compatible, el hipervisor, NVIDIA Virtual GPU Manager, el controlador del sistema invitado, el sistema de licencias y la configuración de los perfiles. Por ello, su administración y actualización son más complejas que las de GPU Passthrough.
- Sobrecarga derivada de la planificación: en las vGPU basadas en time slicing, el tiempo de procesamiento de la GPU se distribuye entre varias máquinas virtuales y se producen cambios de contexto. En muchas cargas de trabajo este efecto es asumible, pero puede influir en escenarios especialmente sensibles a la latencia o que requieren un rendimiento muy predecible.
- Sin partición física de los recursos de cálculo como en MIG: las vGPU clásicas basadas en time slicing comparten temporalmente los recursos de cálculo de la GPU. Si necesitas recursos dedicados y separados mediante particiones de hardware, puedes recurrir a MIG o, cuando la plataforma y la GPU sean compatibles, a vGPU respaldadas por MIG (MIG-backed vGPU).
Multi-Instance GPU (MIG)
La tecnología Multi-Instance GPU, abreviada como MIG, sigue un enfoque diferente al de los modelos clásicos de GPU virtual basados en time slicing. NVIDIA introdujo Multi-Instance GPU con la arquitectura Ampere, entre otras, con la A100. Desde entonces, MIG se ha extendido a determinadas GPU para centros de datos y GPU profesionales. Por ello, esta tecnología resulta especialmente relevante en centros de datos donde varias cargas de trabajo de IA, inferencia o HPC deben ejecutarse simultáneamente en una única GPU. En lugar de compartir temporalmente los recursos de la GPU entre varias cargas de trabajo, el hardware se divide en particiones con recursos dedicados. Cada instancia recibe así una parte definida de la capacidad de cálculo, la memoria y el ancho de banda de memoria.
En las GPU Blackwell más recientes, NVIDIA amplía las posibilidades de MIG. Con Universal MIG, determinados perfiles de la RTX PRO 6000 Blackwell admiten también cargas de trabajo gráficas en instancias MIG aisladas. De este modo, en estas GPU MIG deja de estar limitado exclusivamente a escenarios de cálculo, inferencia y HPC.
Según el modelo, una GPU física puede dividirse en varias instancias de GPU independientes. En numerosas GPU para centros de datos son posibles hasta siete instancias, aunque otros modelos admiten menos. Cada instancia recibe recursos de hardware asignados:
- Streaming Multiprocessors
- Segmentos de memoria
- Ancho de banda de memoria
- Porciones de caché L2
- Rutas de datos a través del sistema de memoria
El tamaño de una instancia se define mediante perfiles predefinidos. En una NVIDIA A100 con 40 GB de memoria, por ejemplo, existen perfiles como 1g.5gb, 2g.10gb o 7g.40gb. El primer valor indica la proporción de recursos de cálculo asignados y el segundo, la cantidad de memoria. Así, un perfil como 1g.5gb representa una instancia pequeña, mientras que 7g.40gb utiliza toda la A100 de 40 GB como una única instancia.
Ventajas e inconvenientes de Multi-Instance GPU
La principal ventaja de MIG es su elevado aislamiento a nivel de hardware. Como los recursos de cálculo y memoria se asignan de forma específica a cada instancia, las distintas cargas de trabajo pueden aislarse mucho mejor entre sí que con una GPU compartida únicamente mediante time slicing. Esto resulta especialmente útil en entornos bare metal o basados en contenedores en los que varias cargas de trabajo deben ejecutarse simultáneamente con recursos definidos y un rendimiento predecible.
MIG también puede utilizarse en entornos virtualizados. Sin embargo, con GPU Passthrough las distintas instancias MIG de una GPU no pueden asignarse por separado a varias VM: una única VM recibe la GPU con MIG habilitado y puede acceder a sus instancias. Para proporcionar instancias MIG aisladas a distintas máquinas virtuales se utiliza una vGPU respaldada por MIG (MIG-backed vGPU).
Limitaciones técnicas de Multi-Instance GPU
MIG mejora considerablemente el aislamiento y la previsibilidad del rendimiento frente a una GPU virtual clásica basada en time slicing, pero está limitado a determinados modelos de hardware, perfiles predefinidos y ciertas restricciones arquitectónicas:
- Solo disponible en determinadas GPU: MIG no es compatible con todas las GPU de NVIDIA. Las GPU de consumo y muchas tarjetas profesionales más antiguas no ofrecen esta función. MIG está disponible en determinadas GPU para centros de datos y en algunas GPU profesionales más recientes.
- Tamaños de perfil predefinidos: la división de los recursos no puede configurarse con una granularidad arbitraria. Los administradores deben elegir entre los perfiles definidos por NVIDIA, por ejemplo,
1g.5gb,2g.10gbo7g.40gben la A100 con 40 GB de memoria. - Número limitado de instancias: dependiendo de la GPU, pueden crearse hasta siete instancias simultáneas. Otros modelos compatibles con MIG admiten un número menor.
- Reconfiguración dinámica limitada: las instancias MIG pueden eliminarse y volver a crearse, pero para modificar una partición las instancias afectadas no deben estar siendo utilizadas. Además, dependiendo de la generación de la GPU y de la plataforma, activar o desactivar el modo MIG puede requerir reiniciar la GPU.
- Sin uso de capacidad adicional fuera del perfil: una instancia MIG solo puede utilizar los recursos asignados a su perfil. Los recursos que queden libres en otra instancia no se transfieren automáticamente a ella.
- Limitaciones en la comunicación entre instancias y en configuraciones multi-GPU: CUDA IPC no está disponible entre distintas GPU Instances, aunque sí puede utilizarse entre determinadas Compute Instances. El soporte P2P también está limitado; con controladores recientes se admite entre instancias MIG de una misma GPU, pero no entre instancias MIG de distintas GPU. Además, el soporte de NCCL con MIG sigue teniendo restricciones: desde NCCL 2.31 existe compatibilidad experimental con varias instancias MIG utilizando CUDA Driver 13.0 o posterior, pero algunas funciones como NVLink SHARP no están disponibles. Por ello, MIG puede no ser la opción adecuada para determinadas cargas de trabajo distribuidas o configuraciones multi-GPU que dependan de estas funciones.
Casos de uso y ayuda para la toma de decisiones
La tecnología más adecuada depende principalmente de tres preguntas:
- ¿Se necesita el máximo rendimiento de una GPU completa?
- ¿Es necesario aislar de forma fiable distintas cargas de trabajo o entornos de diferentes usuarios o clientes?
- ¿Se debe compartir una GPU de la forma más eficiente posible entre varias máquinas virtuales (VM) o varios usuarios?
Como regla general:
- Máximo rendimiento para una única VM: GPU Passthrough
- Muchos usuarios en paralelo con unas necesidades moderadas de GPU: vGPU
- Varias cargas de trabajo de IA, inferencia o HPC con recursos aislados y rendimiento predecible: MIG en bare metal o entornos con contenedores; vGPU respaldada por MIG cuando las cargas deben ejecutarse en máquinas virtuales independientes.
¿Cuándo es adecuado GPU Passthrough?
GPU Passthrough es especialmente adecuado cuando una única VM necesita toda la potencia de una GPU física. Algunos ejemplos típicos son:
- Estaciones de trabajo de gama alta
- Renderizado intensivo con GPU
- Aplicaciones CAD y CAE
- Trabajos de entrenamiento individuales que aprovechan al máximo una GPU completa
En estos casos, el rendimiento es prioritario, mientras que el uso compartido de la GPU tiene poca importancia o no es necesario.
La desventaja es que la GPU queda asignada en exclusiva a una VM. Como consecuencia, la capacidad que esta no utiliza queda desaprovechada y, dependiendo de la plataforma, funciones como la migración en vivo o la conmutación por error transparente (failover) pueden estar muy limitadas.
¿Cuándo es adecuada una GPU virtual?
Una GPU virtual resulta adecuada cuando muchos usuarios o VM solo necesitan una parte de la capacidad de la GPU. Es habitual, por ejemplo, en los siguientes casos:
- Escritorios virtuales
- Entornos de trabajo para usuarios con aplicaciones de productividad
- Estaciones de trabajo técnicas con necesidades gráficas moderadas o inferencia ligera de IA
La GPU virtual permite aumentar el número de usuarios o VM que pueden utilizar una misma GPU y mejora el aprovechamiento del hardware. Su principal ventaja es la flexibilidad: varias VM pueden compartir la misma GPU física. La desventaja es que, en las configuraciones clásicas de virtualización de GPU basadas en time slicing, los recursos de cálculo se comparten en el tiempo. Si varias VM generan una carga elevada simultáneamente, pueden competir por el tiempo de procesamiento de la GPU. Políticas de planificación como Equal Share o Fixed Share pueden reducir este efecto, pero no proporcionan una partición física de los recursos como MIG.
¿Cuándo es adecuada Multi-Instance GPU?
Multi-Instance GPU (MIG) resulta especialmente interesante cuando varias cargas de trabajo deben ejecutarse en una misma GPU, pero necesitan recursos definidos y un rendimiento predecible. Algunos ámbitos de uso típicos son:
- Inferencia de IA para varias cargas de trabajo o equipos
- Entornos de desarrollo y pruebas compartidos por varios equipos
- Entornos aislados para tareas de entrenamiento de menor tamaño
- Entornos en la nube basados en contenedores o, mediante MIG-backed vGPU, en máquinas virtuales independientes
MIG divide las GPU de NVIDIA compatibles a nivel de hardware. Cada instancia recibe recursos de cálculo y memoria asignados específicamente. De este modo, las cargas de trabajo pueden aislarse mejor que con el time slicing clásico y obtener un rendimiento más predecible. Por ello, MIG resulta especialmente adecuado para entornos en los que son importantes tanto un buen aprovechamiento de la GPU como un alto grado de aislamiento.
En entornos virtualizados, MIG también puede combinarse con una GPU virtual. Con una vGPU respaldada por MIG (MIG-backed vGPU), las particiones de hardware de MIG se integran en las VM. De este modo, es posible combinar recursos de GPU definidos y aislamiento a nivel de hardware con un modelo de funcionamiento basado en máquinas virtuales.
- Nuevos GPUs NVIDIA RTX PRO 6000 Blackwell de alto rendimiento disponibles
- Rendimiento sin igual para cargas de trabajo exigentes de inteligencia artificial y análisis de datos
- Alojadas en centros de datos seguros y fiables
- Pago por uso, con precios flexibles

