Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Catatan
Beberapa jenis instans berkemampuan GPU berada di Beta
Gambaran Umum
Azure Databricks mendukung komputasi yang dipercepat dengan unit pemrosesan grafis (GPU). Artikel ini menjelaskan cara membuat komputasi dengan instans berkemampuan GPU dan menjelaskan driver dan pustaka GPU yang diinstal pada instans tersebut.
Untuk mempelajari selengkapnya tentang pembelajaran mendalam tentang komputasi berkemampuan GPU, lihat Pembelajaran mendalam.
Membuat komputasi GPU
Membuat komputasi GPU mirip dengan membuat komputasi apa pun. Ingatlah hal berikut ini:
- Kotak centang Pembelajaran mesin harus dicentang. Versi ML GPU dipilih secara otomatis berdasarkan jenis pekerja.
- Kotak centang Akselerasi Foton harus tidak dicentang. Photon tidak didukung dengan jenis instans GPU.
- Jenis Pekerja harus berupa jenis instans GPU.
- Kotak centang Simpul tunggal dapat dicentang untuk mendapatkan satu instans GPU.
Proses untuk mengonfigurasi instans GPU menggunakan API Kluster bervariasi tergantung pada apakah kind bidang diatur.
kind menentukan apakah permintaan Anda menggunakan spesifikasi formulir sederhana :
- Jika
kind = CLASSIC_PREVIEW, atur"use_ml_runtime": true. - Jika Anda tidak mengatur
kindbidang, aturspark_versionke versi berkemampuan GPU, seperti 15.4.x-gpu-ml-scala2.12.
Jenis instans yang didukung
Peringatan
Azure Databricks tidak akan lagi mendukung peluncuran komputasi menggunakan seri instans NC v3 karena Azure akan menghentikan Nc24rs pada 31 Maret 2025 dan NC6s_v3, NC12s_v3, dan NC24s_v3 pada 30 September 2025.
Azure Databricks mendukung jenis instans berikut:
NCads_H100_v5
- Jenis GPU: GPU NVIDIA H100 NVL
| Nama Instans | Jumlah GPU | Memori GPU | vCPU | Memori CPU |
|---|---|---|---|---|
| Standard_NC40ads_H100_v5 | 1 | 94GB | 40 | 320GB |
| Standard_NC80adis_H100_v5 | 2 | 94GB x 2 | 80 | 640GB |
NC_A100_v4
- Jenis GPU: GPU PCIe NVIDIA A100
| Nama Instans | Jumlah GPU | Memori GPU | vCPU | Memori CPU |
|---|---|---|---|---|
| Standard_NC24ads_A100_v4 | 1 | 80GB | 24 | 220GB |
| Standard_NC48ads_A100_v4 | 1 | 80GB x 2 | 48 | 440GB |
| Standard_NC96ads_A100_v4 | 1 | 80GB x 4 | 96 | 880GB |
NDasrA100_v4
- Jenis GPU: GPU NVIDIA Ampere A100 40GB Tensor Core
| Nama Instans | Jumlah GPU | Memori GPU | vCPU | Memori CPU |
|---|---|---|---|---|
| Standard_ND96asr_v4 | 8 | 40GB x 8 | 96 | 900GB |
NVadsA10_v5
- Jenis GPU: GPU NVIDIA A10
| Nama Instans | Jumlah GPU | Memori GPU | vCPU | Memori CPU |
|---|---|---|---|---|
| Standard_NV36ads_A10_v5 | 1 | 24GB | 36 | 440GB |
| Standard_NV36adms_A10_v5 | 1 | 24GB | 36 | 880GB |
| Standard_NV72ads_A10_v5 | 2 | 24GB x 2 | 72 | 880GB |
NCasT4_v3
- Jenis GPU: GPU NVIDIA T4
| Nama Instans | Jumlah GPU | Memori GPU | vCPU | Memori CPU |
|---|---|---|---|---|
| Standard_NC4as_T4_v3 | 1 | 16GB | 4 | 28GB |
| Standard_NC8as_T4_v3 | 1 | 16GB | 8 | 56GB |
| Standard_NC16as_T4_v3 | 1 | 16GB | 16 | 110GB |
| Standard_NC64as_T4_v3 | 4 | 16GB x 4 | 64 | 440GB |
NC_v3
- Jenis GPU: GPU NVIDIA Tesla V100
| Nama Instans | Jumlah GPU | Memori GPU | vCPU | Memori CPU |
|---|---|---|---|---|
| Standard_NC6s_v3 | 1 | 16GB | 6 | 112GB |
| Standard_NC12s_v3 | 2 | 16GB x 2 | 12 | 224GB |
| Standard_NC24s_v3 | 4 | 16GB x 4 | 24 | 448GB |
| Standard_NC24rs_v3 | 4 | 16GB x 4 | 24 | 448GB |
Lihat Harga Azure Databricks untuk daftar up-to-tanggal jenis instans GPU yang didukung dan wilayah ketersediaannya. Penyebaran Azure Databricks Anda harus berada di wilayah yang didukung untuk meluncurkan komputasi berkemampuan GPU.
Penjadwalan GPU
Penjadwalan GPU mendistribusikan tugas Spark secara efisien di sejumlah besar GPU.
Databricks Runtime mendukung penjadwalan sadar GPU dari Apache Spark 3.0. Azure Databricks melakukan prakonfigurasi pada komputasi GPU.
Catatan
Penjadwalan GPU tidak diaktifkan pada komputasi simpul tunggal.
Penjadwalan GPU untuk AI dan ML
spark.task.resource.gpu.amount adalah satu-satunya konfigurasi Spark yang terkait dengan penjadwalan sadar GPU yang mungkin perlu Anda konfigurasikan.
Konfigurasi default menggunakan satu GPU per tugas, yang merupakan garis besar yang baik untuk beban kerja inferensi terdistribusi dan pelatihan terdistribusi jika Anda menggunakan semua simpul GPU.
Untuk mengurangi overhead komunikasi selama pelatihan terdistribusi, Databricks merekomendasikan pengaturan spark.task.resource.gpu.amount ke jumlah GPU per simpul pekerja dalam konfigurasi Spark komputasi. Ini hanya membuat satu tugas Spark untuk setiap pekerja Spark dan menetapkan semua GPU dalam simpul pekerja tersebut ke tugas yang sama.
Untuk meningkatkan paralelisasi inferensi pembelajaran mendalam terdistribusi, Anda dapat mengatur spark.task.resource.gpu.amount ke nilai pecahan seperti 1/2, 1/3, 1/4, ... 1/N. Ini membuat lebih banyak tugas Spark daripada GPU, memungkinkan tugas yang lebih bersamaan untuk menangani permintaan inferensi secara paralel. Misalnya, jika Anda mengatur spark.task.resource.gpu.amount ke 0.5, 0.33, atau 0.25, maka GPU yang tersedia akan dibagi di antara jumlah tugas ganda, tiga kali lipat, atau empat kali lipat.
Indeks GPU
Untuk tugas PySpark, Azure Databricks secara otomatis memetakan ulang GPU yang ditetapkan ke indeks berbasis nol. Untuk konfigurasi default yang menggunakan satu GPU per tugas, Anda dapat menggunakan GPU default tanpa memeriksa GPU mana yang ditetapkan ke tugas.
Jika Anda mengatur beberapa GPU per tugas, misalnya, 4, indeks GPU yang ditetapkan selalu 0, 1, 2, dan 3. Jika Anda memerlukan indeks fisik GPU yang ditetapkan, Anda bisa mendapatkannya dari variabel lingkungan CUDA_VISIBLE_DEVICES.
Jika Anda menggunakan Scala, Anda bisa mendapatkan indeks GPU yang ditetapkan ke tugas dari TaskContext.resources().get("gpu").
driver NVIDIA GPU, CUDA, dan cuDNN
Secara default, Azure Databricks menginstal driver NVIDIA serta pustaka yang diperlukan untuk menggunakan GPU pada driver Spark dan instans pekerja:
-
Toolkit CUDA yang diinstal di
/usr/local/cuda. - cuDNN: NVIDIA CUDA Deep Neural Network Library.
- NCCL: Pustaka Komunikasi Kolektif NVIDIA.
Versi driver NVIDIA yang disertakan adalah 535.54.03, yang mendukung CUDA 11.0.
Untuk seri jenis instans NV A10 v5, versi driver NVIDIA yang disertakan adalah 535.154.05.
Untuk versi pustaka yang disertakan, lihat catatan rilis untuk versi Runtime bahasa umum Databricks tertentu yang Anda gunakan.
Catatan
Perangkat lunak ini berisi kode sumber yang disediakan oleh NVIDIA Corporation. Secara khusus, untuk mendukung GPU, Azure Databricks menyertakan kode dari Sampel CUDA.
Perjanjian Lisensi Pengguna Akhir (EULA) NVIDIA
Saat Anda memilih "Versi Runtime Databricks" dengan dukungan GPU di Azure Databricks, Anda secara implisit menyetujui syarat dan ketentuan yang diuraikan dalam EULA NVIDIA sehubungan dengan pustaka CUDA, cuDNN, dan Tesla, dan Perjanjian Lisensi Pengguna Akhir NVIDIA (dengan Tambahan NCCL) untuk pustaka NCCL.
Layanan Kontainer Databricks pada komputasi GPU
Penting
Fitur ini ada di Pratinjau Publik.
Anda dapat menggunakan Databricks Container Services pada komputasi dengan GPU untuk membuat lingkungan pembelajaran mendalam portabel dengan pustaka yang disesuaikan. Lihat Menyesuaikan kontainer dengan Layanan Kontainer Databricks untuk instruksi.
Untuk membuat gambar kustom untuk komputasi GPU, Anda harus memilih versi runtime standar alih-alih Databricks Runtime ML untuk GPU. Saat Anda memilih Gunakan kontainer Docker Anda sendiri, Anda dapat memilih komputasi GPU dengan versi runtime standar. Gambar kustom untuk GPU didasarkan pada kontainer CUDA resmi, yang berbeda dari Databricks Runtime ML untuk GPU.
Saat Anda membuat gambar kustom untuk komputasi GPU, Anda tidak dapat mengubah versi driver NVIDIA karena harus cocok dengan versi driver pada komputer host.
databricksruntime
Docker Hub berisi contoh gambar dasar dengan kemampuan GPU. Dockerfiles yang digunakan untuk menghasilkan gambar-gambar ini terletak di kontainer contoh repositori GitHub, yang juga memiliki detail tentang apa yang disediakan gambar contoh dan cara menyesuaikannya.