Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Feljegyzés
Egyes GPU-támogatott példánytípusok Béta állapotban vannak, és ilyenként vannak megjelölve a legördülő listában, amikor kiválasztja az illesztőprogram és a munkavállalói típusokat a számítás létrehozásakor.
Áttekintés
Az Azure Databricks grafikus feldolgozási egységek (GPU-k) segítségével támogatja a gyorsított számítást. Ez a cikk bemutatja, hogyan hozhat létre számítást GPU-kompatibilis példányokkal, és ismerteti az ezeken a példányokon telepített GPU-illesztőprogramokat és kódtárakat.
A GPU-kompatibilis számításokkal kapcsolatos mély tanulásról további információt a Mély tanulás című témakörben talál.
GPU-számítás létrehozása
A GPU-számítás létrehozása hasonló bármely számítás létrehozásához. Tartsa szem előtt a következőket:
- A Gépi tanulás jelölőnégyzetet be kell jelölni. A GPU ML-verziót a rendszer automatikusan választja ki a feldolgozó típusa alapján.
- A Foton gyorsítás jelölőnégyzetét nem kell bejelölni. A photon nem támogatott GPU-példánytípusok esetén.
- A feldolgozó típusának GPU-példánytípusnak kell lennie.
- Az egycsomópontos jelölőnégyzet bejelölhető egyetlen GPU-példány lekéréséhez.
A GPU-példányok Fürtök API-val történő konfigurálásának folyamata attól függően változik, hogy a kind mező be van-e állítva.
kind meghatározza, hogy a kérés az egyszerű űrlap-specifikációt használja-e:
- Ha
kind = CLASSIC_PREVIEW, állítsa be"use_ml_runtime": true. - Ha nem állítja be a
kindmezőt, állítsa aspark_versionGPU-kompatibilis verzióra, például a 15.4.x-gpu-ml-scala2.12-es verzióra.
Támogatott példánytípusok
Figyelmeztetés
Az Azure Databricks megszünteti az NC v3 példánytípus-sorozattal történő számítás elindításának támogatását, mivel az Azure elavulttá nyilvánítja a Nc24rs-t 2025. március 31-ig és az NC6s_v3, NC12s_v3, valamint NC24s_v3 példánytípusokat 2025. szeptember 30-ig.
Az Azure Databricks a következő példánytípusokat támogatja:
NCads_H100_v5
- GPU típusa: NVIDIA H100 NVL GPU
| Példány neve | GPU-k száma | GPU-memória | vCPU-k | Processzormemória |
|---|---|---|---|---|
| Standard_NC40ads_H100_v5 | 1 | 94 GB | 40 | 320 GB |
| Standard_NC80adis_H100_v5 | 2 | 94 GB x 2 | 80 | 640 GB |
NC_A100_v4
- GPU típusa: NVIDIA A100 PCIe GPU
| Példány neve | GPU-k száma | GPU-memória | vCPU-k | Processzormemória |
|---|---|---|---|---|
| Standard_NC24ads_A100_v4 | 1 | 80 GB | 24 | 220 GB |
| Standard_NC48ads_A100_v4 | 1 | 80 GB x 2 | 48 | 440 GB |
| Standard_NC96ads_A100_v4 | 1 | 80 GB x 4 | 96 | 880 GB |
NDasrA100_v4
- GPU típusa: NVIDIA Ampere A100 40 GB Tensor Core GPU
| Példány neve | GPU-k száma | GPU-memória | vCPU-k | Processzormemória |
|---|---|---|---|---|
| Standard_ND96asr_v4 | 8 | 40 GB x 8 | 96 | 900 GB |
NVadsA10_v5
- GPU típusa: NVIDIA A10 GPU
| Példány neve | GPU-k száma | GPU-memória | vCPU-k | Processzormemória |
|---|---|---|---|---|
| Standard_NV36ads_A10_v5 | 1 | 24 GB | 36 | 440 GB |
| Standard_NV36adms_A10_v5 | 1 | 24 GB | 36 | 880 GB |
| Standard_NV72ads_A10_v5 | 2 | 24 GB x 2 | 72 | 880 GB |
NCasT4_v3
- GPU típusa: NVIDIA T4 GPU
| Példány neve | GPU-k száma | GPU-memória | vCPU-k | Processzormemória |
|---|---|---|---|---|
| Standard_NC4as_T4_v3 | 1 | 16 GB | 4 | 28 GB |
| Standard_NC8as_T4_v3 | 1 | 16 GB | 8 | 56 GB |
| Standard_NC16as_T4_v3 | 1 | 16 GB | 16 | 110 GB |
| Standard_NC64as_T4_v3 | 4 | 16 GB x 4 | 64 | 440 GB |
NC_v3
- GPU típusa: NVIDIA Tesla V100 GPU
| Példány neve | GPU-k száma | GPU-memória | vCPU-k | Processzormemória |
|---|---|---|---|---|
| Standard_NC6s_v3 | 1 | 16 GB | 6 | 112 GB |
| Standard_NC12s_v3 | 2 | 16 GB x 2 | 12 | 224 GB |
| Standard_NC24s_v3 | 4 | 16 GB x 4 | 24 | 448 GB |
| Standard_NC24rs_v3 | 4 | 16 GB x 4 | 24 | 448 GB |
A támogatott GPU-példánytípusok és azok rendelkezésre állási régióinak up-todátumlistájáért tekintse meg Azure Databricks díjszabási. Az Azure Databricks üzembe helyezésének egy támogatott régióban kell lennie a GPU-kompatibilis számítás elindításához.
GPU-ütemezés
A GPU-ütemezés nagy számú GPU-ban hatékonyan osztja el a Spark-feladatokat.
A Databricks Runtime támogatja az Apache Spark 3.0 GPU-kompatibilis ütemezését. Az Azure Databricks előre konfigurálja a GPU-számításhoz.
Feljegyzés
A GPU-ütemezés nincs engedélyezve az egycsomópontos számításban.
GPU-ütemezés mesterséges intelligencia és gépi tanulás számára
spark.task.resource.gpu.amount A GPU-kompatibilis ütemezéshez kapcsolódó egyetlen Spark-konfiguráció, amelyet esetleg konfigurálni kell.
Az alapértelmezett konfiguráció tevékenységenként egy GPU-t használ, ami jó alapkonfiguráció az elosztott következtetési számítási feladatokhoz és az elosztott betanításhoz, ha az összes GPU-csomópontot használja.
A kommunikációs többletterhelés csökkentése érdekében elosztott betanítás során a Databricks azt javasolja, hogy a számítási Spark konfigurációban állítsa spark.task.resource.gpu.amount értékét a munkáscsomópontonkénti GPU-k számához. Ez csak egy Spark-feladatot hoz létre minden Spark-feldolgozóhoz, és az adott munkavégző csomópontban lévő összes GPU-t ugyanahhoz a tevékenységhez rendeli hozzá.
Az elosztott mélytanulási következtetés párhuzamosításának növelése érdekében a spark.task.resource.gpu.amount értékét törtértékekre állíthatja, például 1/2, 1/3, 1/4, ... 1/N. Ez több Spark-tevékenységet hoz létre, mint a GPU-k, így több egyidejű tevékenység képes párhuzamosan kezelni a következtetési kérelmeket. Ha például a spark.task.resource.gpu.amount0.5, 0.33vagy 0.25értékre állítja, akkor a rendelkezésre álló GPU-k a tevékenységek számának kétszeresére, háromszorosára vagy négyszeresére lesznek felosztva.
GPU-indexek
PySpark-feladatok esetén az Azure Databricks automatikusan újraképezi a hozzárendelt GPU-kat nulla alapú indexekbe. Az alapértelmezett konfiguráció esetében, amely tevékenységenként egy GPU-t használ, az alapértelmezett GPU-t anélkül használhatja, hogy ellenőriznie kell, hogy melyik GPU van hozzárendelve a feladathoz.
Ha tevékenységenként több GPU-t állít be, például 4, akkor a hozzárendelt GPU-k indexei mindig 0, 1, 2 és 3. Ha szüksége van a hozzárendelt GPU-k fizikai indexére, lekérheti őket a CUDA_VISIBLE_DEVICES környezeti változóból.
Ha Scala-t használ, a TaskContext.resources().get("gpu")-ből megkaphatja a tevékenységhez rendelt GPU-k indexeit.
NVIDIA GPU-illesztő, CUDA és cuDNN
Az Azure Databricks telepíti az NVIDIA-illesztőprogramot és a GPU-k Spark-illesztőprogramokon és feldolgozópéldányokon való használatához szükséges kódtárakat:
-
CUDA Toolkit, telepítve a
/usr/local/cudaalá. - cuDNN: NVIDIA CUDA mély neurális hálózati könyvtár.
- NCCL: NVIDIA Collective Communications Library.
A mellékelt NVIDIA-illesztő verziója az 535.54.03, amely támogatja a CUDA 11.0-t.
Az NV A10 v5-ös példánytípus-sorozat esetében a mellékelt NVIDIA-illesztőprogram verziója.535.154.05
A kiadási megjegyzésekben találja a felhasznált Databricks Runtime-verzióhoz tartozó könyvtárverzióit.
Feljegyzés
Ez a szoftver az NVIDIA Corporation által biztosított forráskódot tartalmazza. A GPU-k támogatásához az Azure Databricks cUDA-mintákból származó kódot tartalmaz.
NVIDIA végfelhasználói licencszerződés (EULA)
Amikor kiválaszt egy GPU-kompatibilis "Databricks Runtime-verziót" az Azure Databricksben, implicit módon elfogadja az NVIDIA EULA-ban a CUDA-, cuDNN- és Tesla-könyvtárakra vonatkozó feltételeket, valamint az NVIDIA végfelhasználói licencszerződést (NCCL-kiegészítéssel) az NCCL-könyvtárra.
Databricks konténerszolgáltatás a GPU-számításokon
Fontos
Ez a funkció a nyilvános előzetes verzióban érhető el.
A Databricks Container Services GPU-kkal végzett számítás során testreszabott kódtárakkal hordozható mélytanulási környezeteket hozhat létre. Útmutatásért tekintse meg a Databricks Container Services dedikált számítási szolgáltatását .
A GPU-számításhoz egyéni rendszerképek létrehozásához a GPU-hoz készült Databricks Runtime ML helyett egy standard futtatókörnyezeti verziót kell választania. Ha a Saját Docker-tároló használatalehetőséget választja, kiválaszthatja a GPU-számítást egy standard futtatókörnyezeti verzióval. A GPU egyéni rendszerképei a hivatalos CUDA-tárolókon alapulnak, ami eltér a GPU-hoz készült Databricks Runtime ML-től.
Amikor egyéni rendszerképeket hoz létre a GPU-számításhoz, nem módosíthatja az NVIDIA-illesztő verzióját, mert annak meg kell egyeznie a gazdagép illesztőprogram-verziójával.
A databricksruntimeDocker Hub gpu-képességgel rendelkező minta alaprendszerképeket tartalmaz. A rendszerképek létrehozásához használt Dockerfile-fájlok a gitHub-adattár példatárolókban találhatók, amelyek részletesen ismertetik, hogy a példaképek mit nyújtanak, és hogyan szabhatók testre.