Delen via


Een IoT Edge-workload implementeren met GPU-delen op uw Azure Stack Edge Pro

In dit artikel wordt beschreven hoe workloads in containers de GPU's kunnen delen op uw Azure Stack Edge Pro GPU-apparaat. De aanpak omvat het inschakelen van mpS (Multi-Process Service) en het opgeven van de GPU-workloads via een IoT Edge-implementatie.

Vereisten

Zorg voordat u begint voor het volgende:

  1. U hebt toegang tot een Gpu-apparaat van Azure Stack Edge Pro dat is geactiveerd en dat rekenkracht is geconfigureerd. U hebt het Kubernetes-API-eindpunt en u hebt dit eindpunt toegevoegd aan het hosts bestand op uw client dat toegang heeft tot het apparaat.

  2. U hebt toegang tot een clientsysteem met een ondersteund besturingssysteem. Als u een Windows-client gebruikt, moet het systeem PowerShell 5.0 of hoger uitvoeren om toegang te krijgen tot het apparaat.

  3. Sla de volgende implementatie json op uw lokale systeem op. U gebruikt informatie uit dit bestand om de IoT Edge-implementatie uit te voeren. Deze implementatie is gebaseerd op eenvoudige CUDA-containers die openbaar beschikbaar zijn via NVIDIA.

    {
        "modulesContent": {
            "$edgeAgent": {
                "properties.desired": {
                    "modules": {
                        "cuda-sample1": {
                            "settings": {
                                "image": "nvidia/samples:nbody",
                                "createOptions": "{\"Entrypoint\":[\"/bin/sh\"],\"Cmd\":[\"-c\",\"/tmp/nbody -benchmark -i=1000; while true; do echo no-op; sleep 10000;done\"],\"HostConfig\":{\"IpcMode\":\"host\",\"PidMode\":\"host\"}}"
                            },
                            "type": "docker",
                            "version": "1.0",
                            "env": {
                                "NVIDIA_VISIBLE_DEVICES": {
                                    "value": "0"
                                }
                            },
                            "status": "running",
                            "restartPolicy": "never"
                        },
                        "cuda-sample2": {
                            "settings": {
                                "image": "nvidia/samples:nbody",
                                "createOptions": "{\"Entrypoint\":[\"/bin/sh\"],\"Cmd\":[\"-c\",\"/tmp/nbody -benchmark -i=1000; while true; do echo no-op; sleep 10000;done\"],\"HostConfig\":{\"IpcMode\":\"host\",\"PidMode\":\"host\"}}"
                            },
                            "type": "docker",
                            "version": "1.0",
                            "env": {
                                "NVIDIA_VISIBLE_DEVICES": {
                                    "value": "0"
                                }
                            },
                            "status": "running",
                            "restartPolicy": "never"
                        }
                    },
                    "runtime": {
                        "settings": {
                            "minDockerVersion": "v1.25"
                        },
                        "type": "docker"
                    },
                    "schemaVersion": "1.1",
                    "systemModules": {
                        "edgeAgent": {
                            "settings": {
                                "image": "mcr.microsoft.com/azureiotedge-agent:1.0",
                                "createOptions": ""
                            },
                            "type": "docker"
                        },
                        "edgeHub": {
                            "settings": {
                                "image": "mcr.microsoft.com/azureiotedge-hub:1.0",
                                "createOptions": "{\"HostConfig\":{\"PortBindings\":{\"443/tcp\":[{\"HostPort\":\"443\"}],\"5671/tcp\":[{\"HostPort\":\"5671\"}],\"8883/tcp\":[{\"HostPort\":\"8883\"}]}}}"
                            },
                            "type": "docker",
                            "status": "running",
                            "restartPolicy": "always"
                        }
                    }
                }
            },
            "$edgeHub": {
                "properties.desired": {
                    "routes": {
                        "route": "FROM /messages/* INTO $upstream"
                    },
                    "schemaVersion": "1.1",
                    "storeAndForwardConfiguration": {
                        "timeToLiveSecs": 7200
                    }
                }
            },
            "cuda-sample1": {
                "properties.desired": {}
            },
            "cuda-sample2": {
                "properties.desired": {}
            }
        }
    }
    

GPU-stuurprogramma, CUDA-versie controleren

De eerste stap is om te controleren of op uw apparaat het vereiste GPU-stuurprogramma en de CUDA-versies worden uitgevoerd.

  1. Maak verbinding met de PowerShell-interface van uw apparaat.

  2. Voer de volgende opdracht uit:

    Get-HcsGpuNvidiaSmi

  3. Noteer in de NVIDIA smi-uitvoer de GPU-versie en de CUDA-versie op uw apparaat. Als u Azure Stack Edge 2102-software uitvoert, komt deze versie overeen met de volgende stuurprogrammaversies:

    • GPU-stuurprogrammaversie: 460.32.03
    • CUDA-versie: 11.2

    Hier volgt een voorbeeld van uitvoer:

    [10.100.10.10]: PS>Get-HcsGpuNvidiaSmi
    K8S-1HXQG13CL-1HXQG13:
    
    Tue Feb 23 10:34:01 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  Tesla T4            On   | 0000041F:00:00.0 Off |                    0 |
    | N/A   40C    P8    15W /  70W |      0MiB / 15109MiB |      0%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |  No running processes found                                                 |
    +-----------------------------------------------------------------------------+
    [10.100.10.10]: PS>  
    
  4. Houd deze sessie open, omdat u deze gebruikt om de NVIDIA smi-uitvoer in het hele artikel weer te geven.

Implementeren zonder context delen

U kunt nu een toepassing op uw apparaat implementeren wanneer de Multi-Process Service niet wordt uitgevoerd en er geen contextdeling is. De implementatie vindt plaats via Azure Portal in de iotedge naamruimte die op uw apparaat aanwezig is.

Gebruiker maken in IoT Edge-naamruimte

Eerst maakt u een gebruiker die verbinding maakt met de iotedge naamruimte. De IoT Edge-modules worden geïmplementeerd in de iotedge-naamruimte. Zie Kubernetes-naamruimten op uw apparaat voor meer informatie.

Volg deze stappen om een gebruiker te maken en de gebruiker toegang te verlenen tot de iotedge naamruimte.

  1. Maak verbinding met de PowerShell-interface van uw apparaat.

  2. Maak een nieuwe gebruiker in de iotedge naamruimte. Voer de volgende opdracht uit:

    New-HcsKubernetesUser -UserName <user name>

    Hier volgt een voorbeeld van uitvoer:

    [10.100.10.10]: PS>New-HcsKubernetesUser -UserName iotedgeuser
    apiVersion: v1
    clusters:
    - cluster:
        certificate-authority-data: 
    ===========================//snipped //======================// snipped //=============================
        server: https://compute.myasegpudev.wdshcsso.com:6443
      name: kubernetes
    contexts:
    - context:
        cluster: kubernetes
        user: iotedgeuser
      name: iotedgeuser@kubernetes
    current-context: iotedgeuser@kubernetes
    kind: Config
    preferences: {}
    users:
    - name: iotedgeuser
      user:
        client-certificate-data: 
    ===========================//snipped //======================// snipped //=============================
        client-key-data: 
    ===========================//snipped //======================// snipped ============================
    PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=
    
  3. Kopieer de uitvoer die wordt weergegeven in tekst zonder opmaak. Sla de uitvoer op als een configuratiebestand (zonder extensie) in de .kube map van uw gebruikersprofiel op uw lokale computer, bijvoorbeeld C:\Users\<username>\.kube.

  4. Verdeel de gebruiker die u hebt gemaakt, toegang tot de iotedge naamruimte. Voer de volgende opdracht uit:

    Grant-HcsKubernetesNamespaceAccess -Namespace iotedge -UserName <user name>

    Hier volgt een voorbeeld van uitvoer:

    [10.100.10.10]: PS>Grant-HcsKubernetesNamespaceAccess -Namespace iotedge -UserName iotedgeuser
    [10.100.10.10]: PS>    
    

Zie Verbinding maken met en beheren van een Kubernetes-cluster via kubectl op uw Azure Stack Edge Pro GPU-apparaat voor gedetailleerde instructies.

Modules implementeren via de portal

IoT Edge-modules implementeren via Azure Portal. U implementeert openbaar beschikbare NVIDIA CUDA-voorbeeldmodules die n-bodysimulatie uitvoeren.

  1. Zorg ervoor dat de IoT Edge-service wordt uitgevoerd op uw apparaat.

    IoT Edge-service wordt uitgevoerd.

  2. Selecteer de IoT Edge-tegel in het rechterdeelvenster. Ga naar IoT Edge-eigenschappen>. Selecteer in het rechterdeelvenster de IoT Hub-resource die is gekoppeld aan uw apparaat.

    Eigenschappen weergeven.

  3. Ga in de IoT Hub-resource naar Automatisch Apparaatbeheer > IoT Edge. Selecteer in het rechterdeelvenster het IoT Edge-apparaat dat is gekoppeld aan uw apparaat.

    Ga naar IoT Edge.

  4. Selecteer Modules instellen.

    Ga naar Modules instellen.

  5. Selecteer + Toevoegen > + IoT Edge-module.

    IoT Edge-module toevoegen en voer deze uit.

  6. Geef op het tabblad Module-instellingen de naam van de IoT Edge-module en de afbeeldings-URI op. Stel het pull-beleid voor installatiekopieën in op Maken.

    Module-instellingen.

  7. Geef op het tabblad Omgevingsvariabelen NVIDIA_VISIBLE_DEVICES op als 0.

    Omgevingsvariabelen.

  8. Geef op het tabblad Opties voor container maken de volgende opties op:

    {
        "Entrypoint": [
            "/bin/sh"
        ],
        "Cmd": [
            "-c",
            "/tmp/nbody -benchmark -i=1000; while true; do echo no-op; sleep 10000;done"
        ],
        "HostConfig": {
            "IpcMode": "host",
            "PidMode": "host"
        }
    }    
    

    De opties worden als volgt weergegeven:

    Opties voor het maken van containers.

    Selecteer Toevoegen.

  9. De module die u hebt toegevoegd, moet worden weergegeven als Actief.

    Implementatie controleren en maken.

  10. Herhaal alle stappen om een module toe te voegen die u hebt gevolgd bij het toevoegen van de eerste module. Geef in dit voorbeeld de naam van de module op als cuda-sample2.

    Module-instellingen voor de tweede module.

    Gebruik dezelfde omgevingsvariabele als beide modules dezelfde GPU delen.

    Omgevingsvariabele voor 2e module.

    Gebruik dezelfde opties voor het maken van containers die u hebt opgegeven voor de eerste module en selecteer Toevoegen.

    Opties voor het maken van containers voor 2e modules.

  11. Selecteer Op de pagina Modules instellen de optie Controleren en maken en selecteer vervolgens Maken.

    Controleer en maak de tweede implementatie.

  12. De runtimestatus van beide modules moet nu worden weergegeven als Actief.

    2e implementatiestatus.

Workloadimplementatie bewaken

  1. Open een nieuwe PowerShell-sessie.

  2. Vermeld de pods die worden uitgevoerd in de iotedge naamruimte. Voer de volgende opdracht uit:

    kubectl get pods -n iotedge

    Hier volgt een voorbeeld van uitvoer:

    PS C:\WINDOWS\system32> kubectl get pods -n iotedge --kubeconfig C:\GPU-sharing\kubeconfigs\configiotuser1
    NAME                            READY   STATUS    RESTARTS   AGE
    cuda-sample1-869989578c-ssng8   2/2     Running   0          5s
    cuda-sample2-6db6d98689-d74kb   2/2     Running   0          4s
    edgeagent-79f988968b-7p2tv      2/2     Running   0          6d21h
    edgehub-d6c764847-l8v4m         2/2     Running   0          24h
    iotedged-55fdb7b5c6-l9zn8       1/1     Running   1          6d21h
    PS C:\WINDOWS\system32>   
    

    Er zijn twee pods cuda-sample1-97c494d7f-lnmns en cuda-sample2-d9f6c4688-2rld9 worden uitgevoerd op uw apparaat.

  3. Hoewel beide containers de n-bodysimulatie uitvoeren, bekijkt u het GPU-gebruik van de NVIDIA smi-uitvoer. Ga naar de PowerShell-interface van het apparaat en voer deze uit Get-HcsGpuNvidiaSmi.

    Hier volgt een voorbeeld van uitvoer wanneer beide containers de n-body simulatie uitvoeren:

    [10.100.10.10]: PS>Get-HcsGpuNvidiaSmi
    K8S-1HXQG13CL-1HXQG13:
    
    Fri Mar  5 13:31:16 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  Tesla T4            On   | 00002C74:00:00.0 Off |                    0 |
    | N/A   52C    P0    69W /  70W |    221MiB / 15109MiB |    100%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A    188342      C   /tmp/nbody                        109MiB |
    |    0   N/A  N/A    188413      C   /tmp/nbody                        109MiB |
    +-----------------------------------------------------------------------------+
    [10.100.10.10]: PS>
    

    Zoals u ziet, worden er twee containers uitgevoerd met n-bodysimulatie op GPU 0. U kunt ook het bijbehorende geheugengebruik bekijken.

  4. Zodra de simulatie is voltooid, toont de NVIDIA smi-uitvoer dat er geen processen worden uitgevoerd op het apparaat.

    [10.100.10.10]: PS>Get-HcsGpuNvidiaSmi
    K8S-1HXQG13CL-1HXQG13:
    
    Fri Mar  5 13:54:48 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  Tesla T4            On   | 00002C74:00:00.0 Off |                    0 |
    | N/A   34C    P8     9W /  70W |      0MiB / 15109MiB |      0%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |  No running processes found                                                 |
    +-----------------------------------------------------------------------------+
    [10.100.10.10]: PS>
    
  5. Nadat de n-bodysimulatie is voltooid, bekijkt u de logboeken om inzicht te hebben in de details van de implementatie en de tijd die nodig is om de simulatie te voltooien.

    Hier volgt een voorbeeld van uitvoer van de eerste container:

    PS C:\WINDOWS\system32> kubectl -n iotedge  --kubeconfig C:\GPU-sharing\kubeconfigs\configiotuser1 logs cuda-sample1-869989578c-ssng8 cuda-sample1
    Run "nbody -benchmark [-numbodies=<numBodies>]" to measure performance.
    ==============// snipped //===================//  snipped  //=============
    > Windowed mode
    > Simulation data stored in video memory
    > Single precision floating point simulation
    > 1 Devices used for simulation
    GPU Device 0: "Turing" with compute capability 7.5
    
    > Compute 7.5 CUDA device: [Tesla T4]
    40960 bodies, total time for 10000 iterations: 170171.531 ms
    = 98.590 billion interactions per second
    = 1971.801 single-precision GFLOP/s at 20 flops per interaction
    no-op
    PS C:\WINDOWS\system32>
    

    Hier volgt een voorbeeld van uitvoer van de tweede container:

    PS C:\WINDOWS\system32> kubectl -n iotedge  --kubeconfig C:\GPU-sharing\kubeconfigs\configiotuser1 logs cuda-sample2-6db6d98689-d74kb cuda-sample2
    Run "nbody -benchmark [-numbodies=<numBodies>]" to measure performance.
    ==============// snipped //===================//  snipped  //=============
    > Windowed mode
    > Simulation data stored in video memory
    > Single precision floating point simulation
    > 1 Devices used for simulation
    GPU Device 0: "Turing" with compute capability 7.5
    
    > Compute 7.5 CUDA device: [Tesla T4]
    40960 bodies, total time for 10000 iterations: 170054.969 ms
    = 98.658 billion interactions per second
    = 1973.152 single-precision GFLOP/s at 20 flops per interaction
    no-op
    PS C:\WINDOWS\system32>
    
  6. Stop de module-implementatie. In de IoT Hub-resource voor uw apparaat:

    1. Ga naar IoT Edge voor automatische apparaatimplementatie>. Selecteer het IoT Edge-apparaat dat overeenkomt met uw apparaat.

    2. Ga naar Modules instellen en selecteer een module.

      Selecteer Module instellen.

    3. Selecteer een module op het tabblad Modules .

      Selecteer een module.

    4. Stel op het tabblad Module-instellingen de gewenste status in op gestopt. Selecteer Bijwerken.

      Module-instellingen wijzigen.

    5. Herhaal de stappen om de tweede module te stoppen die op het apparaat is geïmplementeerd. Selecteer Controleren en maken en selecteer vervolgens Maken. Hiermee moet de implementatie worden bijgewerkt.

      Controleer de bijgewerkte implementatie en maak deze.

    6. Pagina Modules instellen meerdere keren vernieuwen. totdat de runtimestatus van de module wordt weergegeven als Gestopt.

      Controleer de implementatiestatus.

Implementeren met context delen

U kunt nu de n-bodysimulatie implementeren op twee CUDA-containers wanneer MPS wordt uitgevoerd op uw apparaat. Eerst schakelt u MPS in op het apparaat.

  1. Maak verbinding met de PowerShell-interface van uw apparaat.

  2. Als u MPS op uw apparaat wilt inschakelen, voert u de Start-HcsGpuMPS opdracht uit.

    [10.100.10.10]: PS>Start-HcsGpuMPS
    K8S-1HXQG13CL-1HXQG13:
    Set compute mode to EXCLUSIVE_PROCESS for GPU 0000191E:00:00.0.
    All done.
    Created nvidia-mps.service
    [10.100.10.10]: PS>    
    
  3. Haal de NVIDIA-smi-uitvoer op uit de PowerShell-interface van het apparaat. U kunt het nvidia-cuda-mps-server proces zien of de MPS-service wordt uitgevoerd op het apparaat.

    Hier volgt een voorbeeld van uitvoer:

    [10.100.10.10]: PS>Get-HcsGpuNvidiaSmi
    K8S-1HXQG13CL-1HXQG13:
    
    Thu Mar  4 12:37:39 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  Tesla T4            On   | 00002C74:00:00.0 Off |                    0 |
    | N/A   36C    P8     9W /  70W |     28MiB / 15109MiB |      0%   E. Process |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A    122792      C   nvidia-cuda-mps-server             25MiB |
    +-----------------------------------------------------------------------------+
    [10.100.10.10]: PS>Get-HcsGpuNvidiaSmi
    
  4. Implementeer de modules die u eerder hebt gestopt. Stel de gewenste status in op uitvoering via Set-modules.

    Hier volgt de voorbeelduitvoer:

    PS C:\WINDOWS\system32> kubectl get pods -n iotedge --kubeconfig C:\GPU-sharing\kubeconfigs\configiotuser1
    NAME                            READY   STATUS    RESTARTS   AGE
    cuda-sample1-869989578c-2zxh6   2/2     Running   0          44s
    cuda-sample2-6db6d98689-fn7mx   2/2     Running   0          44s
    edgeagent-79f988968b-7p2tv      2/2     Running   0          5d20h
    edgehub-d6c764847-l8v4m         2/2     Running   0          27m
    iotedged-55fdb7b5c6-l9zn8       1/1     Running   1          5d20h
    PS C:\WINDOWS\system32>
    

    U kunt zien dat de modules worden geïmplementeerd en uitgevoerd op uw apparaat.

  5. Wanneer de modules worden geïmplementeerd, wordt de n-bodysimulatie ook uitgevoerd op beide containers. Hier volgt de voorbeelduitvoer wanneer de simulatie is voltooid op de eerste container:

    PS C:\WINDOWS\system32> kubectl -n iotedge logs cuda-sample1-869989578c-2zxh6 cuda-sample1
    Run "nbody -benchmark [-numbodies=<numBodies>]" to measure performance.
    ==============// snipped //===================//  snipped  //=============
    
    > Windowed mode
    > Simulation data stored in video memory
    > Single precision floating point simulation
    > 1 Devices used for simulation
    GPU Device 0: "Turing" with compute capability 7.5
    
    > Compute 7.5 CUDA device: [Tesla T4]
    40960 bodies, total time for 10000 iterations: 155256.062 ms
    = 108.062 billion interactions per second
    = 2161.232 single-precision GFLOP/s at 20 flops per interaction
    no-op
    PS C:\WINDOWS\system32> 
    

    Hier volgt de voorbeelduitvoer wanneer de simulatie is voltooid op de tweede container:

    PS C:\WINDOWS\system32> kubectl -n iotedge  --kubeconfig C:\GPU-sharing\kubeconfigs\configiotuser1 logs cuda-sample2-6db6d98689-fn7mx cuda-sample2
    Run "nbody -benchmark [-numbodies=<numBodies>]" to measure performance.
    ==============// snipped //===================//  snipped  //=============
    
    > Windowed mode
    > Simulation data stored in video memory
    > Single precision floating point simulation
    > 1 Devices used for simulation
    GPU Device 0: "Turing" with compute capability 7.5
    
    > Compute 7.5 CUDA device: [Tesla T4]
    40960 bodies, total time for 10000 iterations: 155366.359 ms
    = 107.985 billion interactions per second
    = 2159.697 single-precision GFLOP/s at 20 flops per interaction
    no-op
    PS C:\WINDOWS\system32>    
    
  6. Haal de NVIDIA smi-uitvoer op uit de PowerShell-interface van het apparaat wanneer beide containers de n-body simulatie uitvoeren. Hier volgt een voorbeeld van uitvoer. Er zijn drie processen, het nvidia-cuda-mps-server proces (type C) komt overeen met de MPS-service en de /tmp/nbody processen (type M + C) komen overeen met de n-body-workloads die door de modules zijn geïmplementeerd.

    [10.100.10.10]: PS>Get-HcsGpuNvidiaSmi
    K8S-1HXQG13CL-1HXQG13:
    
    Thu Mar  4 12:59:44 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  Tesla T4            On   | 00002C74:00:00.0 Off |                    0 |
    | N/A   54C    P0    69W /  70W |    242MiB / 15109MiB |    100%   E. Process |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A     56832    M+C   /tmp/nbody                        107MiB |
    |    0   N/A  N/A     56900    M+C   /tmp/nbody                        107MiB |
    |    0   N/A  N/A    122792      C   nvidia-cuda-mps-server             25MiB |
    +-----------------------------------------------------------------------------+
    [10.100.10.10]: PS>Get-HcsGpuNvidiaSmi
    

Volgende stappen