Tudnivalók az NVIDIA GPU-metrikákról a GPU teljesítményének és kihasználtságának optimalizálásához az Azure Kubernetes Service-ben (AKS)

A GPU-számítási feladatok hatékony elhelyezése és optimalizálása gyakran megköveteli az erőforrások kihasználtságának és teljesítményének láthatóságát. Az AKS felügyelt GPU-metrikái (előzetes verzió) automatikus adatgyűjtést és a GPU-kihasználtság, a memória és a teljesítményadatok automatikus gyűjtését és kitettségét biztosítják az NVIDIA GPU-kompatibilis csomópontkészletekben. Ez lehetővé teszi a platform adminisztrátorok számára, hogy optimalizálják a fürterőforrásokat, valamint a fejlesztőknek, hogy finomhangolják és hibakeressék a számítási feladatokat korlátozott manuális eszközökkel.

Ebben a cikkben megismerheti az NVIDIA Data Center GPU Manager (DCGM) exportőre által gyűjtött GPU-metrikákat egy teljes mértékben felügyelt GPU-kompatibilis csomópontkészlettel (előzetes verzió) az Azure Kubernetes Service-ben (AKS).

Fontos

Az AKS előzetes verziójú funkciói önkiszolgáló, opt-in alapon érhetők el. Az előzetes verziókat "ahogy van" és "rendelkezésre állóként" biztosítjuk, és a szolgáltatási szerződésekből és a korlátozott jótállásból kizárjuk őket. Az AKS előzetes verzióihoz részleges támogatást nyújt az ügyfélszolgálat a tőle telhető legjobb módon. Ezért ezek a funkciók nem éles használatra vannak szánva. További információkért tekintse meg az alábbi támogatási cikkeket:

Előfeltételek

  • Teljes körűen kezelt, GPU-támogatott csomópontkészlettel (előzetes verzió) rendelkező AKS-fürt, és győződjön meg arról, hogy a GPU-k ütemezhetők.
  • A csomópontkészletben üzembe helyezett MINTA GPU-számítási feladat .

Korlátozások

Ellenőrizze, hogy a felügyelt GPU-összetevők telepítve vannak-e

Miután létrehozta a felügyelt NVIDIA GPU-csomópontkészletet (előzetes verzió) az alábbi utasításokat követve, ellenőrizze, hogy a GPU-szoftverösszetevők telepítve lettek-e az az aks nodepool show paranccsal:

az aks nodepool show \
    --resource-group <resource-group-name> \
    --cluster-name <cluster-name> \
    --name <node-pool-name> \

A kimenetnek a következő értékeket kell tartalmaznia:

...
...
"gpuInstanceProfile": …
    "gpuProfile": {
      "driver": "Install"
    },
...
...

GPU-metrikák ismertetése

GPU-kihasználtsági metrikák

A GPU-kihasználtsági metrikák azt mutatják, hogy a GPU magjai mennyi idő alatt dolgoznak aktívan. A magas értékek azt jelzik, hogy a GPU-t nagy mértékben használják, ami általánosan kívánatos olyan számítási feladatokhoz, mint a betanítás vagy az adatfeldolgozás. A metrika értelmezésének figyelembe kell vennie a számítási feladatok típusát: az MI-betanítás általában magas kihasználtságot tart fenn, míg az inferencia hullámszerű forgalom miatt időszakos kihasználtságot okozhat.

Memória kihasználtsága: A használatban lévő GPU-memória százalékos aránya. A magas GPU-kihasználtság nélküli magas memóriahasználat memóriaalapú számítási feladatokat jelezhet, ahol a GPU a memóriaátvitelekre vár. Az alacsony memóriahasználat és az alacsony kihasználtság arra utalhat, hogy a számítási feladat túl kicsi ahhoz, hogy teljes mértékben kihasználja a GPU-t.

SM (Streaming Multiprocessor) Hatékonyság: Azt méri, hogy milyen hatékonysággal használják a GPU magjait. Az alacsony SM-hatékonyság azt jelzi, hogy a magok tétlenek vagy alulhasználtak a munkaterhelés kiegyensúlyozatlanságának, vagy a nem megfelelő kernelkialakításnak köszönhetően. A nagy hatékonyság ideális számítási feladatokhoz.

Memóriametrikák

Memória-sávszélesség kihasználtsága: Az elméleti memória sávszélességének mekkora részét használja fel. A nagy sávszélesség-kihasználtság és az alacsony számítási kihasználtság memóriaalapú számítási feladatot jelezhet. Ezzel szemben a számítási és a memória-sávszélesség magas kihasználtsága kiegyensúlyozott számítási feladatra utal.

Memóriahibák: Ha engedélyezve van, nyomon követi az ECC (Error-Correcting Code) hibáit. A nagy számú hiba hardvercsökkenést vagy hőproblémákat jelezhet, és a megbízhatóságot figyelni kell.

Hőmérséklet- és teljesítménymetrikák

GPU-hőmérséklet: A GPU működési hőmérsékletét jelzi. A tartós magas hőmérsékletek kiválthatják a hőszabályozást, ami csökkenti a teljesítményt. A metrika ideális értelmezése magában foglalja a GPU hőkorlátjaihoz és hűtőkapacitásához viszonyított hőmérséklet megfigyelését.

Energiahasználat: Pillanatnyi energiafelvételt jelenít meg. Az energiahasználat és a TDP (Thermal Design Power) összehasonlítása segít megérteni, hogy a GPU-t a rendszer a korlátaihoz küldi-e. Az áram hirtelen csökkenése fojtást vagy alulhasználtságot jelezhet.

Órák és gyakorisági metrikák

GPU Óra: A GPU tényleges működési gyakorisága. A kihasználtsággal kombinálva ez segít megállapítani, hogy a GPU szabályozott vagy alulteljesít-e a potenciálhoz képest.

Memória óra: A GPU-memória működési gyakorisága. A memóriához kötött számítási feladatok kihasználhatják a magasabb memóriaórák előnyeit; A memória és a számítási kihasználtság közötti eltérés kiemelheti a szűk keresztmetszeteket.

PCIe sávszélesség: Méri az átviteli kapacitást a PCIe buszon. A nagy számítási feladatok alacsony kihasználtsága arra utalhat, hogy a CPU-GPU kommunikáció nem jelent szűk keresztmetszetet. A magas kihasználtság a teljesítményt befolyásoló adatátviteli korlátozásokra mutathat.

NVLink sávszélesség: Ez a metrika hasonló a PCIe sávszélességéhez, de az NVLink-összekapcsolásokra jellemző, és a GPU-k közötti kommunikációhoz szükséges több GPU-s rendszerekben releváns. Az alacsony SM-kihasználtságú magas NVLink-használat szinkronizálást vagy adatátviteli késést jelezhet.

Hiba- és megbízhatósági metrikák

Visszavont lapok és XID-hibák: A GPU memóriahibák és kritikus meghibásodások figyelése. A gyakori előfordulások potenciális hardverhibákat jeleznek, és figyelmet igényelnek a hosszan futó számítási feladatokra.

Értelmezési útmutató

A DCGM-metrikákat mindig kontextusban kell értelmezni az AKS-alapú számítási feladatok típusával. A nagy számítási igényű számítási feladatoknak ideális esetben magas GPU- és SM-kihasználtságot, nagy memória-sávszélesség-használatot, szabályozási küszöbértékek alatti stabil hőmérsékletet, valamint a TDP-hez közeli, de alatti teljesítményt kell mutatniuk.

A memóriahez kötött számítási feladatok magas memóriakihasználtságot és sávszélességet mutathatnak, de alacsonyabb számítási kihasználtságot. Az olyan anomáliák, mint a magas hőmérséklettel vagy energiafogyasztással rendelkező alacsony kihasználtság gyakran szabályozást, nem hatékony ütemezést vagy rendszerszintű szűk keresztmetszeteket jeleznek.

A trendek monitorozása az egyes pillanatképek helyett kritikus fontosságú. A kihasználtság hirtelen csökkenése vagy a hibák hirtelen megugrása gyakran feltárja a mögöttes problémákat, mielőtt hatással lennének az éles működési folyamatokra. Több GPU metrikáinak összehasonlítása segíthet azonosítani a kiugró értékeket vagy a fürtben lévő eszközök rendellenes működését. Ezeknek a metrikáknak az elkülönítés helyett való együttes megértése a GPU hatékonyságának és számítási feladatainak teljesítményével kapcsolatos legtisztább betekintést nyújt.

Gyakori GPU-metrikák

A következő NVIDIA DCGM-metrikák általában a GPU-csomópontkészletek Kubernetesen való teljesítményére vannak kiértékelve:

GPU-metrika neve Meaning Tipikus tartomány / mutató Használati tipp
DCGM_FI_DEV_GPU_UTIL GPU-kihasználtság (% idő, ameddig GPU-magok aktívak) 0–100% (a magasabb jobb) Monitorozás csomópontonként és podonként; az alacsony értékek cpu- vagy I/O-szűk keresztmetszeteket jelezhetnek
DCGM_FI_DEV_SM_UTIL Többprocesszoros streaming hatékonyság (aktív magok aránya) 0–100% A magas memóriahasználatú munkaterhelés alacsony értékei memóriaigényes számítási feladatot jeleznek.
DCGM_FI_DEV_FB_USED Használt framebuffer memória (bájt) 0 a teljes memóriához Pod GPU memóriakorlátainak használata és a podonkénti memóriahasználat nyomon követése
DCGM_FI_DEV_FB_FREE Ingyenes GPU-memória (bájt) 0-tól teljes memóriáig Hasznos az ütemezéshez és az OOM-hibák elkerüléséhez
DCGM_FI_DEV_MEMORY_UTIL Memóriahasználat (%) 0–100% Kombinálás GPU-/SM-kihasználtsággal a memóriaalapú számítási feladatok meghatározásához
DCGM_FI_DEV_MEMORY_CLOCK A memória aktuális órajelének gyakorisága (MHz) 0–maximális memória órajele A magas memóriakihasználtság alatti alacsony értékek fojtást jelezhetnek.
DCGM_FI_DEV_POWER_USAGE Pillanatnyi energiafelhasználás (Watt) 0–TDP A magas kihasználtság alatti csökkenések fojtást jelezhetnek
DCGM_FI_DEV_TEMPERATURE GPU-hőmérséklet (°C) ~30–85°C normál Riasztás tartósan magas hőmérsékletről
DCGM_FI_DEV_NVLINK_RX Az NVLink fogadó sávszélesség kihasználtság (%) 0–100% Nagy több-GPU szinkronizálási szűk keresztmetszet alacsony SM-kihasználtság mellett
DCGM_FI_DEV_XID_ERRORS Az illesztőprogram által jelentett GPU-kritikus hibák Általában 0 Azonnali vizsgálat szükséges; a Kubernetesben a csomópontot el tudja süllyeszteni

A GPU-metrikák teljes csomagjáról az NVIDIA DCGM Upstream dokumentációjában tájékozódhat.

Következő lépések