Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

PowerEdge: Error de acceso de PCI: «Module 'DevicePowerOn' power on failed» cuando se usan GPU con máquinas virtuales en vSphere

Summary: La VM no se enciende después de configurar el acceso del dispositivo PCI en el host ESXi y de agregar el dispositivo a la VM. No pasa del 80 % y, luego, genera un error 2022-04-22T03:04:15.771Z| vmx| | I005: PCIPassthru: total number of pages needed (4206594) exceeds limit (917504), failing 2022-04-22T03:04:15.771Z| vmx| | I005: Module 'DevicePowerOn' power on failed. ...

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Instructions

Error.PNG de PCI


Preliminares

El BIOS del host debe estar configurado correctamente a fin de habilitar la GPU Nvidia para el acceso, y la máquina virtual destinada a ejecutar estas cargas de trabajo aceleradas debe cumplir con requisitos específicos. En esta sección, se describen todos estos requisitos.

¿Qué dispositivos?

Este artículo solo corresponde si el dispositivo PCI asigna regiones de memoria cuyos tamaños sumen más de 16 GB. Siga las instrucciones publicadas en la base de conocimientos de VMware 1010789 para habilitar los dispositivos de acceso en vSphere. Como regla general, las tarjetas que requieren más de 16 GB de asignación de memoria son tarjetas de alto nivel. Debe seguir las instrucciones de este artículo a fin de habilitarlas para su uso en el modo de acceso en una máquina virtual.
 

BIOS del host

El BIOS del host debe estar configurado para soportar las regiones de memoria grandes que necesitan estos dispositivos PCI de alto nivel. Para habilitar esto, busque el ajuste del BIOS del host de "memory mapped I/O above 4 GB" y habilítelo.

MMIO.png


SO huésped 

Nota: Estos ajustes solo son necesarios si el modo de arranque del BIOS está establecido como UEFI, si se trata del modo heredado o del BIOS, puede ignorar lo siguiente.

Para acceder a estas asignaciones de memoria de gran tamaño, conéctese al sitio de VMware Guest OS must boot with EFI. Es decir, debe habilitar EFI en la VM y, a continuación, realizar una instalación de EFI del SO huésped.
 

Edición de la disponibilidad de dispositivos PCI en el servidor host

El vSphere Hypervisor reconoce inicialmente un dispositivo de hardware de GPU compatible con PCI instalado durante el arranque del servidor sin tener controladores específicos instalados en el hipervisor.

vSphere reconoce todos los dispositivos PCI de esta manera. Puede ver la lista de dispositivos PCI que se encuentran en la herramienta vSphere Client eligiendo el servidor de host específico en el que está trabajando y siguiendo las opciones del menú".

"Configure", > "Hardware", > "PCI Devices", > "Edit" para ver la lista, como se muestra en un ejemplo de la Figura 2 a continuación.

Si el dispositivo GPU específico no se habilitó previamente para I/O de DirectPath, puede colocar el dispositivo de GPU en modo de I/O de ruta directa (transferencia) haciendo clic en la casilla de verificación de la entrada del dispositivo, como se muestra en el ejemplo del dispositivo NVIDIA.

image.png


Habilitación de dispositivos de alto nivel en un archivo de VM

Con los requisitos anteriores satisfechos, se deben agregar dos entradas al archivo VMX de la VM, ya sea mediante la modificación directa del archivo o mediante vSphere Client para agregar estas funcionalidades. La primera entrada es:

pciPassthru.use64bitMMIO="TRUE"

La especificación de la segunda entrada requiere un cálculo simple. Sume los tamaños de todas de las memorias GPU de todos los dispositivos GPU(*) que desee transferir a la VM y, luego, redondee a la siguiente potencia de dos. Por ejemplo, para usar el acceso con 4 dispositivos A2 de 16 GB, el valor sería: 32 + 32 = 64, redondeado hacia arriba a la siguiente potencia de dos para que el resultado sea 128. Utilice este valor en la segunda entrada:

pciPassthru.64bitMMIOSizeGB="128"

Con estos dos cambios en el archivo VMX, siga las instrucciones de vSphere estándar de la KB de VMware 1010789 para habilitar dispositivos de acceso en el nivel del host y para especificar qué dispositivos se deben transferir a la VM. La VM ahora debe arrancar correctamente con el dispositivo en modo de acceso.
 

Habilitación de dispositivos de gama alto nivel en la IU

Vuelva a elegir la máquina virtual en vSphere Client y utilice las opciones".

Edit Settings > VM Options >Advanced > Configuration Parameters > Edit Configuration" para ir a la lista de opciones relacionadas con PCI que se muestra a continuación.

image.png


Calculamos el valor del parámetro "64bitMMIOSizeGB" mediante un enfoque directo. Cuente la cantidad de dispositivos GPU PCI de alto nivel que desee transferir a esta VM. Puede ser una o más GPU. Multiplique ese número por 16 y redondéelo hacia arriba hasta la siguiente potencia de dos.

Por ejemplo, para utilizar el modo de acceso con dos dispositivos GPU en una VM, el valor sería: 4 * 16 = 64, redondeado hacia arriba a la siguiente potencia de dos para que el resultado sea 128.
 

Asignación de un dispositivo GPU a una máquina virtual

En esta sección, se describe la asignación del dispositivo GPU a la VM. Apague la máquina virtual antes de asignarle el dispositivo GPU.

Para habilitar el acceso de una máquina virtual a un dispositivo PCI, en vSphere Client, seleccione la máquina virtual, utilice la opción "Edit Settings" y desplácese hacia abajo hasta la lista PCI Device. Si el dispositivo no aparece en la lista, utilice el botón "Add New Device" para agregarlo a la lista. Una vez agregado, los ajustes de la máquina virtual deben lucir similares a lo que se muestra en la Figura 7. En este ejemplo, la entrada correspondiente es "PCI Device 0".

image.png


Reserva de memoria

Cuando el dispositivo PCI se asigna a una VM, la máquina virtual debe tener una reserva de memoria para el tamaño de memoria configurado completamente de la VM. Esto se realiza en vSphere Client mediante la selección de la VM mediante "Edit Settings > Virtual Hardware > Memory" para acceder y cambiar el valor en el área Reservation.

Por último, encienda la máquina virtual. Después de activar la máquina virtual, inicie sesión en el SO huésped y compruebe que la tarjeta GPU esté presente.

  • En una máquina virtual Linux, utilice el comando
"lspci | grep nvidia"

O bien,

  • En un sistema operativo Windows, utilice el "Administrador de dispositivos" del Panel de control para comprobar los dispositivos GPU disponibles


La GPU ahora está lista para el uso de la aplicación en el modo de acceso.

Additional Information

Solución de problemas

Si siguió las instrucciones anteriores y la VM aún no arranca correctamente con los dispositivos habilitados, el material de esta sección puede ser útil. Si probó las sugerencias que aparecen a continuación y sigue teniendo problemas, comuníquese con nosotros para que podamos ayudarlo.
 

Problema de mapeo:
si ve un error similar al siguiente en el archivo vmware.log de la VM:

1 I120: PCIPassthru: 0000:82:00.0: El dispositivo BAR 0 solicitó una dirección de memoria de 64 bits que superó el tipo de MPN (62105227100160)

Los ajustes del BIOS no cumplen con los requisitos de ESXi para habilitar este tipo de dispositivo de acceso. ESXi 6.0 p4 a ESXi 6.5 requiere que la memoria asignada para todos los dispositivos PCI sea inferior a 16 TB. Es posible solucionar este problema si el BIOS soporta la capacidad de controlar qué tan alto se asignan las regiones de memoria PCI del espacio de direcciones de la memoria del host. Algunos fabricantes, por ejemplo, SuperMicro, tienen opciones de BIOS para cambiar qué tanto se asigna esta memoria. En los sistemas SuperMicro, el parámetro MMIOHBase se puede cambiar a un valor menor de su valor predeterminado de 56 TB. Los sistemas Sugon también tienen un ajuste de BIOS similar (oculto). Consulte con el proveedor del sistema para saber si el BIOS soporta esta característica de reasignación. Otra solución es actualizar su versión de ESXi a 6.5 u1 o superior, lo que eliminó la limitación de 16 TB.

Configuración incorrecta:
se produjo un error en el archivo vmware.log del siguiente formato:

1 2016-07-07T09:18:37.624Z| vmx| I120: PCIPassthru: la cantidad total de páginas necesarias (2097186) supera el límite (917504), con fallas

Indica que no ha habilitado correctamente las asignaciones "superiores a 4 GB" en el BIOS del host, como se describe en la sección "BIOS del host" anterior, o que no especificó correctamente las entradas VMX.

No se puede utilizar el dispositivo:
si siguió todas las instrucciones anteriores y la VM arrancó correctamente, pero ve un mensaje similar al siguiente cuando tiene en ejecución la utilidad nvidia-smi en el SO huésped:

1 No se puede determinar la denominación del dispositivo para la GPU 0000:13:00.0: Error desconocido

Le sugerimos que se comunique directamente con Nvidia o que realice una búsqueda web mediante esta cadena para encontrar información adicional que pueda ser de ayuda.

Article Properties


Affected Product

Servers, PowerEdge

Last Published Date

15 Dec 2022

Version

4

Article Type

How To