En esta página se explica cómo resolver problemas de máquinas virtuales que se ejecutan en Compute Engine y que tienen GPUs conectadas.
Si intentas crear una VM con GPUs conectadas y recibes errores, consulta Solucionar problemas de disponibilidad de recursos y Solucionar problemas al crear y actualizar VMs.
Solucionar problemas de máquinas virtuales con GPU mediante NVIDIA DCGM
NVIDIA Data Center GPU Manager (DCGM) es un conjunto de herramientas para gestionar y monitorizar GPUs de centros de datos de NVIDIA en entornos de clústeres.
Si quieres usar DCGM para solucionar problemas en tu entorno de GPU, haz lo siguiente:
- Asegúrate de que estás usando el controlador de NVIDIA recomendado más reciente para el modelo de GPU que está conectado a tu VM. Para consultar las versiones de los controladores, consulta Versiones recomendadas de los controladores de NVIDIA.
- Asegúrate de haber instalado la versión más reciente de DCGM. Para instalar la versión más reciente, consulta el artículo sobre la instalación de DCGM.
Diagnosticar problemas
Cuando ejecutas un comando de diagnóstico de dcgmi
, los problemas que informa la herramienta de diagnóstico incluyen los pasos que debes seguir para solucionarlos. En el siguiente ejemplo se muestra la salida procesable del comando dcgmi diag -r memory -j
.
{ ........ "category":"Hardware", "tests":[ { "name":"GPU Memory", "results":[ { "gpu_id":"0", "info":"GPU 0 Allocated 23376170169 bytes (98.3%)", "status":"Fail", ""warnings":[ { "warning":"Pending page retirements together with a DBE were detected on GPU 0. Drain the GPU and reset it or reboot the node to resolve this issue.", "error_id":83, "error_category":10, "error_severity":6 } ] } .........
En el fragmento de salida anterior, puedes ver que GPU 0
tiene retiradas de páginas pendientes debido a un error irrecuperable.
La salida proporcionó el error_id
único y consejos para depurar el problema.
En este ejemplo, se recomienda que agotes la GPU y reinicies la VM. En la mayoría de los casos, siguiendo las instrucciones de esta sección de la salida
se puede resolver el problema.
Enviar una solicitud de asistencia
Si no puedes resolver los problemas siguiendo las indicaciones que se proporcionan en el resultado de tu dcgmi
diagnóstico, puedes abrir un caso de asistencia. Cuando abras un caso de asistencia, deberás proporcionar la siguiente información:
- El comando que se ha ejecutado y el resultado devuelto.
Archivos de registro relevantes, como los registros del motor host y de diagnóstico. Para recopilar los archivos de registro necesarios, puedes ejecutar la secuencia de comandos
gather-dcgm-logs.sh
.En una instalación predeterminada en sistemas basados en Debian y RPM, esta secuencia de comandos se encuentra en
/usr/local/dcgm/scripts
.En caso de
dcgmi diag
errores, proporcione los archivos de estadísticas de los complementos que hayan fallado. El archivo de estadísticas usa la siguiente convención de nomenclatura:stats_PLUGIN_NAME.json
.Por ejemplo, si el complemento
pcie
ha fallado, incluye el archivo llamadostats_pcie.json
.Información del sistema NVIDIA y estado del controlador. Para recopilar esta información, puedes ejecutar la secuencia de comandos
nvidia-bug-report.sh
. Si usas una instancia con GPUs Blackwell, sigue las instrucciones de Generar un informe de errores de NVIDIA para GPUs Blackwell para obtener un informe de errores completo.Ejecutar esta secuencia de comandos también ayuda a depurar el problema si se debe a otras dependencias de NVIDIA y no a un error en DCGM.
Detalles sobre los cambios recientes que se hayan realizado en tu entorno antes del fallo.
Mensajes Xid
Después de crear una VM con GPUs conectadas, debes instalar los controladores de dispositivos NVIDIA en tus VMs con GPUs para que tus aplicaciones puedan acceder a las GPUs. Sin embargo, a veces estos controladores devuelven mensajes de error.
Un mensaje Xid es un informe de errores del controlador de NVIDIA que se imprime en el registro del kernel o en el registro de eventos del sistema operativo de tu máquina virtual Linux. Estos mensajes se colocan en el archivo /var/log/messages
.
Para obtener más información sobre los mensajes Xid, incluidas las posibles causas, consulta la documentación de NVIDIA.
En la siguiente sección se ofrecen directrices para gestionar algunos mensajes Xid agrupados por los tipos más habituales: errores de memoria de la GPU, errores del procesador del sistema de la GPU (GSP) y errores de acceso ilegal a la memoria.
Errores de memoria de la GPU
La memoria de la GPU es la memoria disponible en una GPU que se puede usar para almacenar datos temporalmente. La memoria de la GPU está protegida con un código de corrección de errores (ECC), que detecta y corrige errores de un solo bit (SBE) y detecta e informa de errores de dos bits (DBE).
Antes del lanzamiento de las GPUs NVIDIA A100, se admitía la retirada dinámica de páginas. En las versiones de GPU NVIDIA A100 y posteriores (como NVIDIA H100), se ha introducido la recuperación de errores de reasignación de filas. ECC está habilitado de forma predeterminada. Google recomienda encarecidamente mantener habilitado el ECC.
A continuación, se muestran algunos errores de memoria de GPU habituales y las soluciones que se sugieren.
Mensaje de error de Xid | Resolución |
---|---|
Xid 48: Double Bit ECC |
|
Xid 63: ECC page retirement or row remapping recording
event |
|
Xid 64: ECC page retirement or row remapper recording
failure
El mensaje contiene la siguiente información: Xid 64: All reserved rows for bank are remapped
|
|
Si recibes al menos dos de los siguientes mensajes Xid juntos:
El mensaje contiene la siguiente información: Xid XX: row remap pending
|
|
Xid 92: High single-bit ECC error rate |
Este mensaje Xid se devuelve después de que el controlador de la GPU corrija un error corregible y no debería afectar a tus cargas de trabajo. Este mensaje Xid es meramente informativo. No tienes que hacer nada. |
Xid 94: Contained ECC error |
|
Xid 95: Uncontained ECC error |
|
Errores de GSP
Un procesador del sistema de la GPU (GSP) es un microcontrolador que se ejecuta en las GPUs y gestiona algunas de las funciones de gestión de hardware de bajo nivel.
Mensaje de error de Xid | Resolución |
---|---|
Xid 119: GSP RPC timeout |
|
Xid 120: GSP error |
Errores de acceso a memoria no permitido
Se devuelven los siguientes Xids cuando las aplicaciones tienen problemas de acceso ilegal a la memoria:
Xid 13: Graphics Engine Exception
Xid 31: GPU memory page fault
Los errores de acceso a memoria no permitido suelen deberse a que tus cargas de trabajo intentan acceder a memoria que ya se ha liberado o que está fuera de los límites. Esto puede deberse a problemas como la desreferenciación de un puntero no válido o una matriz fuera de los límites.
Para solucionar este problema, debes depurar tu aplicación. Para depurar tu aplicación, puedes usar cuda-memcheck y CUDA-GDB.
En algunos casos muy raros, la degradación del hardware puede provocar que se devuelvan errores de acceso ilegal a la memoria. Para determinar si el problema está relacionado con tu hardware, usa NVIDIA Data Center GPU Manager (DCGM).
Puedes ejecutar dcgmi diag -r 3
o dcgmi diag -r 4
para ejecutar diferentes niveles de cobertura y duración de las pruebas. Si detectas que el problema está relacionado con el hardware, crea un caso de asistencia con Cloud Customer Care.
Otros mensajes de error de Xid habituales
Mensaje de error de Xid | Resolución |
---|---|
Xid 74: NVLINK error |
|
Xid 79: GPU has fallen off the bus
Esto significa que el controlador no puede comunicarse con la GPU. |
Reinicia la VM. |
Restablecer GPUs
Es posible que tengas que restablecer tus GPUs para solucionar algunos problemas. Para restablecer las GPUs, sigue estos pasos:
- En las VMs N1, G2 y A2, reinicia la VM ejecutando
sudo reboot
. - En las VMs A3 y A4, ejecuta
sudo nvidia-smi --gpu-reset
.- En la mayoría de las máquinas virtuales Linux, el ejecutable
nvidia-smi
se encuentra en el directorio/var/lib/nvidia/bin
. - En los nodos de GKE, el ejecutable
nvidia-smi
se encuentra en el directorio/home/kubernetes/bin/nvidia
.
- En la mayoría de las máquinas virtuales Linux, el ejecutable
Si los errores persisten después de restablecer la GPU, debes eliminar y volver a crear la VM.
Si el error persiste después de eliminar y volver a crear la VM, abre un caso con Cloud Customer Care para mover la VM a la fase de reparación.
Siguientes pasos
Consulta los tipos de máquinas con GPU.