Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Praktik terbaik untuk meminimalkan gangguan selama peningkatan driver GPU
SageMaker Model Deployment memutakhirkan GPU driver pada instans ML untuk opsi Inferensi Real-time, Batch, dan Asynchronous dari waktu ke waktu untuk memberi pelanggan akses ke peningkatan dari penyedia driver. Di bawah ini Anda dapat melihat GPU versi yang didukung untuk setiap opsi Inferensi. Versi driver yang berbeda dapat mengubah cara model Anda berinteraksi dengan. GPUs Di bawah ini adalah beberapa strategi untuk membantu Anda memahami cara kerja aplikasi Anda dengan versi driver yang berbeda.
Versi saat ini dan keluarga instans yang didukung
Amazon SageMaker Inference mendukung driver dan keluarga instans berikut:
Layanan | GPU | Versi Driver | Tipe instans |
---|---|---|---|
Real-time | NVIDIA | 470.57.02 | ml.p2.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.g4dn.*, ml.g5. * |
535.54.03 | ml.p5.*, ml.g6. * | ||
Batch | NVIDIA | 470.57.02 | ml.p2.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.g4dn.*, ml.g5* |
Inferensi Asinkron | NVIDIA | 470.57.02 | ml.p2.*, ml.p3.*, ml.p4d.*, ml.p4de.*, ml.g4dn.*, ml.g5* |
535.54.03 | ml.p5.*, ml.g6. * |
Memecahkan masalah wadah model Anda dengan kemampuan GPU
Jika Anda mengalami masalah saat menjalankan GPU beban kerja, lihat panduan berikut:
Jalankan perintah nvidia-smi
(NVIDIASystem Management Interface) dari dalam wadah Docker. Jika Antarmuka Manajemen NVIDIA Sistem mendeteksi kesalahan GPU deteksi atau kesalahan NVIDIA inisialisasi, itu akan mengembalikan pesan kesalahan berikut:
Failed to initialize NVML: Driver/library version mismatch
Berdasarkan kasus penggunaan Anda, ikuti praktik terbaik berikut ini untuk mengatasi kegagalan atau kesalahan:
Ikuti rekomendasi praktik terbaik yang dijelaskan dalam Jika Anda membawa wadah model (BYO) Anda sendiri dropdown.
Ikuti rekomendasi praktik terbaik yang dijelaskan dalam Jika Anda menggunakan lapisan CUDA kompatibilitas dropdown.
Lihat halaman Antarmuka Manajemen NVIDIA Sistem
Jika GPU instans Anda menggunakan versi NVIDIA driver yang tidak kompatibel dengan CUDA versi dalam wadah Docker, maka penerapan titik akhir akan gagal dengan pesan kesalahan berikut:
Failure reason CannotStartContainerError. Please ensure the model container for variant <variant_name> starts correctly when invoked with 'docker run <image> serve'
Berdasarkan kasus penggunaan Anda, ikuti praktik terbaik berikut ini untuk mengatasi kegagalan atau kesalahan:
Ikuti rekomendasi praktik terbaik yang dijelaskan dalam Driver yang bergantung pada wadah saya lebih besar dari versi pada GPU instance ML. dropdown.
Ikuti rekomendasi praktik terbaik yang dijelaskan dalam Jika Anda menggunakan lapisan CUDA kompatibilitas dropdown.
Praktik terbaik untuk bekerja dengan versi driver yang tidak cocok
Berikut ini memberikan informasi tentang cara memperbarui GPU driver Anda:
Tidak ada tindakan yang diperlukan. NVIDIAmenyediakan kompatibilitas mundur.
Jika ini adalah perbedaan versi kecil, tidak ada tindakan yang diperlukan. NVIDIAmenyediakan kompatibilitas maju versi minor.
Jika itu adalah perbedaan versi utama, CUDA Compatibility Package perlu diinstal. Silakan merujuk ke CUDACompatibility Package
penting
CUDACompatibility Package tidak kompatibel ke belakang sehingga perlu dinonaktifkan jika versi driver pada instance lebih besar dari versi CUDA Compatibility Package.
Pastikan tidak ada paket NVIDIA driver yang dibundel dalam gambar yang dapat menyebabkan konflik dengan versi NVIDIA driver host.
Untuk memverifikasi apakah platform versi driver Nvidia mendukung versi CUDA Compatibility Package yang diinstal dalam wadah model, lihat CUDAdokumentasiENTRYPOINT
Skrip menunjukkan cara mengganti penggunaan CUDA Paket Kompatibilitas secara dinamis berdasarkan versi driver Nvidia yang terdeteksi pada host yang disebarkan untuk wadah model Anda. Saat SageMaker merilis versi driver Nvidia yang lebih baru, Paket CUDA Kompatibilitas yang diinstal dapat dimatikan secara otomatis jika CUDA aplikasi didukung secara native pada driver baru.
#!/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