Compartir a través de


Aceleración de GPU en Azure IoT Edge para Linux en Windows

Se aplica a: icono IoT Edge 1.1

Importante

IoT Edge 1.1: la fecha de finalización del soporte técnico fue el 13 de diciembre de 2022. Consulte la página del ciclo de vida de productos de Microsoft para obtener información sobre cómo se admite este producto, servicio, tecnología o API. Para más información sobre cómo actualizar a la versión más reciente de IoT Edge, consulte Actualización de IoT Edge.

Las GPU son una opción popular para los cálculos de inteligencia artificial, ya que ofrecen funcionalidades de procesamiento paralelo y a menudo pueden ejecutar inferencias basadas en la visión más rápido que las CPU. Para admitir mejor la inteligencia artificial y las aplicaciones de aprendizaje automático, Azure IoT Edge para Linux en Windows (EFLOW) puede exponer una GPU al módulo de Linux de la máquina virtual.

Azure IoT Edge para Linux en Windows admite varias tecnologías de paso a través de GPU, como las siguientes:

  • Asignación directa de dispositivos (DDA): los núcleos de GPU se asignan a la máquina virtual Linux o al host.

  • Paravirtualización de GPU (GPU-PV): la GPU se comparte entre la máquina virtual Linux y el host.

Debe seleccionar el método de acceso directo adecuado durante la implementación para que coincida con las funcionalidades admitidas del hardware de GPU del dispositivo.

Importante

Estas características pueden incluir componentes desarrollados y propiedad de NVIDIA Corporation o sus emisores de licencias. El uso de los componentes se rige por el contrato de licencia para el usuario final de NVIDIA que se encuentra en el sitio web de NVIDIA.

Al usar las características de aceleración de GPU, acepta y está de acuerdo con los términos del contrato de licencia del usuario final de NVIDIA.

Requisitos previos

Las características de aceleración de GPU de Azure IoT Edge para Linux en Windows admiten actualmente un conjunto selecto de hardware de GPU. Además, el uso de esta característica puede requerir versiones específicas de Windows.

A continuación se enumeran las GPU admitidas y las versiones de Windows necesarias:

GPU admitidas Tipo de tránsito de GPU Versiones compatibles de Windows
NVIDIA T4, A2 DDA Windows Server 2019
Windows Server 2022
Windows 10/11 (Pro, Enterprise, IoT Enterprise)
NVIDIA GeForce, Quadro, RTX GPU-PV Windows 10/11 (Pro, Enterprise, IoT Enterprise)
Intel iGPU GPU-PV Windows 10/11 (Pro, Enterprise, IoT Enterprise)

Importante

La compatibilidad con GPU-PV puede limitarse a determinadas generaciones de procesadores o arquitecturas de GPU según lo determine el proveedor de GPU. Para obtener más información, consulte la documentación del controlador iGPU de Intel o CUDA de NVIDIA para WSL.

Windows Server 2019: los usuarios deben usar la compilación mínima 17763 con todas las actualizaciones acumulativas actuales instaladas.

Los usuarios de Windows 10 deben usar la actualización de noviembre de 2021 la compilación 19044.1620 o posterior. Después de la instalación, puede comprobar el número de versión si ejecuta winver en el símbolo del sistema.

El paso directo de GPU no se admite con la virtualización anidada, como la ejecución de EFLOW en una máquina virtual Windows.

Configuración e instalación del sistema

Las secciones siguientes contienen información de configuración e instalación, según la GPU.

GPU NVIDIA T4/A2

Para las GPU T4/A2, Microsoft recomienda instalar un controlador de mitigación de dispositivos del proveedor de GPU. Aunque es opcional, la instalación de un controlador de mitigación puede mejorar la seguridad de la implementación. Para obtener más información, vea Implementación de dispositivos gráficos mediante la asignación directa de dispositivos.

Advertencia

La habilitación del acceso directo de dispositivos de hardware puede aumentar los riesgos de seguridad. Microsoft recomienda usar un controlador de mitigación de dispositivos del proveedor de GPU, si procede. Para obtener más información, vea Implementación de dispositivos gráficos mediante la asignación discreta de dispositivos.

GPUs NVIDIA GeForce/Quadro/RTX

Para las GPU GeForce/Quadro/RTX, descargue e instale el controlador habilitado para NVIDIA CUDA para Subsistema de Windows para Linux (WSL) a fin de usarlo con los flujos de trabajo de ML CUDA existentes. Desarrollado originalmente para WSL, los controladores CUDA para WSL también se usan para Azure IoT Edge para Linux en Windows.

Los usuarios de Windows 10 también deben instalar WSL porque algunas de las bibliotecas se comparten entre WSL y Azure IoT Edge para Linux en Windows.

Intel iGPU

En el caso de las Intel iGP, descargue e instale el controlador de gráficos de Intel con compatibilidad con GPU de WSL.

Los usuarios de Windows 10 también deben instalar WSL porque algunas de las bibliotecas se comparten entre WSL y Azure IoT Edge para Linux en Windows.

Habilitación de la aceleración de GPU en la implementación de Linux en Windows de Azure IoT Edge

Una vez completada la configuración del sistema, está listo para crear la implementación de Azure IoT Edge para Linux en Windows. Durante este proceso, debe habilitar GPU como parte de la implementación de EFLOW.

Por ejemplo, el comando siguiente crea una máquina virtual con una GPU NVIDIA A2 asignada.

Deploy-Eflow -gpuPassthroughType "DirectDeviceAssignment" -gpuCount 1 -gpuName "NVIDIA A2"

Una vez se ha completado la instalación, está listo para implementar y ejecutar módulos de Linux con aceleración de GPU por medio de Azure IoT Edge para Linux en Windows.

Pasos siguientes