Crea una instancia de VM de aprendizaje profundo de PyTorch

En esta página, se muestra cómo crear una instancia de Deep Learning VM Image de PyTorch con PyTorch y otras herramientas preinstaladas. Puedes crear una instancia de PyTorch desde Cloud Marketplace dentro de la consola de Google Cloud o mediante la línea de comandos.

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Si usas GPU con la VM de aprendizaje profundo, revisa la página de cuotas para asegurarte de tener suficientes GPU disponibles en el proyecto. Si las GPU no están enumeradas en la página de las cuotas o necesitas una cuota de GPU adicional, solicita un aumento de la cuota.

Crea una instancia de VM de Deep Learning de PyTorch desde Cloud Marketplace

Para crear una instancia de VM de aprendizaje profundo de PyTorch desde Cloud Marketplace, completa los siguientes pasos:

  1. Ve a la página VM de aprendizaje profundo de Cloud Marketplace en la consola de Google Cloud.

    Ir a la página Deep Learning VM de aprendizaje profundo de Cloud Marketplace

  2. Haz clic en Comenzar.

  3. Ingresa el Nombre de la implementación que será la raíz del nombre de tu VM. Compute Engine agrega -vm a este nombre cuando nombras la instancia.

  4. Selecciona una zona.

  5. En Tipo de máquina, selecciona las especificaciones que quieres para tu VM. Obtén más información sobre los tipos de máquinas.

  6. En GPU, selecciona el Tipo de GPU y la Cantidad de GPU. Si no deseas usar las GPU, haz clic en el botón Borrar GPU y avanza al paso 7. Obtén más información sobre GPU.

    1. Selecciona un Tipo de GPU. No todos los tipos de GPU están disponibles en todas las zonas. Encuentra una combinación compatible.
    2. Selecciona la Cantidad de GPU. Cada GPU admite diferentes cantidades de GPU. Encuentra una combinación compatible.
  7. En Framework, selecciona PyTorch 1.8 + fast.ai 2.1 (CUDA 11.0).

  8. Si usas GPU, se requiere un controlador NVIDIA. Puedes instalar el controlador tú mismo o seleccionar Instalar automáticamente el controlador de GPU de NVIDIA en el primer inicio.

  9. Puedes seleccionar Habilitar el acceso a JupyterLab mediante una URL en lugar de SSH (Beta). Habilitar esta función Beta te permite acceder a tu instancia de JupyterLab mediante una URL. Cualquier persona que tenga la función de editor o propietario en tu proyecto de Google Cloud puede acceder a esta URL. En la actualidad, esta característica solo funciona en Estados Unidos, la Unión Europea y Asia.

  10. Selecciona un tipo de disco de arranque y su tamaño.

  11. Selecciona la configuración de red que desees.

  12. Haga clic en Implementar.

Si eliges instalar los controladores NVIDIA, espera de 3 a 5 minutos para que se complete la instalación.

Después de implementar la VM, la página se actualiza con instrucciones para que puedas acceder a la instancia.

Crea una instancia de VM de aprendizaje profundo de PyTorch desde la línea de comandos

Para usar Google Cloud CLI a fin de crear una nueva instancia de VM de aprendizaje profundo, primero debes instalar y, luego, inicializar Google Cloud CLI:

  1. Descarga y, luego, instala Google Cloud CLI en función de las instrucciones que se indican en Instala Google Cloud CLI.
  2. Inicializa el SDK en función de las instrucciones de Inicializa el SDK de Cloud.

Para usar gcloud en Cloud Shell, primero debes activar Cloud Shell mediante las instrucciones que se proporcionan en Inicia Cloud Shell.

Sin GPU

Para crear una instancia de VM de aprendizaje profundo con la familia de imágenes de PyTorch y la CPU más recientes, ingresa esta información en la línea de comandos:

export IMAGE_FAMILY="pytorch-latest-cpu"
export ZONE="us-west1-b"
export INSTANCE_NAME="my-instance"

gcloud compute instances create $INSTANCE_NAME \
  --zone=$ZONE \
  --image-family=$IMAGE_FAMILY \
  --image-project=deeplearning-platform-release

Opciones:

  • --image-family debe ser pytorch-latest-cpu o pytorch-VERSION-cpu (por ejemplo, pytorch-1-13-cpu).

  • --image-project debe ser deeplearning-platform-release

Con una o más GPU

Compute Engine ofrece la opción de agregar una o más GPU a las instancias de tu máquina virtual. Las GPU ofrecen un procesamiento más rápido para muchas tareas complejas de datos y aprendizaje automático. Para obtener más información sobre las GPU, consulta GPU en Compute Engine.

Para crear una instancia de VM de aprendizaje profundo con la familia de imágenes de PyTorch más reciente y una o más GPU adjuntas, ingresa lo siguiente en la línea de comandos:

export IMAGE_FAMILY="pytorch-latest-gpu"
export ZONE="us-west1-b"
export INSTANCE_NAME="my-instance"

gcloud compute instances create $INSTANCE_NAME \
  --zone=$ZONE \
  --image-family=$IMAGE_FAMILY \
  --image-project=deeplearning-platform-release \
  --maintenance-policy=TERMINATE \
  --accelerator="type=nvidia-tesla-v100,count=1" \
  --metadata="install-nvidia-driver=True"

Opciones:

  • --image-family debe ser pytorch-latest-gpu o pytorch-VERSION-CUDA-VERSION (por ejemplo, pytorch-1-10-cu110).

  • --image-project debe ser deeplearning-platform-release

  • --maintenance-policy debe ser TERMINATE Para obtener más información, consulta Restricciones de GPU.

  • --accelerator especifica el tipo de GPU que se usará. Debe especificarse con el formato --accelerator="type=TYPE,count=COUNT". Por ejemplo, --accelerator="type=nvidia-tesla-p100,count=2". Consulta la tabla de modelos de GPU para obtener una lista de los tipos y recuentos de GPU disponibles.

    No todos los tipos de GPU se admiten en todas las regiones. Para obtener más detalles, consulta Disponibilidad de regiones y zonas de GPU.

  • --metadata se usa para especificar que el controlador NVIDIA debe instalarse en tu nombre. El valor es install-nvidia-driver=True. Si se especifica, Compute Engine carga el controlador estable más reciente en el primer inicio y realiza los pasos necesarios (incluido un reinicio final para activar el controlador).

Si elegiste instalar los controladores NVIDIA, espera de 3 a 5 minutos para que se complete la instalación.

Puede tardar hasta 5 minutos antes de que la VM se aprovisione por completo. En este momento, no podrás establecer una conexión SSH en tu máquina. Cuando se complete la instalación, puedes establecer una conexión SSH y ejecutar nvidia-smi para verificar que la instalación del controlador se haya realizado de forma correcta.

Cuando hayas configurado tu imagen, puedes guardar una instantánea de ella para poder iniciar instancias derivadas sin tener que esperar a que se instale controlador.

Crea una instancia interrumpible

Puedes crear una instancia de VM de aprendizaje profundo interrumpible. Una instancia interrumpible es una que puedes crear y ejecutar a un precio mucho menor que las instancias normales. Sin embargo, Compute Engine podría detener (interrumpir) estas instancias si requiere acceso a los recursos para otras tareas. Las instancias interrumpibles siempre se detienen después de 24 horas. Para obtener más información acerca de las instancias interrumpibles, consulta Instancias de VM interrumpibles.

Si deseas crear una instancia de VM de aprendizaje profundo interrumpible, sigue estos pasos:

  • Sigue las instrucciones que se encuentran arriba para crear una instancia nueva mediante la línea de comandos. Agrega lo siguiente al comando gcloud compute instances create:

      --preemptible

¿Qué sigue?

Si deseas obtener instrucciones para conectarte a la nueva instancia de VM de aprendizaje profundo por medio de la consola de Google Cloud o la línea de comandos, consulta Conéctate a instancias. El nombre de la instancia es el nombre de la implementación que especificaste con -vm agregado.