Utilizzo delle GPU NVIDIA

Questa pagina descrive come gestire attività di deep learning come il riconoscimento delle immagini, l'elaborazione del linguaggio naturale e altre attività a elevato utilizzo di risorse di calcolo utilizzando pool di nodi con acceleratori hardware per unità di elaborazione grafica (GPU) NVIDIA per la potenza di calcolo con l'istanza container Knative Serving.

Aggiunta di un pool di nodi con GPU al cluster GKE

Chiedi a un amministratore di creare un pool di nodi con GPU:

  1. Aggiungi un pool di nodi abilitato per la GPU al tuo cluster GKE.

  2. Installa i driver di dispositivo NVIDIA sui nodi.

Configurazione del servizio per l'utilizzo delle GPU

Puoi specificare un limite di risorse per utilizzare le GPU per il tuo servizio utilizzando la console Google Cloud o Google Cloud CLI quando esegui il deployment di un nuovo servizio, aggiorni un servizio esistente o esegui il deployment di una revisione:

Console

  1. Vai a Knative serving
  2. Fai clic su Crea servizio per visualizzare il modulo Crea servizio.

  3. Nella sezione Impostazioni di servizio:

    1. Seleziona il cluster GKE con il pool di nodi abilitato per GPU.
    2. Specifica il nome che vuoi dare al servizio.
    3. Fai clic su Avanti per continuare con la sezione successiva.
  4. Nella sezione Configura la prima revisione del servizio:

    immagine

    1. Aggiungi un URL dell'immagine container.
    2. Fai clic su Impostazioni avanzate e, nel menu GPU allocata, seleziona il numero di GPU che vuoi allocare al tuo servizio. immagine
  5. Fai clic su Avanti per continuare con la sezione successiva.

  6. Nella sezione Configura il funzionamento del trigger per questo servizio, seleziona la connettività che vuoi utilizzare per richiamare il servizio.

  7. Fai clic su Crea per eseguire il deployment dell'immagine in Knative Serving e attendi il completamento del deployment.

Riga di comando

Puoi scaricare la configurazione di un servizio esistente in un file YAML con il comando gcloud run services describe utilizzando il flag --format=export. Puoi quindi modificare il file YAML e implementare le modifiche con il comando gcloud run services replace. Devi assicurarti di modificare solo gli attributi specificati.

  1. Scarica la configurazione del servizio in un file denominato service.yaml nello spazio di lavoro locale:

    gcloud run services describe SERVICE --format export > service.yaml

    Sostituisci SERVICE con il nome del tuo servizio Knative.

  2. Nel file locale, aggiorna l'attributo nvidia.com/gpu:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
    name: SERVICE_NAME
    spec:
    template:
     spec:
       containers:
    image: IMAGE_URL
         resources:
           limits:
            nvidia.com/gpu: "GPU_UNITS"

    Sostituisci GPU_UNITS con il valore GPU desiderato in unità GPU Kubernetes. Ad esempio, specifica 1 per 1 GPU.

  3. Esegui il deployment del file YAML e sostituisci il servizio con la nuova configurazione eseguendo questo comando:

    gcloud run services replace service.yaml

Per saperne di più su prestazioni e costi delle GPU, consulta GPU.