Partilhar via


Instalar a extensão GPU em VMs para o seu dispositivo GPU Azure Stack Edge Pro

APLICA-SE A:Sim para Pro - GPU SKU Azure Stack Edge Pro - GPUSim para Pro 2 SKUAzure Stack Edge Pro 2Sim para Pro R SKUAzure Stack Edge Pro R

Este artigo descreve como instalar a extensão de driver de GPU para instalar drivers Nvidia apropriados nas VMs de GPU em execução em seu dispositivo Azure Stack Edge. O artigo aborda as etapas de instalação para instalar uma extensão de GPU usando modelos do Azure Resource Manager em VMs Windows e Linux.

Nota

  • No portal do Azure, você pode instalar uma extensão de GPU durante a criação da VM ou depois que a VM for implantada. Para conhecer as etapas e os requisitos, consulte Implantar máquinas virtuais de GPU.
  • Se você estiver executando um VHD do Windows 2016, deverá habilitar o TLS 1.2 dentro da VM antes de instalar a extensão GPU em 2205 e superior. Para obter etapas detalhadas, consulte Solucionar problemas de extensão de GPU para VMs de GPU na GPU do Azure Stack Edge Pro.

Pré-requisitos

Antes de instalar a extensão GPU nas VMs GPU em execução no dispositivo, certifique-se de que:

  1. Você tem acesso a um dispositivo Azure Stack Edge no qual implanta uma ou mais VMs de GPU. Veja como implantar uma VM GPU em seu dispositivo.

    • Certifique-se de que a porta ativada para a rede de computação no seu dispositivo está ligada à Internet e tem acesso. Os drivers da GPU são baixados através do acesso à internet.

      Aqui está um exemplo em que a Porta 2 foi conectada à Internet e foi usada para habilitar a rede de computação. Se o Kubernetes não estiver implantado em seu ambiente, você poderá ignorar o IP do nó Kubernetes e a atribuição de IP de serviço externo.

      Captura de ecrã do painel Computação para um dispositivo Azure Stack Edge. As configurações de computação para a Porta 2 são realçadas.

  2. Transfira os modelos de extensão GPU e os ficheiros de parâmetros para a sua máquina cliente. Descompacte-o em um diretório que você usa como um diretório de trabalho.

  3. Verifique se o cliente que você usará para acessar seu dispositivo ainda está conectado ao Azure Resource Manager pelo Azure PowerShell. A conexão com o Azure Resource Manager expira a cada 1,5 horas ou se o dispositivo Azure Stack Edge for reiniciado. Se isso acontecer, todos os cmdlets executados retornarão mensagens de erro informando que você não está mais conectado ao Azure. Tem de iniciar sessão novamente. Para obter instruções detalhadas, consulte Conectar-se ao Azure Resource Manager em seu dispositivo Azure Stack Edge.

Editar arquivo de parâmetros

Dependendo do sistema operacional da sua VM, você pode instalar a extensão GPU para Windows ou Linux.

Para implantar drivers de GPU Nvidia para uma VM existente, edite o addGPUExtWindowsVM.parameters.json arquivo de parâmetros e, em seguida, implante o modelo addGPUextensiontoVM.json.

Versão 2205 e superior

O arquivo addGPUExtWindowsVM.parameters.json usa os seguintes parâmetros:

"parameters": {
	"vmName": {
	"value": "<name of the VM>"
	},
	"extensionName": {
	"value": "<name for the extension. Example: windowsGpu>"
	},
	"publisher": {
	"value": "Microsoft.HpcCompute"
	},
	"type": {
	"value": "NvidiaGpuDriverWindows"
	},
	"typeHandlerVersion": {
	"value": "1.5"
	},
	"settings": {
	"value": {
	"DriverURL" : "http://us.download.nvidia.com/tesla/511.65/511.65-data-center-tesla-desktop-winserver-2016-2019-2022-dch-international.exe",
	"DriverCertificateUrl" : "https://go.microsoft.com/fwlink/?linkid=871664",
	"DriverType":"CUDA"
	}
	}
	}

Versões inferiores a 2205

O arquivo addGPUExtWindowsVM.parameters.json usa os seguintes parâmetros:

"parameters": {
	"vmName": {
	"value": "<name of the VM>"
	},
	"extensionName": {
	"value": "<name for the extension. Example: windowsGpu>"
	},
	"publisher": {
	"value": "Microsoft.HpcCompute"
	},
	"type": {
	"value": "NvidiaGpuDriverWindows"
	},
	"typeHandlerVersion": {
	"value": "1.3"
	},
	"settings": {
	"value": {
	"DriverURL" : "http://us.download.nvidia.com/tesla/442.50/442.50-tesla-desktop-winserver-2019-2016-international.exe",
	"DriverCertificateUrl" : "https://go.microsoft.com/fwlink/?linkid=871664",
	"DriverType":"CUDA"
	}
	}
	}

Implementar o modelo

Implante o modelo addGPUextensiontoVM.json para instalar a extensão em uma VM existente.

Execute o seguinte comando:

$templateFile = "<Path to addGPUextensiontoVM.json>"
$templateParameterFile = "<Path to addGPUExtWindowsVM.parameters.json>"
RGName = "<Name of your resource group>"
New-AzureRmResourceGroupDeployment -ResourceGroupName $RGName -TemplateFile $templateFile -TemplateParameterFile $templateParameterFile -Name "<Name for your deployment>"

Nota

A implantação da extensão é um trabalho de longa execução e leva cerca de 10 minutos para ser concluída.

Aqui está um exemplo de saída:

PS C:\WINDOWS\system32> "C:\12-09-2020\ExtensionTemplates\addGPUextensiontoVM.json"
C:\12-09-2020\ExtensionTemplates\addGPUextensiontoVM.json
PS C:\WINDOWS\system32> $templateFile = "C:\12-09-2020\ExtensionTemplates\addGPUextensiontoVM.json"
PS C:\WINDOWS\system32> $templateParameterFile = "C:\12-09-2020\ExtensionTemplates\addGPUExtWindowsVM.parameters.json"
PS C:\WINDOWS\system32> $RGName = "myasegpuvm1"
PS C:\WINDOWS\system32> New-AzureRmResourceGroupDeployment -ResourceGroupName $RGName -TemplateFile $templateFile -TemplateParameterFile $templateParameterFile -Name "deployment3"

DeploymentName          : deployment3
ResourceGroupName       : myasegpuvm1
ProvisioningState       : Succeeded
Timestamp               : 12/16/2020 12:18:50 AM
Mode                    : Incremental
TemplateLink            :
Parameters              :
                       Name             Type                       Value
                       ===============  =========================  ==========
                       vmName           String                     VM2
                       extensionName    String                     windowsgpuext
                       publisher        String                     Microsoft.HpcCompute
                       type             String                     NvidiaGpuDriverWindows
                       typeHandlerVersion  String                     1.3
                       settings         Object                     {
                         "DriverURL": "http://us.download.nvidia.com/tesla/442.50/442.50-tesla-desktop-winserver-2019-2016-international.exe",
                         "DriverCertificateUrl": "https://go.microsoft.com/fwlink/?linkid=871664",
                         "DriverType": "CUDA"
                       }

Outputs                 :
DeploymentDebugLogLevel :
PS C:\WINDOWS\system32>

Acompanhe a implantação

Para verificar o estado de implantação das extensões de uma determinada VM, abra outra sessão do PowerShell (execute como administrador) e execute o seguinte comando:

Get-AzureRmVMExtension -ResourceGroupName <Name of resource group> -VMName <Name of VM> -Name <Name of the extension>

Aqui está um exemplo de saída:

PS C:\WINDOWS\system32> Get-AzureRmVMExtension -ResourceGroupName myasegpuvm1 -VMName VM2 -Name windowsgpuext

ResourceGroupName       : myasegpuvm1
VMName                  : VM2
Name                    : windowsgpuext
Location                : dbelocal
Etag                    : null
Publisher               : Microsoft.HpcCompute
ExtensionType           : NvidiaGpuDriverWindows
TypeHandlerVersion      : 1.3
Id                      : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myasegpuvm1/providers/Microsoft.Compute/virtualMachines/VM2/extensions/windowsgpuext
PublicSettings          : {
                            "DriverURL": "http://us.download.nvidia.com/tesla/442.50/442.50-tesla-desktop-winserver-2019-2016-international.exe",
                            "DriverCertificateUrl": "https://go.microsoft.com/fwlink/?linkid=871664",
                            "DriverType": "CUDA"
                          }
ProtectedSettings       :
ProvisioningState       : Creating
Statuses                :
SubStatuses             :
AutoUpgradeMinorVersion : True
ForceUpdateTag          :

PS C:\WINDOWS\system32>

A saída de execução da extensão é registrada no arquivo a seguir. Consulte este arquivo C:\Packages\Plugins\Microsoft.HpcCompute.NvidiaGpuDriverWindows\1.3.0.0\Status para acompanhar o status da instalação.

Uma instalação bem-sucedida exibe um message com Enable Extension e status de success.

"status":  {
                       "formattedMessage":  {
                                                "message":  "Enable Extension",
                                                "lang":  "en"
                                            },
                       "name":  "NvidiaGpuDriverWindows",
                       "status":  "success",

Verificar a instalação do driver

Entre na VM e execute o utilitário de linha de comando nvidia-smi instalado com o driver.

Versão 2205 e superior

O nvidia-smi.exe está localizado em C:\Windows\System32\nvidia-smi.exe. Se você não vir o arquivo, é possível que a instalação do driver ainda esteja em execução em segundo plano. Aguarde 10 minutos e verifique novamente.

Versões inferiores a 2205

O nvidia-smi.exe está localizado em C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe. Se você não vir o arquivo, é possível que a instalação do driver ainda esteja em execução em segundo plano. Aguarde 10 minutos e verifique novamente.

Se o driver estiver instalado, você verá uma saída semelhante ao exemplo a seguir:

PS C:\Users\Administrator> cd "C:\Program Files\NVIDIA Corporation\NVSMI"
PS C:\Program Files\NVIDIA Corporation\NVSMI> ls

    Directory: C:\Program Files\NVIDIA Corporation\NVSMI

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/26/2020  12:00 PM         849640 MCU.exe
-a----        2/26/2020  12:00 PM         443104 nvdebugdump.exe
-a----        2/25/2020   2:06 AM          81823 nvidia-smi.1.pdf
-a----        2/26/2020  12:01 PM         566880 nvidia-smi.exe
-a----        2/26/2020  12:01 PM         991344 nvml.dll

PS C:\Program Files\NVIDIA Corporation\NVSMI> .\nvidia-smi.exe
Wed Dec 16 00:35:51 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 442.50       Driver Version: 442.50       CUDA Version: 10.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla T4            TCC  | 0000503C:00:00.0 Off |                    0 |
| N/A   35C    P8    11W /  70W |      8MiB / 15205MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
PS C:\Program Files\NVIDIA Corporation\NVSMI>

Para obter mais informações, consulte Extensão de driver de GPU Nvidia para Windows.

Nota

Depois de concluir a instalação do driver da GPU e da extensão da GPU, você não precisará mais usar uma porta com acesso à Internet para computação.

Remover extensão GPU

Para remover a extensão GPU, use o seguinte comando:

Remove-AzureRmVMExtension -ResourceGroupName <Resource group name> -VMName <VM name> -Name <Extension name>

Aqui está um exemplo de saída:

PS C:\azure-stack-edge-deploy-vms> Remove-AzureRmVMExtension -ResourceGroupName rgl -VMName WindowsVM -Name windowsgpuext
Virtual machine extension removal operation
This cmdlet will remove the specified virtual machine extension. Do you want to continue? [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): y
Requestld IsSuccessStatusCode StatusCode ReasonPhrase
--------- ------------------- ---------- ------------
          True                OK         OK

Próximos passos

Aprenda a: