Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Bonnes pratiques pour minimiser les interruptions lors de la mise à jour des pilotes de GPU.

Mode de mise au point
Bonnes pratiques pour minimiser les interruptions lors de la mise à jour des pilotes de GPU. - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

SageMaker AI Model Deployment met à jour les pilotes GPU sur les instances ML pour les options d'inférence en temps réel, par lots et asynchrone au fil du temps afin de permettre aux clients d'accéder aux améliorations apportées par les fournisseurs de pilotes. Vous pouvez voir ci-dessous la version du GPU soumise à chaque option d'inférence. Les différentes versions du pilote peuvent modifier la façon dont votre modèle interagit avec le GPUs. Vous trouverez ci-dessous quelques politiques pour vous aider à comprendre comment votre application fonctionne avec différentes versions de pilotes.

Versions actuelles et familles d'instances soumises à la gestion des versions

Amazon SageMaker AI Inference prend en charge les pilotes et familles d'instances suivants :

Service GPU Versions du pilote Types d’instances
Temps réel NVIDIA 47057,02 ml.p2.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.g4dn.*, ml.g5. *
535,54,03 ml.p5.*, ml.g6. *
Par lots NVIDIA 47057,02 ml.p2.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.g4dn.*, ml.g5*
Inférence asynchrone NVIDIA 47057,02 ml.p2.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.g4dn.*, ml.g5*
535,54,03 ml.p5.*, ml.g6. *

Dépannage de votre conteneur de modèles avec les capacités du GPU

Si vous rencontrez un problème lors de l'exécution de votre charge de travail GPU, consultez les conseils suivants :

Exécutez la commande nvidia-smi (NVIDIA System Management Interface) à partir du conteneur Docker. Si l'interface de gestion du système NVIDIA détecte une erreur de détection du GPU ou une erreur d'initialisation NVIDIA, elle renvoie le message d'erreur suivant :

Failed to initialize NVML: Driver/library version mismatch

En fonction de votre cas d'utilisation, suivez ces bonnes pratiques pour résoudre l'échec ou l'erreur :

Reportez-vous à la page de l'interface de gestion du système NVIDIA sur le site Web de NVIDIA pour obtenir plus d'informations.

Échec de la détection de la carte GPU ou erreur d'initialisation NVIDIA

Exécutez la commande nvidia-smi (NVIDIA System Management Interface) à partir du conteneur Docker. Si l'interface de gestion du système NVIDIA détecte une erreur de détection du GPU ou une erreur d'initialisation NVIDIA, elle renvoie le message d'erreur suivant :

Failed to initialize NVML: Driver/library version mismatch

En fonction de votre cas d'utilisation, suivez ces bonnes pratiques pour résoudre l'échec ou l'erreur :

Reportez-vous à la page de l'interface de gestion du système NVIDIA sur le site Web de NVIDIA pour obtenir plus d'informations.

Si votre instance de GPU utilise des versions de pilote NVIDIA qui ne sont pas compatibles avec la version CUDA du conteneur Docker, le déploiement d'un point de terminaison échouera avec le message d'erreur suivant :

Failure reason CannotStartContainerError. Please ensure the model container for variant <variant_name> starts correctly when invoked with 'docker run <image> serve'

En fonction de votre cas d'utilisation, suivez ces bonnes pratiques pour résoudre l'échec ou l'erreur :

CannotStartContainerError

Si votre instance de GPU utilise des versions de pilote NVIDIA qui ne sont pas compatibles avec la version CUDA du conteneur Docker, le déploiement d'un point de terminaison échouera avec le message d'erreur suivant :

Failure reason CannotStartContainerError. Please ensure the model container for variant <variant_name> starts correctly when invoked with 'docker run <image> serve'

En fonction de votre cas d'utilisation, suivez ces bonnes pratiques pour résoudre l'échec ou l'erreur :

Bonnes pratiques pour travailler avec des versions de pilotes non concordantes

Vous trouverez ci-dessous des informations sur la façon de mettre à jour le pilote de votre GPU :

Aucune action n’est requise. NVIDIA assure la rétrocompatibilité.

Le pilote dont dépend mon conteneur est inférieur à la version de l'instance de GPU ML.

Aucune action n’est requise. NVIDIA assure la rétrocompatibilité.

S'il s'agit d'une différence de version mineure, aucune action n'est requise. NVIDIA assure la compatibilité avec les versions mineures.

S'il s'agit d'une différence de version majeure, le package de compatibilité CUDA devra être installé. Veuillez consulter la section CUDA Compatibility Package (Package de compatibilité CUDA) dans la documentation NVIDIA.

Important

Le package de compatibilité CUDA n'étant pas rétrocompatible, il doit être désactivé si la version du pilote de l'instance est supérieure à celle du package de compatibilité CUDA.

S'il s'agit d'une différence de version mineure, aucune action n'est requise. NVIDIA assure la compatibilité avec les versions mineures.

S'il s'agit d'une différence de version majeure, le package de compatibilité CUDA devra être installé. Veuillez consulter la section CUDA Compatibility Package (Package de compatibilité CUDA) dans la documentation NVIDIA.

Important

Le package de compatibilité CUDA n'étant pas rétrocompatible, il doit être désactivé si la version du pilote de l'instance est supérieure à celle du package de compatibilité CUDA.

Assurez-vous qu'aucun package de pilote NVIDIA n'est inclus dans l'image, ce qui pourrait entraîner un conflit avec la version du pilote NVIDIA de l'hôte.

Assurez-vous qu'aucun package de pilote NVIDIA n'est inclus dans l'image, ce qui pourrait entraîner un conflit avec la version du pilote NVIDIA de l'hôte.

Pour vérifier si la version du pilote Nvidia de la plateforme prend en charge la version du package de compatibilité CUDA installée dans le conteneur de modèles, consultez la documentation CUDA (Français non garanti). Si la version du pilote Nvidia de la plateforme ne prend pas en charge la version du package de compatibilité CUDA, vous pouvez désactiver ou supprimer le package de compatibilité CUDA de l'image de conteneur de modèles. Si la version des bibliothèques de compatibilité CUDA est prise en charge par la dernière version du pilote Nvidia, nous vous suggérons d'activer le package de compatibilité CUDA en fonction de la version du pilote Nvidia détectée pour la compatibilité future en ajoutant l'extrait de code ci-dessous dans le script shell de démarrage de conteneur (dans le script ENTRYPOINT).

Le script montre comment changer dynamiquement l'utilisation du package de compatibilité CUDA en fonction de la version du pilote Nvidia détectée sur l'hôte déployé pour votre conteneur de modèles. Lors de SageMaker la sortie d'une version plus récente du pilote Nvidia, le Package de compatibilité CUDA installé peut être désactivé automatiquement si l'application CUDA est prise en charge nativement sur le nouveau pilote.

#!/bin/bash verlte() { [ "$1" = "$2" ] && return 1 || [ "$2" = "`echo -e "$1\n$2" | sort -V | head -n1`" ] } if [ -f /usr/local/cuda/compat/libcuda.so.1 ]; then cat /usr/local/cuda/version.txt CUDA_COMPAT_MAX_DRIVER_VERSION=$(readlink /usr/local/cuda/compat/libcuda.so.1 |cut -d'.' -f 3-) echo "CUDA compat package requires Nvidia driver ⩽${CUDA_COMPAT_MAX_DRIVER_VERSION}" NVIDIA_DRIVER_VERSION=$(sed -n 's/^NVRM.*Kernel Module *\([0-9.]*\).*$/\1/p' /proc/driver/nvidia/version 2>/dev/null || true) echo "Current installed Nvidia driver version is ${NVIDIA_DRIVER_VERSION}" if [ $(verlte $CUDA_COMPAT_MAX_DRIVER_VERSION $NVIDIA_DRIVER_VERSION) ]; then echo "Setup CUDA compatibility libs path to LD_LIBRARY_PATH" export LD_LIBRARY_PATH=/usr/local/cuda/compat:$LD_LIBRARY_PATH echo $LD_LIBRARY_PATH else echo "Skip CUDA compat libs setup as newer Nvidia driver is installed" fi else echo "Skip CUDA compat libs setup as package not found" fi

Pour vérifier si la version du pilote Nvidia de la plateforme prend en charge la version du package de compatibilité CUDA installée dans le conteneur de modèles, consultez la documentation CUDA (Français non garanti). Si la version du pilote Nvidia de la plateforme ne prend pas en charge la version du package de compatibilité CUDA, vous pouvez désactiver ou supprimer le package de compatibilité CUDA de l'image de conteneur de modèles. Si la version des bibliothèques de compatibilité CUDA est prise en charge par la dernière version du pilote Nvidia, nous vous suggérons d'activer le package de compatibilité CUDA en fonction de la version du pilote Nvidia détectée pour la compatibilité future en ajoutant l'extrait de code ci-dessous dans le script shell de démarrage de conteneur (dans le script ENTRYPOINT).

Le script montre comment changer dynamiquement l'utilisation du package de compatibilité CUDA en fonction de la version du pilote Nvidia détectée sur l'hôte déployé pour votre conteneur de modèles. Lors de SageMaker la sortie d'une version plus récente du pilote Nvidia, le Package de compatibilité CUDA installé peut être désactivé automatiquement si l'application CUDA est prise en charge nativement sur le nouveau pilote.

#!/bin/bash verlte() { [ "$1" = "$2" ] && return 1 || [ "$2" = "`echo -e "$1\n$2" | sort -V | head -n1`" ] } if [ -f /usr/local/cuda/compat/libcuda.so.1 ]; then cat /usr/local/cuda/version.txt CUDA_COMPAT_MAX_DRIVER_VERSION=$(readlink /usr/local/cuda/compat/libcuda.so.1 |cut -d'.' -f 3-) echo "CUDA compat package requires Nvidia driver ⩽${CUDA_COMPAT_MAX_DRIVER_VERSION}" NVIDIA_DRIVER_VERSION=$(sed -n 's/^NVRM.*Kernel Module *\([0-9.]*\).*$/\1/p' /proc/driver/nvidia/version 2>/dev/null || true) echo "Current installed Nvidia driver version is ${NVIDIA_DRIVER_VERSION}" if [ $(verlte $CUDA_COMPAT_MAX_DRIVER_VERSION $NVIDIA_DRIVER_VERSION) ]; then echo "Setup CUDA compatibility libs path to LD_LIBRARY_PATH" export LD_LIBRARY_PATH=/usr/local/cuda/compat:$LD_LIBRARY_PATH echo $LD_LIBRARY_PATH else echo "Skip CUDA compat libs setup as newer Nvidia driver is installed" fi else echo "Skip CUDA compat libs setup as package not found" fi
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.