Megosztás a következőn keresztül:


Oktatóanyag: IoT Edge-modul konfigurálása, csatlakoztatása és ellenőrzése GPU-hoz

A következőkre vonatkozik:IoT Edge 1.5 pipa IoT Edge 1.5

Fontos

Az IoT Edge 1.5 LTS a támogatott kiadás. Az IoT Edge 1.4 LTS 2024. november 12-én megszűnik. Ha egy korábbi kiadáson dolgozik, olvassa el az IoT Edge frissítése című témakört.

Ez az oktatóanyag bemutatja, hogyan hozhat létre GPU-kompatibilis virtuális gépet (VM). A virtuális gépből megtudhatja, hogyan futtathat egy IoT Edge-eszközt, amely az egyik modulból a GPU-hoz rendeli a munkát.

Az Azure Portalt, az Azure Cloud Shellt és a virtuális gép parancssorát a következőre fogjuk használni:

  • GPU-kompatibilis virtuális gép létrehozása
  • Az NVIDIA illesztőprogram-bővítmény telepítése a virtuális gépen
  • Modul konfigurálása IoT Edge-eszközön a gpu-nak való munka lefoglalásához

Előfeltételek

GPU-ra optimalizált virtuális gép létrehozása

GPU-ra optimalizált virtuális gép (VM) létrehozásához fontos a megfelelő méret kiválasztása. Nem minden virtuálisgép-méret alkalmas GPU-feldolgozásra. Emellett különböző virtuálisgép-méretek is vannak a különböző számítási feladatokhoz. További információ: GPU-optimalizált virtuálisgép-méretek , vagy próbálja ki a Virtuális gépek választót.

Hozzunk létre egy IoT Edge virtuális gépet az Azure Resource Manager (ARM) sablonnal a GitHubon, majd konfiguráljuk GPU-optimalizáltra.

  1. Nyissa meg az IoT Edge virtuálisgép-üzembehelyezési sablont a GitHubon: Azure/iotedge-vm-deploy.

  2. Válassza az Üzembe helyezés az Azure-ban gombot, amely egyéni virtuális gép létrehozását kezdeményezi az Azure Portalon.

  3. Töltse ki az egyéni üzembehelyezési mezőket az Azure-beli hitelesítő adatokkal és erőforrásokkal:

    Tulajdonság Leírás vagy mintaérték
    Előfizetés Válassza ki Az Azure-fiók előfizetését.
    Erőforráscsoport Adja hozzá az Azure-erőforráscsoportot.
    Régió East US
    A GPU virtuális gépek nem minden régióban érhetők el.
    DNS-címke előtagja Hozzon létre egy nevet a virtuális gépnek.
    Rendszergazdai felhasználónév adminUser
    Másik lehetőségként hozzon létre saját felhasználónevet.
    Eszközkapcsolati sztring Másolja a kapcsolati sztring az IoT Edge-eszközről, majd illessze be ide.
    Virtuális gép mérete Standard_NV6
    Hitelesítés típusa Válassza a jelszót vagy az SSH nyilvános kulcsát, majd szükség esetén hozzon létre egy jelszót vagy kulcspárnevet.

    Tipp.

    Ellenőrizze, hogy az egyes régiókban mely GPU-virtuális gépek támogatottak: régiónként elérhető termékek.

    Ha ellenőrizni szeretné, hogy az Azure-előfizetés melyik régiót engedélyezi, próbálja ki ezt az Azure-parancsot az Azure Portalon. Standard_N Ez N azt jelenti, hogy gpu-kompatibilis virtuális gép.

    az vm list-skus --location <YOUR-REGION> --size Standard_N --all --output table
    
  4. Kattintson az alul található Véleményezés + létrehozás gombra, majd a Létrehozás gombra. Az üzembe helyezés akár egy percet is igénybe vehet.

Az NVIDIA-bővítmény telepítése

Most, hogy gpu-ra optimalizált virtuális gépünk van, telepítsük az NVIDIA-bővítményt a virtuális gépre az Azure Portal használatával.

  1. Nyissa meg a virtuális gépet az Azure Portalon, és a bal oldali menüben válassza a Bővítmények + alkalmazások lehetőséget.

  2. Válassza a Hozzáadás lehetőséget, és válassza ki a listából az NVIDIA GPU-illesztőbővítményt, majd válassza a Tovább gombot.

  3. Válassza a Véleményezés+ létrehozás, majd a Létrehozás lehetőséget. Az üzembe helyezés akár 30 percet is igénybe vehet.

  4. Az Azure Portalon történő telepítés megerősítéséhez térjen vissza a virtuális gép Bővítmények + alkalmazások menüjébe. Az új elnevezett NvidiaGpuDriverLinux bővítménynek szerepelnie kell a bővítmények listájában, és az Állapot csoportban meg kell jelennie a sikeres üzembe helyezésnek.

  5. Az Azure Cloud Shell használatával történő telepítés megerősítéséhez futtassa ezt a parancsot a bővítmények listázásához. Cserélje le a <> helyőrzőket az értékekre:

    az vm extension list --resource-group <YOUR-RESOURCE-GROUP> --vm-name <YOUR-VM-NAME> -o table
    
  6. Egy NVIDIA-modullal az NVIDIA Rendszerfelügyeleti felület programot fogjuk használni, más néven nvidia-smi.

    Az eszközről telepítse a csomagot az nvidia-smi Ubuntu-verzió alapján. Ebben az oktatóanyagban az Ubuntu 20.04-et fogjuk telepíteni nvidia-utils-515 . Válassza ki Y , amikor a rendszer kéri a telepítést.

    sudo apt install nvidia-utils-515
    

    Az alábbi lista az összes nvidia-smi verziót tartalmazza. Ha az első telepítés nélkül fut nvidia-smi , ez a lista a konzolon jelenik meg.

    Képernyőkép az összes

  7. A telepítés után futtassa ezt a parancsot a telepítés megerősítéséhez:

    nvidia-smi
    

    Ekkor megjelenik egy megerősítést kérő tábla, hasonlóan ehhez a táblához.

    Képernyőkép az NVIDIA illesztőtábláról.

Feljegyzés

Az NVIDIA-bővítmény leegyszerűsíti az NVIDIA-illesztőprogramok telepítését, de előfordulhat, hogy további testreszabásra van szüksége. További információ az N sorozatú virtuális gépek egyéni telepítéseiről: NVIDIA GPU-illesztőprogramok telepítése Linux rendszerű N sorozatú virtuális gépekre.

Modul engedélyezése GPU-gyorsítással

Az IoT Edge-modulok különböző módokon engedélyezve vannak, így gpu-t használnak a feldolgozáshoz. Ennek egyik módja egy meglévő IoT Edge-modul konfigurálása az eszközön gpu-gyorsításra. Egy másik módszer egy előre gyártott tárolómodul használata, például egy nvidia DIGITS-modul, amely már GPU-ra van optimalizálva. Nézzük meg, hogyan történik mindkét módszer.

GPU engedélyezése meglévő modulban a DeviceRequests használatával

Ha rendelkezik egy meglévő modullal az IoT Edge-eszközön, az üzembehelyezési jegyzékben createOptions szereplő DeviceRequests konfiguráció hozzáadása a modul GPU-optimalizálását teszi lehetővé. Meglévő modul konfigurálásához kövesse az alábbi lépéseket.

  1. Nyissa meg az IoT Hubot az Azure Portalon, és válassza az Eszközök lehetőséget az Eszközfelügyelet menüben.

  2. A megnyitáshoz válassza ki az IoT Edge-eszközt.

  3. Válassza felül a Modulok beállítása lapot.

  4. Válassza ki a GPU-használathoz engedélyezni kívánt modult az IoT Edge-modulok listájában.

  5. Megnyílik egy oldalpanel, és válassza a Tároló létrehozása beállításai lapot.

  6. Másolja ki ezt a JSON-sztringet HostConfig , és illessze be a Létrehozási beállítások mezőbe.

     {
         "HostConfig": {
             "DeviceRequests": 
             [
                 {
                     "Count": -1,
                     "Capabilities": [
                         [
                             "gpu"
                         ]
                     ]
                 }
             ]
         }
     }
    
  7. Válassza a Frissítés lehetőséget.

  8. Válassza az Áttekintés + létrehozás lehetőséget. Az új HostConfig objektum most már látható a settings modulban.

  9. Válassza a Létrehozás lehetőséget.

  10. Az új konfiguráció működésének ellenőrzéséhez futtassa ezt a parancsot a virtuális gépen:

    sudo docker inspect <YOUR-MODULE-NAME>
    

    A konzol JSON-nyomtatásában meg kell jelennie a megadott paramétereknek DeviceRequests .

Feljegyzés

A DeviceRequests paraméter jobb megértéséhez tekintse meg a forráskódot: moby/host_config.go

GPU engedélyezése előre gyártott NVIDIA-modulban

Adjunk hozzá egy NVIDIA DIGITS-modult az IoT Edge-eszközhöz, majd foglaljunk le egy GPU-t a modulhoz a környezeti változók beállításával. Ez az NVIDIA-modul már egy Docker-tárolóban van.

  1. Válassza ki az IoT Edge-eszközt az Azure Portalon az IoT Hub Eszközök menüjében.

  2. Válassza felül a Modulok beállítása lapot.

  3. Válassza a + Hozzáadás lehetőséget az IoT Edge-modulok címsorában, és válassza az IoT Edge-modult.

  4. Adjon meg egy nevet az IoT Edge-modul neve mezőben.

  5. A Modul beállításai lapon adja hozzá nvidia/digits:6.0 a Kép URI mezőjét.

  6. Válassza a Környezeti változók lapot.

  7. Adja hozzá a környezeti változó nevét NVIDIA_VISIBLE_DEVICES az értékkel 0. Ez a változó szabályozza, hogy mely GPU-k láthatók a peremeszközön futó tárolóalapú alkalmazás számára. A NVIDIA_VISIBLE_DEVICES környezeti változó beállítható az eszközazonosítók vesszővel tagolt listájára, amely megfelel a rendszerben lévő fizikai GPU-knak. Ha például két GPU van a rendszerben 0 és 1 eszközazonosítóval, a változó "NVIDIA_VISIBLE_DEVICES=0,1" értékre állítható be, hogy mindkét GPU látható legyen a tároló számára. Ebben a cikkben, mivel a virtuális gép csak egy GPU-val rendelkezik, az elsőt (és csak) használjuk.

    Név Típus Érték
    NVIDIA_VISIBLE_DEVICES Szöveg 0
  8. Válassza a Hozzáadás lehetőséget.

  9. Válassza az Áttekintés + létrehozás lehetőséget. Megjelennek az üzembehelyezési jegyzék tulajdonságai.

  10. Válassza a Létrehozás lehetőséget a modul létrehozásához.

  11. Válassza a Frissítés lehetőséget a modullista frissítéséhez. A modul futásideje néhány percet vesz igénybe, ezért frissítse az eszközt.

  12. Az eszközről futtassa ezt a parancsot, és győződjön meg arról, hogy az új NVIDIA-modul létezik és fut.

    iotedge list
    

    Az NVIDIA-modulnak az IoT Edge-eszközön található modulok listájában kell megjelennie running, amelynek állapota : .

    Képernyőkép az

Feljegyzés

Az NVIDIA DIGITS tárolómodullal kapcsolatos további információkért tekintse meg a Deep Learning Digits dokumentációját.

Az erőforrások eltávolítása

Ha folytatni szeretné a többi IoT Edge-oktatóanyagot, használhatja az oktatóanyaghoz létrehozott eszközt. Ellenkező esetben törölheti a létrehozott Azure-erőforrásokat a díjak elkerülése érdekében.

Ha a virtuális gépet és az IoT Hubot egy új erőforráscsoportban hozta létre, törölheti azt a csoportot, amely az összes társított erőforrást törli. Ellenőrizze duplán az erőforráscsoport tartalmát, és győződjön meg arról, hogy semmit sem szeretne megtartani. Ha nem szeretné törölni a teljes csoportot, törölheti az egyes erőforrásokat (virtuális gép, eszköz vagy GPU-modul).

Fontos

Az erőforráscsoport törlése nem vonható vissza.

Az Azure-erőforráscsoport eltávolításához használja az alábbi parancsot. Egy erőforráscsoport törlése eltarthat néhány percig.

az group delete --name <YOUR-RESOURCE-GROUP> --yes

Az erőforráscsoport eltávolítását az erőforráscsoportok listájának megtekintésével ellenőrizheti.

az group list

Következő lépések

Ez a cikk segített beállítani a virtuális gépet és az IoT Edge-eszközt GPU-gyorsításra. Ha hasonló beállítással szeretne futtatni egy alkalmazást, próbálja ki az NVIDIA DeepStream-fejlesztés képzési tervét a Microsoft Azure-ral. A Learn oktatóanyag bemutatja, hogyan fejleszthet optimalizált intelligens videoalkalmazásokat, amelyek több video-, kép- és hangforrást is használhatnak.