Utilisation de NVIDIA GPU Cloud avec Oracle Cloud Infrastructure
NVIDIA GPU Cloud (NGC) est une plate-forme en nuage accélérée par GPU pour l'apprentissage en profondeur et le calcul scientifique. Cette rubrique présente un aperçu de l'utilisation de NGC avec Oracle Cloud Infrastructure.
NVIDIA met à disposition dans Oracle Cloud Infrastructure une image personnalisée du service Calcul optimisée pour les processeurs graphiques NVIDIA Tesla Volta et Pascal. L'exécution de conteneurs NGC sur cette instance fournit une performance optimale pour les travaux d'apprentissage en profondeur.
Avant de commencer
Préparez les éléments suivants :
-
Location Oracle Cloud Infrastructure avec quota GPU. Pour plus d'informations sur les quotas, voir Quotas du service de calcul.
-
Réseau en nuage dans lequel lancer l'instance. Pour plus d'informations sur la configuration des réseaux en nuage, voir Gestion des réseaux en nuage virtuels et des sous-réseaux dans Réseaux en nuage virtuels et sous-réseaux.
-
Une paire de clés à utiliser pour se connecter à l'instance au moyen de SSH. Pour des informations sur la génération d'une paire de clés, voir Gestion des paires de clés sur des instances Linux.
-
Un groupe et une politique de sécurité configurés pour le service Stockage de fichiers. Pour plus d'informations, voir Gestion des groupes, Gestion des domaines d'identité et Informations détaillées sur le service de stockage de fichiers.
-
Une clé d'API NGC pour l'authentification auprès du service NGC.
Pour générer votre clé d'API NGC-
Connectez-vous au site Web NGC.
-
Dans la page de registre NGC, cliquez sur Obtenir la clé d'API.
-
Cliquez sur Générer une clé d'API, puis cliquez sur Confirmer pour générer la clé. Si vous avez déjà une clé d'API, elle deviendra non valide une fois que vous générez une nouvelle clé.
-
Lancement d'une instance basée sur l'image NGC
Utilisation de la console
- Ouvrez la console. Pour les étapes, voir Première connexion.
- Ouvrez le menu de navigation et sélectionnez Calcul. Sous Calcul, sélectionnez Instances.
- Sélectionnez un compartiment que vous êtes autorisé à utiliser.
- Cliquez sur Créer une instance.
-
Entrez le nom de l'instance. Évitez d'entrer des informations confidentielles.
- Dans la section Positionnement, sélectionnez le domaine de disponibilité dans lequel vous souhaitez créer l'instance.
- Dans la section Image et forme :
- Sur la carte forme, cliquez sur Modifier la forme. Ensuite, procédez de la façon suivante :
-
Pour le type d'instance , sélectionnez machine virtuelle ou machine sans système d'exploitation.
-
Sélectionnez une forme GPU pour l'instance. Pour plus d'informations sur les formes GPU, voir les formes GPU de machine virtuelle et les formes GPU sans système d'exploitation.
Important
Pour accéder aux formes GPU, votre location doit avoir un quota GPU. Si votre location n'a pas de quota GPU, les formes GPU ne sont pas incluses dans la liste des formes. Pour plus d'informations, voir Avant de commencer. - Cliquez sur Sélectionner une forme.
-
-
Pour sélectionner l'image NGC, sur la carte Image, cliquez sur Modifier l'image. Ensuite, procédez de la façon suivante.Important
Pour accéder aux images NVIDIA GPU Cloud, votre location doit avoir un quota GPU et vous devez sélectionner une forme GPU.- Dans la liste des sources d'image, sélectionnez images Oracle.
- Cochez la case à côté de Image de machine NVIDIA GPU Cloud.
- Vérifiez et acceptez les conditions d'utilisation, puis cliquez sur Sélectionner une image.
- Sur la carte forme, cliquez sur Modifier la forme. Ensuite, procédez de la façon suivante :
-
Dans la section Réseau, laissez l'option Sélectionner un réseau en nuage virtuel existant, puis sélectionnez le compartiment du réseau en nuage virtuel (VCN), le VCN, le compartiment du sous-réseau et le sous-réseau.
-
Dans la section Ajouter des clés SSH, chargez la partie clé publique de la paire de clés que vous voulez utiliser pour l'accès SSH à l'instance. Recherchez le fichier de clés à charger ou déposez-le dans la zone.
-
Cliquez sur Créer.
Vous devriez maintenant voir l'instance NGC avec l'état Provisionnement. Une fois que l'état passe à En cours d'exécution, vous pouvez vous connecter à l'instance. Pour des informations générales sur le lancement des instances de calcul, voir Création d'une instance.
Voir les rubriques suivantes pour les étapes d'accès et d'utilisation de l'instance :
Lorsque vous vous connectez à l'instance à l'aide de SSH, vous êtes invité à entrer la clé d'API NGC. Si vous fournissez la clé d'API à l'invite, l'instance vous connecte automatiquement au registre de conteneurs NGC afin que vous puissiez exécuter des conteneurs. Vous pouvez choisir de ne pas fournir la clé d'API à l'invite et de vous connecter quand même à l'instance. Vous pouvez ensuite vous connecter au registre de conteneurs NGC. Pour plus d'informations, voir Se connecter au registre de conteneurs NGC.
Utilisation de l'interface de ligne de commande
Oracle Cloud Infrastructure fournit une interface de ligne de commande que vous pouvez utiliser pour effectuer des tâches. Pour plus d'informations, voir Démarrage rapide et Configuration de l'interface de ligne de commande.
Utilisez la commande launch pour créer une instance, en indiquant une image pour sourceType et l'OCID de l'image ocid1.image.oc1..aaaaaaaaknl6phck7e3iuii4r4axpwhenw5qtnnsk3tqppajdjzb5nhoma3q dans InstanceSourceDetails pour LaunchInstanceDetails.
Utilisation du service de stockage de fichiers pour le stockage de données persistant
Vous pouvez utiliser le service Stockage de fichiers pour le stockage de données lors de l'utilisation de NGC. Pour plus d'informations, voir Aperçu du service de stockage de fichiers. Voir les tâches suivantes pour créer et utiliser le service Stockage de fichiers :
Utilisation du service de volumes par blocs pour le stockage de données persistant
Vous pouvez utiliser le service Volume par blocs pour le stockage de données lors de l'utilisation de NGC. Pour plus d'informations, voir Aperçu du service de volumes par blocs. Voir les tâches suivantes pour créer et utiliser le service Volume par blocs :
- Création d'un volume par blocs
- Association d'un volume par blocs à une instance
- Connexion à un volume par blocs
Vous pouvez également utiliser l'interface de ligne de commande pour gérer des volumes par blocs; voir les commandes volume.
Utilisation du service de stockage d'objets pour le stockage de données permanent
Vous pouvez utiliser le service de stockage d'objets pour le stockage de données lors de l'utilisation de NGC. Pour plus d'informations, voir Aperçu du stockage d'objets. Voir les tâches suivantes pour créer et utiliser le service de stockage d'objets :
- Création d'un compartiment de stockage d'objets
- Manières d'accéder au stockage d'objets
- Objets de stockage d'objets
- Chargement d'un objet de stockage d'objets dans un seau
Vous pouvez également utiliser l'interface de ligne de commande pour gérer le stockage d'objets, voir la commande os.
Exemples de conteneurs en cours d'exécution
Vous devez d'abord vous connecter au registre de conteneurs NGC. Vous pouvez ignorer cette section si vous avez fourni une clé d'API lors de la connexion à l'instance au moyen de SSH. Si vous n'avez pas fourni de clé d'API lors de la connexion à l'instance, vous devez effectuer cette étape.
-
Exécutez la commande Docker suivante :
docker login nvcr.io -
À l'invite d'un nom d'utilisateur, entrez
$oauthtoken. -
À l'invite d'un mot de passe, entrez votre clé d'API NGC.
À ce stade, vous pouvez exécuter des commandes Docker et accéder au registre de conteneurs NGC à partir de l'instance.
Cet exemple illustre l'exécution de l'exemple MNIST sous PyTorch. Cet exemple télécharge le jeu de données MNIST à partir du Web.
-
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 -
Exécutez l'exemple MNIST avec les commandes suivantes :
cd /opt/pytorch/examples/mnist python main.py
Cet exemple illustre l'exécution de l'exemple MNIST sous TensorFlow. Cet exemple télécharge le jeu de données MNIST à partir du Web.
-
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 -
Exécutez l'exemple MNIST_with_summaries avec les commandes suivantes :
cd /opt/tensorflow/tensorflow/examples/tutorials/mnist python mnist_with_summaries.py