Utilisation de NVIDIA GPU Cloud avec Oracle Cloud Infrastructure

NVIDIA GPU Cloud (NGC) est une plate-forme cloud d'accélération GPU optimisée pour l'apprentissage approfondi et le calcul scientifique. Cette rubrique explique comment utiliser NGC avec Oracle Cloud Infrastructure.

NVIDIA met à disposition sur Oracle Cloud Infrastructure une image Compute personnalisée optimisée pour les GPU NVIDIA Tesla Volta et Pascal. L'exécution de conteneurs NGC sur cette instance fournit des performances optimales pour les travaux d'apprentissage approfondi.

Avant de commencer

Préparez les éléments suivants :

Lancement d'une instance à partir de l'image NGC

Utilisation de la console

  1. Ouvrez la console. Pour connaître les étapes, reportez-vous à la section Connexion initiale.
  2. Ouvrez le menu de navigation et sélectionnez Compute. Sous Compute, sélectionnez Instances.
  3. Sélectionnez un compartiment dans lequel vous êtes autorisé à travailler.
  4. Cliquez sur Create instance (Créer une instance).
  5. Saisissez un nom pour l'instance. Evitez de saisir des informations confidentielles.

  6. Dans la section Placement, sélectionnez le domaine de disponibilité dans lequel vous souhaitez créer l'instance.
  7. Dans la section Image et Forme :
    1. Sur la carte Forme, cliquez sur Modifier une forme. Ensuite, effectuez les opérations suivantes :
      1. Pour type d'instance, sélectionnez Machine virtuelle ou Machine bare metal.

      2. Sélectionnez une forme GPU pour l'instance. Pour plus d'informations sur les formes GPU, reportez-vous aux formes GPU de machine virtuelle et aux formes GPU Bare Metal.

        Important

        Pour accéder aux formes GPU, votre location doit disposer d'un quota GPU. Si la location n'a pas de quota GPU, les formes GPU ne figurent pas dans la liste des formes. Pour plus d'informations, reportez-vous à Avant de commencer.
      3. Cliquez sur Sélectionner une forme,
    2. Pour sélectionner l'image NGC, sur la carte Image, cliquez sur Modifier l'image. Ensuite, procédez comme suit.
      Important

      Pour accéder aux images NVIDIA GPU Cloud, votre location doit disposer d'un quota GPU et vous devez sélectionner une forme GPU.
      1. Dans la liste Source de l'image, sélectionnez Images Oracle.
      2. Cochez la case en regard de l'option Image de machine NVIDIE GPU Cloud.
      3. Consultez et acceptez les conditions d'utilisation, puis cliquez sur Sélectionner une image (Select image).
  8. Dans la section Fonctions de réseau, laissez l'option Sélectionner un réseau cloud virtuel existant sélectionnée, puis sélectionnez le compartiment du réseau cloud virtuel (VCN), le VCN, le compartiment du sous-réseau et le sous-réseau.

  9. Dans la section Ajouter une clé SSH, téléchargez la partie de clé publique de la paire de clés à utiliser pour l'accès SSH à l'instance. Accédez au fichier de clés à télécharger, ou glissez-déplacez le fichier dans la zone.

  10. Cliquez sur Créer.

L'instance NGC doit maintenant apparaître avec l'état Provisionnement. Une fois que l'état est devenu En cours d'exécution, vous pouvez vous connecter à l'instance. Pour obtenir des informations générales sur le lancement des instances de calcul, reportez-vous à Création d'une instance.

Reportez-vous aux rubriques suivantes pour obtenir la procédure permettant d'accéder à l'instance et de l'utiliser :

Lorsque vous vous connectez à l'instance à l'aide de SSH, vous êtes invité à indiquer la clé d'API NGC. Si vous indiquez la clé d'API à l'invite, l'instance vous connecte automatiquement au registre du conteneur NGC pour que vous puissiez exécuter des conteneurs à partir du registre. Vous pouvez choisir de ne pas fournir la clé d'API à l'invite et de vous connecter quand même à l'instance. Vous pourrez vous connecter ultérieurement au registre du conteneur NGC. Pour plus d'informations, reportez-vous à Connexion au registre du conteneur NGC.

Utilisation de l'interface de ligne de commande

Oracle Cloud Infrastructure fournit une interface de ligne de commande qui permet d'effectuer des tâches. Pour plus d'informations, reportez-vous à Démarrage rapide et à Configuration de l'interface de ligne de commande.

Utilisez la commande de lancement pour créer une instance, en indiquant l'image pour sourceType et l'OCID d'image ocid1.image.oc1..aaaaaaaaknl6phck7e3iuii4r4axpwhenw5qtnnsk3tqppajdjzb5nhoma3q dans InstanceSourceDetailspour LaunchInstanceDetails.

Utilisation du service Block Volume pour le stockage de données persistantes

Vous pouvez utiliser le service Block Volume pour les services de stockage de données lorsque vous travaillez avec NGC. Pour plus d'informations, reportez-vous à Présentation de Block Volume. Reportez-vous aux tâches suivantes pour créer et utiliser le service Block Volume :

Vous pouvez également utiliser l'interface de ligne de commande pour gérer les volumes de blocs. Reportez-vous aux commandes de volume.

Utilisation du service Object Storage pour le volume de données persistantes

Vous pouvez avoir recours au service Object Storage pour le stockage des données lorsque vous travaillez avec NGC. Pour plus d'informations, reportez-vous à Présentation d'Object Storage. Pour créer le service Object Storage et l'utiliser, reportez-vous aux tâches suivantes :

Vous pouvez également utiliser l'interface de ligne de commande pour gérer le stockage d'objets. Reportez-vous à la commande os.

Exemples de conteneurs en cours d'exécution

Vous devez d'abord vous connecter au registre du conteneur NGC. Vous pouvez ignorer cette section si vous avez indiqué votre clé d'API lors de la connexion à l'instance via SSH. Si vous n'avez pas fourni votre clé d'API lors de la connexion à l'instance, vous devez effectuer cette étape.

Procédure de connexion au registre du conteneur NGC
  1. Exécutez la commande Docker suivante :

    docker login nvcr.io
  2. Lorsque vous êtes invité à saisir un nom utilisateur, entrez $oauthtoken.

  3. Lorsque vous êtes invité à entrer un mot de passe, entrez la clé d'API NGC.

A ce stade, vous pouvez exécuter des commandes Docker et accéder au registre du conteneur NGC à partir de l'instance.

Exemple : exécution d'apprentissage MNIST à l'aide du conteneur PyTorch

Cet exemple illustre l'exécution de l'exemple MNIST sous PyTorch. Dans cet exemple, l'ensemble de données MNIST est téléchargé à partir du Web.

  1. Extrayez et exécutez le conteneur PyTorch avec les commandes Docker suivantes :

    docker pull nvcr.io/nvidia/pytorch:17.10
    docker run --gpus all --rm -it nvcr.io/nvidia/pytorch:17.10
  2. Exécutez l'exemple MNIST avec les commandes suivantes :

    cd /opt/pytorch/examples/mnist
    python main.py
Exemple : exécution d'apprentissage MNIST à l'aide du conteneur TensorFlow

Cet exemple illustre l'exécution de l'exemple MNIST sous TensorFlow. Dans cet exemple, l'ensemble de données MNIST est téléchargé à partir du Web.

  1. Extrayez et exécutez le conteneur TensorFlow avec les commandes Docker suivantes :

    docker pull nvcr.io/nvidia/tensorflow:17.10
    docker run --gpus all --rm -it nvcr.io/nvidia/tensorflow:17.10
  2. Exécutez l'exemple MNIST_with_summaries avec les commandes suivantes :

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