Utilizzo di NVIDIA GPU Cloud con Oracle Cloud Infrastructure

NVIDIA GPU Cloud (NGC) è una piattaforma cloud accelerata dalla GPU ottimizzata per il deep learning e il computing scientifico. Questo argomento fornisce una panoramica su come utilizzare NGC con Oracle Cloud Infrastructure.

NVIDIA rende disponibile su Oracle Cloud Infrastructure un'immagine di computazione personalizzata ottimizzata per le GPU NVIDIA Tesla Volta e Pascal. L'esecuzione di container NGC su questa istanza offre prestazioni ottimali per i job di deep learning.

Prima di iniziare

Preparare le seguenti cose:

Avvio di un'istanza basata sull'immagine NGC

Uso della console

  1. Aprire la console. Per i passi, vedere Accesso per la prima volta.
  2. Apri il menu di navigazione e seleziona Computazione. In Computazione, selezionare Istanze.
  3. Selezionare un compartimento per il quale si dispone dell'autorizzazione a lavorare.
  4. Fare clic su Crea istanza
  5. Immettere un nome per l'istanza. Evitare di fornire informazioni riservate.

  6. Nella sezione Posizionamento, selezionare il dominio di disponibilità in cui si desidera creare l'istanza.
  7. Nella sezione Immagine e figura:
    1. Nella scheda Forma fare clic su Modifica forma. Quindi, effettuare le operazioni riportate di seguito.
      1. Per Tipo di istanza, selezionare Virtual Machine o Bare Metal Machine.

      2. Selezionare una forma GPU per l'istanza. Per ulteriori informazioni sulle forme GPU, vedere Forme GPU Virtual Machine e Forme GPU Bare Metal.

        Importante

        Per accedere alle forme GPU, la tenancy deve avere una quota GPU. Se la tenancy non dispone di una quota GPU, le forme GPU non verranno incluse nella lista di forme. Per ulteriori informazioni, vedere Informazioni preliminari.
      3. Fare clic su Seleziona forma.
    2. Per selezionare l'immagine NGC, nella scheda Immagine fare clic su Modifica immagine. Quindi effettuare le operazioni riportate di seguito.
      Importante

      Per accedere alle immagini NVIDIA GPU Cloud, la tenancy deve avere una quota GPU ed è necessario selezionare una forma GPU.
      1. Nell'elenco Origine immagine selezionare Immagini Oracle.
      2. Selezionare la casella di controllo accanto all'immagine NVIDIA GPU Cloud Machine.
      3. Rivedere e accettare le condizioni d'uso, quindi fare clic su Seleziona immagine.
  8. Nella sezione Networking, lasciare selezionata l'opzione Seleziona rete cloud virtuale esistente, quindi selezionare il compartimento della rete cloud virtuale (VCN), la VCN, il compartimento della subnet e la subnet.

  9. Nella sezione Aggiungi chiavi SSH caricare la parte della chiave pubblica della coppia di chiavi che si desidera utilizzare per l'accesso SSH all'istanza. Cercare il file chiave che si desidera caricare oppure trascinare il file nella casella.

  10. Fare clic su Crea.

Ora dovresti vedere l'istanza di NGC con lo stato di Provisioning. Dopo aver modificato lo stato in In esecuzione, è possibile connettersi all'istanza. Per informazioni generali sull'avvio delle istanze di computazione, vedere Creazione di un'istanza.

Per i passi per accedere e utilizzare l'istanza, vedere gli argomenti riportati di seguito.

Quando ci si connette all'istanza utilizzando SSH, viene richiesta la chiave API NGC. Se fornisci la chiave API al prompt, l'istanza esegue automaticamente il login al registro dei container NGC in modo da poter eseguire i container dal registro. È possibile scegliere di non fornire la chiave API al prompt e comunque eseguire il login all'istanza. È quindi possibile eseguire il login in un secondo momento al registro contenitore NGC. Per ulteriori informazioni, vedere Login a NGC Container Registry.

Uso dell'interfaccia CLI

Oracle Cloud Infrastructure fornisce un'interfaccia della riga di comando (CLI, Command Line Interface) che puoi utilizzare per completare i task. Per ulteriori informazioni, vedere Avvio rapido e Configurazione dell'interfaccia CLI.

Utilizzare il comando launch per creare un'istanza, specificando image for sourceType e l'OCID immagine ocid1.image.oc1..aaaaaaaaknl6phck7e3iuii4r4axpwhenw5qtnnsk3tqppajdjzb5nhoma3q in InstanceSourceDetails for LaunchInstanceDetails.

Uso del servizio per volumi a blocchi per la memorizzazione dati persistente

Quando si utilizza NGC, è possibile utilizzare il servizio Volume a blocchi per lo storage dei dati. Per ulteriori informazioni, vedere Panoramica del volume a blocchi. Per creare e utilizzare il servizio Volume a blocchi, vedere i task riportati di seguito.

È anche possibile utilizzare l'interfaccia CLI per gestire i volumi a blocchi, vedere i comandi volume.

Uso del servizio di storage degli oggetti per lo storage dei dati persistente

Puoi utilizzare il servizio di storage degli oggetti per lo storage dei dati quando lavori con NGC. Per ulteriori informazioni, vedere Panoramica dello storage degli oggetti. Per creare e utilizzare il servizio di storage degli oggetti, vedere i task riportati di seguito.

È anche possibile utilizzare l'interfaccia CLI per gestire lo storage degli oggetti. Vedere il comando os.

Esempi di esecuzione di container

È innanzitutto necessario eseguire il login al registro contenitore NGC. È possibile saltare questa sezione se è stata fornita la chiave API quando si esegue il login all'istanza tramite SSH. Se non hai fornito la tua chiave API durante la connessione all'istanza, devi eseguire questo passo.

Per eseguire il login al registro contenitore NGC
  1. Eseguire il comando Docker seguente:

    docker login nvcr.io
  2. Quando viene richiesto un nome utente, immettere $oauthtoken.

  3. Quando viene richiesta una password, immettere la chiave API NGC.

A questo punto puoi eseguire i comandi Docker e accedere al registro dei container NGC dall'istanza.

Esempio: esecuzione formazione MNIST mediante contenitore PyTorch

Questo esempio mostra l'esecuzione dell'esempio MNIST in PyTorch. In questo esempio viene scaricato il set di dati MNIST dal Web.

  1. Estrarre ed eseguire il contenitore PyTorch con i seguenti comandi Docker:

    docker pull nvcr.io/nvidia/pytorch:17.10
    docker run --gpus all --rm -it nvcr.io/nvidia/pytorch:17.10
  2. Eseguire l'esempio MNIST con i comandi seguenti:

    cd /opt/pytorch/examples/mnist
    python main.py
Esempio: esecuzione formazione MNIST mediante contenitore TensorFlow

Questo esempio mostra l'esecuzione dell'esempio MNIST in TensorFlow. In questo esempio viene scaricato il set di dati MNIST dal Web.

  1. Estrarre ed eseguire il contenitore TensorFlow con i seguenti comandi Docker:

    docker pull nvcr.io/nvidia/tensorflow:17.10
    docker run --gpus all --rm -it nvcr.io/nvidia/tensorflow:17.10
  2. Eseguire l'esempio MNIST_with_summaries con i comandi seguenti:

    cd /opt/tensorflow/tensorflow/examples/tutorials/mnist
    python mnist_with_summaries.py