Skip To Content

Configurar ArcGIS Notebook Server para usar GPU

El uso de unidades de procesamiento gráfico (GPU) mejora rápidamente el tiempo de procesamiento de los modelos de aprendizaje de máquina. ArcGIS Notebook Server puede aprovechar las GPU de NVIDIA en su equipo host una vez que se han llevado a cabo algunos pasos adicionales.

Una vez que ArcGIS Notebook Server se haya instalado y configurado, siga estos pasos utilizando el mismo equipo.

  1. Instale los controladores de NVIDIA adecuados en el equipo. Consulte el sitio web de NVIDIA para ver la información completa.
  2. Instale el tiempo de ejecución nvidia-docker 2.0 en el equipo para que los contenedores del notebook puedan hacer uso de las GPU. Consulte el Repositorio de NVIDIA-Docker en GitHub para ver las descargas y la documentación correspondiente a su sistema operativo en concreto.
  3. Ejecute el siguiente comando para asegurarse de que sus elementos de NVIDIA estén bien instalados:

    docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi

  4. Amplíe el tiempo de ejecución Advanced del notebook en Dockerfile para definir las siguientes variables de entorno, habilitando NVIDIA Container Runtime en contenedores con aceleración por GPU.

    # Specify the existing notebook runtime imageId as FROM FROM aa7a1a346e5b
    # Use RUN to issue a command to install
    # Declare environment variables with ENV
    #RUN conda install <your_preferred_gpu_package>
    ENV NVIDIA_VISIBLE_DEVICES all ENV NVIDIA_DRIVER_CAPABILITIES compute,utility
    ENV NVIDIA_REQUIRE_CUDA "cuda>=9.2"

    También puede optar por instalar otros módulos de Python que pueden sacar partido de la compatibilidad con GPU. Siga los pasos de Ampliar el tiempo de ejecución de un notebook para crear un Dockerfile.
  5. Cree su imagen de contenedor personalizada con la siguiente sintaxis de comando:

    docker build -t myGpuRuntime:v1.0 -f <path_to_Dockerfile> .
    Asegúrese de incluir el punto al final del comando.

  6. Cuando termine de crear la imagen, un mensaje de salida entregará el imageId abreviado de la nueva imagen. Obtenga el imageId completo de su nuevo contenedor.

    docker inspect <imageId>

  7. Inicie sesión en el Directorio de administrador de ArcGIS Notebook Server en https://notebookserver.domain.com:11443/arcgis/admin. Vaya a notebooks > tiempos de ejecución, seleccione el tiempo de ejecución Advanced y, a continuación, haga clic en editar.
  8. Actualice el tiempo de ejecución Advanced para que utilice su nueva imagen personalizada. Sustituya el valor de imageId existente por el valor de su imagen, obtenido en el paso 6.
  9. Establezca el valor de dockerRuntime en nvidia. Guarde sus cambios.
  10. Compruebe que ArcGIS Notebook Server se haya configurado correctamente para utilizar las GPU de NVIDIA. Como miembro del portal con el privilegio de Notebooks avanzados, abra un nuevo notebook. Copie lo siguiente en una celda y ejecútela.

    import torch torch.cuda.is_available()
    La salida debería devolver True, ya que el paquete de torch.cuda necesita GPU para ejecutarse.

  11. Ejecute el siguiente comando en una nueva celda para ver la configuración de GPU de su equipo:

    !nvidia-smi

Si en algún momento desea evitar que su sitio de ArcGIS Notebook Server pueda utilizar las GPU, ejecute la operación Restaurar los tiempos de ejecución de fábrica en el Directorio de administrador. Está disponible en la dirección URL https://notebookserver.domain.com:11443/arcgis/admin/notebooks/runtimes/restore.