Depois que você cria uma instância de máquina virtual (VM) com uma ou mais GPUs, o sistema exige drivers de dispositivo NVIDIA para que os aplicativos possam acessar o dispositivo. Verifique se as instâncias de máquina virtual (VM) têm espaço livre suficiente em disco. Escolha pelo menos 40 GB para o disco de inicialização ao criar a nova VM.
Para instalar os drivers, você tem estas duas opções:
Se você precisar de GPUs para gráficos 3D com aceleração de hardware, como área de trabalho remota ou jogos, consulte Instalar drivers para estações de trabalho virtuais (vWS) NVIDIA RTX.
Para outras cargas de trabalho, siga as instruções neste documento para instalar o driver NVIDIA.
Driver NVIDIA, kit de ferramentas CUDA e versões do ambiente de execução CUDA
Há diferentes componentes da versão dos drivers e do ambiente de execução que podem ser necessários no seu ambiente. Eles incluem os seguintes componentes:
- Driver NVIDIA
- Kit de ferramentas CUDA
- Ambiente de execução CUDA
Ao instalar esses componentes, é possível configurar o ambiente de maneira que atenda às suas necessidades. Por exemplo, se você tiver uma versão anterior do Tensorflow que funcione melhor com uma versão anterior do kit de ferramentas CUDA, mas a GPU que você quer usar exigir uma versão posterior do driver NVIDIA, é possível instalar uma versão anterior de um kit de ferramentas CUDA e uma versão posterior do driver da NVIDIA.
No entanto, é preciso garantir que o driver NVIDIA e as versões do kit de ferramentas CUDA sejam compatíveis. Para o kit de ferramentas CUDA e a compatibilidade do driver NVIDIA, consulte a documentação da NVIDIA sobre a compatibilidade com CUDA.
Versões necessárias do driver da NVIDIA
Para GPUs NVIDIA em execução no Compute Engine, são recomendadas as seguintes versões do driver.
Série de máquina | Modelo de GPU NVIDIA | Driver recomendado do Linux | Driver recomendado do Windows |
---|---|---|---|
A3 | H100 | 550.90.07 | N/A |
G2 | L4 | 550.90.07 | 538.67 |
A2 | A100 | 550.90.07 | 538.67 |
N1 | T4, P4, P100 e V100 | 535.183.01 | 538.67 |
Instalar drivers de GPU em VMs usando os guias da NVIDIA
Uma maneira de instalar o driver NVIDIA na maioria das VMs é instalar o Kit de ferramentas CUDA do NVIDIA.
Para instalar o kit de ferramentas da NVIDIA, conclua as seguintes etapas:
Selecione um kit de ferramentas CUDA compatível com o driver mínimo necessário.
Conecte-se à VM em que você quer instalar o driver.
Na VM, faça o download e instale o kit de ferramentas CUDA. O pacote de instalação e o guia do kit de ferramentas mínimo recomendado estão na tabela a seguir. Antes de instalar o kit de ferramentas, conclua as etapas de pré-instalação encontradas no guia de instalação.
Série de máquina Modelo de GPU NVIDIA Kit de ferramentas CUDA recomendado para Linux Kit de ferramentas CUDA recomendado para Windows A3 H100 - Link de download: atualização 1 do kit de ferramentas CUDA 12.4
- Guia de instalação: guia de instalação do CUDA 12.4
N/A G2 L4 - Link de download: atualização 1 do kit de ferramentas CUDA 12.4
- Guia de instalação: guia de instalação do CUDA 12.4
- Link de download: atualização 2 do kit de ferramentas CUDA 12.2
- Guia de instalação: guia de instalação do CUDA 12.2
A2 A100 N1 - T4
- V100
- P100
- P4
- Link de download: kit de ferramentas CUDA 12.2
- Guia de instalação: guia de instalação do CUDA 12.2
- Link de download: kit de ferramentas CUDA 12.2
- Guia de instalação: guia de instalação do CUDA 12.2
Instalar drivers de GPU em VMs usando o script de instalação
Use os scripts a seguir para automatizar o processo de instalação. Para analisar esses scripts, consulte o repositório do GitHub (em inglês).
Linux
Use estas instruções para instalar drivers de GPU em uma VM em execução.
Sistemas operacionais compatíveis
O script de instalação do Linux foi testado nos seguintes sistemas operacionais:
- Debian 10, 11 e 12
- Red Hat Enterprise Linux (RHEL) 8 e 9
- Rocky Linux 8 e 9
- Ubuntu 20, 22 e 24
Se você usar esse script em outros sistemas operacionais, a instalação falhará. Esse script pode instalar drivers da NVIDIA e também o Kit de ferramentas do CUDA. Para instalar os drivers de GPU e o kit de ferramentas CUDA, conclua as etapas a seguir:
Se você tiver a versão 2.38.0 ou posterior do Agente de operações que coleta métricas da GPU na VM, interrompa o agente antes de instalar ou fazer upgrade dos drivers de GPU. usando este script de instalação.
Depois de concluir a instalação ou o upgrade do driver da GPU, reinicie a VM.
Para encerrar o agente de operações, execute o seguinte comando:
sudo systemctl stop google-cloud-ops-agent
Verifique se o Python 3 está instalado no seu sistema operacional.
Faça o download do script de instalação.
curl -L https://github.com/GoogleCloudPlatform/compute-gpu-installation/releases/download/cuda-installer-v1.1.0/cuda_installer.pyz --output cuda_installer.pyz
Execute o script de instalação.
sudo python3 cuda_installer.pyz install_driver
O script leva algum tempo para ser executado. A VM será reiniciada. Se a VM for reiniciada, execute o script novamente para continuar a instalação.
Verifique a instalação. Consulte Verificar a instalação do driver da GPU.
Também é possível usar essa ferramenta para instalar o guia de ferramentas CUDA. Para instalar o kit de ferramentas CUDA, execute o seguinte comando:
sudo python3 cuda_installer.pyz install_cuda
Este script pode levar pelo menos 30 minutos para ser executado. A VM será reiniciada. Se a VM for reiniciada, execute o script novamente para continuar a instalação.
Verificar a instalação do kit de ferramentas CUDA.
sudo python3 cuda_installer.pyz verify_cuda
Linux (script de inicialização)
Use estas instruções para instalar drivers de GPU durante a inicialização de uma VM.
Sistemas operacionais compatíveis
O script de instalação do Linux foi testado nos seguintes sistemas operacionais:
- Debian 10, 11 e 12
- Red Hat Enterprise Linux (RHEL) 8 e 9
- Rocky Linux 8 e 9
- Ubuntu 20, 22 e 24
Se você usar esse script em outros sistemas operacionais, a instalação falhará. Esse script pode instalar drivers da NVIDIA e também o Kit de ferramentas do CUDA.
Use o seguinte script de inicialização. para automatizar o driver e a instalação do kit de ferramentas do CUDA:
Windows
Esse script de instalação pode ser usado em VMs com inicialização segura ativada.
- Para VMs do Windows que usam uma série de máquinas G2, esse script instala apenas o driver da NVIDIA.
- Para outros tipos de máquina, o script instala o driver da NVIDIA e o kit de ferramentas CUDA.
Abra um terminal do PowerShell como administrador e conclua as seguintes etapas:
Se você estiver usando o Windows Server 2016, defina a versão do Transport Layer Security (TLS) como 1.2.
[Net.ServicePointManager]::SecurityProtocol = 'Tls12'
Faça o download do script.
Invoke-WebRequest https://github.com/GoogleCloudPlatform/compute-gpu-installation/raw/main/windows/install_gpu_driver.ps1 -OutFile C:\install_gpu_driver.ps1
Execute o script.
C:\install_gpu_driver.ps1
O script leva algum tempo para ser executado. Nenhum prompt de comando é fornecido durante o processo de instalação. Depois que o script é encerrado, o driver é instalado.
Esse script instala os drivers no seguinte local padrão na VM:
C:\Program Files\NVIDIA Corporation\
.Verifique a instalação. Consulte Verificar a instalação do driver da GPU.
Instalar drivers de GPU (VMs com inicialização segura)
Estas instruções são para instalar drivers de GPU em VMs do Linux que usam inicialização segura.
Se você está usando uma VM do Windows ou uma VM do Linux que não usa a inicialização segura, analise uma das seguintes instruções:
A instalação do driver em uma VM com inicialização segura é diferente para VMs do Linux, porque elas exigem que todos os módulos do kernel sejam assinados pela chave em que o sistema confia.
Estas instruções estão disponíveis apenas para VMs do Linux com inicialização segura executadas nos sistemas operacionais Ubuntu 18.04, 20.04 e 22.04. O suporte para mais sistemas operacionais está em andamento.
Para instalar drivers de GPU nas VMs do Ubuntu que usam a inicialização segura, siga estas etapas:
Conecte-se à VM em que você quer instalar o driver.
Atualize o repositório.
sudo apt-get update
Procure o pacote de módulo do kernel da NVIDIA mais recente ou a versão escolhida. Esse pacote contém módulos de kernel da NVIDIA assinados pela chave do Ubuntu. Se você quiser encontrar uma versão anterior, mude o número do parâmetro cauda para receber uma versão anterior. Por exemplo, especifique
tail -n 2
.Ubuntu PRO e LTS
Para Ubuntu PRO e LTS, execute o seguinte comando:
NVIDIA_DRIVER_VERSION=$(sudo apt-cache search 'linux-modules-nvidia-[0-9]+-gcp$' | awk '{print $1}' | sort | tail -n 1 | head -n 1 | awk -F"-" '{print $4}')
Ubuntu PRO FIPS
Para o Ubuntu PRO FIPS, execute os seguintes comandos:
Ativar as atualizações do Ubuntu FIPS.
sudo ua enable fips-updates
Encerrar e reiniciar
sudo shutdown -r now
Faça o download do pacote mais recente.
NVIDIA_DRIVER_VERSION=$(sudo apt-cache search 'linux-modules-nvidia-[0-9]+-gcp-fips$' | awk '{print $1}' | sort | tail -n 1 | head -n 1 | awk -F"-" '{print $4}')
Para verificar a versão do driver escolhido, execute
echo $NVIDIA_DRIVER_VERSION
. A saída é uma string de versão como455
.Instale o pacote do módulo do kernel e o driver da NVIDIA correspondente.
sudo apt install linux-modules-nvidia-${NVIDIA_DRIVER_VERSION}-gcp nvidia-driver-${NVIDIA_DRIVER_VERSION}
Se o comando falhar com
package not found error
, talvez o driver NVIDIA mais recente esteja ausente no repositório. Repita a etapa anterior e selecione uma versão anterior do driver mudando o número da cauda.Verifique se o driver NVIDIA está instalado. Talvez seja necessário reinicializar a VM.
Se você reiniciou o sistema para verificar a versão da NVIDIA. Após a reinicialização, você precisa redefinir a variável
NVIDIA_DRIVER_VERSION
executando novamente o comando usado na etapa 3.Configure o APT para usar o repositório do pacote da NVIDIA.
Para ajudar o APT a escolher a dependência correta, fixe os repositórios da seguinte maneira:
sudo tee /etc/apt/preferences.d/cuda-repository-pin-600 > /dev/null <<EOL Package: nsight-compute Pin: origin *ubuntu.com* Pin-Priority: -1
Package: nsight-systems Pin: origin *ubuntu.com* Pin-Priority: -1
Package: nvidia-modprobe Pin: release l=NVIDIA CUDA Pin-Priority: 600
Package: nvidia-settings Pin: release l=NVIDIA CUDA Pin-Priority: 600
Package: * Pin: release l=NVIDIA CUDA Pin-Priority: 100 EOLInstale
software-properties-common
. Isso é necessário se você estiver usando imagens mínimas do Ubuntu.sudo apt install software-properties-common
Define a versão do Ubuntu.
Ubuntu 18.04
Para o Ubuntu 18.04, execute o seguinte comando:
export UBUNTU_VERSION=ubuntu1804/x86_64
Ubuntu 20.04
Para o Ubuntu 20.04, execute o seguinte comando:
export UBUNTU_VERSION=ubuntu2004/x86_64
Ubuntu 22.04
Para o Ubuntu 22.04, execute o seguinte comando:
export UBUNTU_VERSION=ubuntu2204/x86_64
Faça o download do pacote
cuda-keyring
:wget https://developer.download.nvidia.com/compute/cuda/repos/$UBUNTU_VERSION/cuda-keyring_1.0-1_all.deb
Instale o pacote
cuda-keyring
.sudo dpkg -i cuda-keyring_1.0-1_all.deb
Adicione o repositório da NVIDIA.
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/$UBUNTU_VERSION/ /"
Se solicitado, selecione a ação padrão para manter a versão atual.
Encontre a versão do driver CUDA compatível.
O script a seguir determina a versão mais recente do driver CUDA compatível com o driver da NVIDIA que acabamos de instalar:
CUDA_DRIVER_VERSION=$(apt-cache madison cuda-drivers | awk '{print $3}' | sort -r | while read line; do if dpkg --compare-versions $(dpkg-query -f='${Version}\n' -W nvidia-driver-${NVIDIA_DRIVER_VERSION}) ge $line ; then echo "$line" break fi done)
Para verificar a versão do driver CUDA, execute
echo $CUDA_DRIVER_VERSION
. A saída é uma string de versão como455.32.00-1
.Instale os drivers CUDA com a versão identificada na etapa anterior.
sudo apt install cuda-drivers-${NVIDIA_DRIVER_VERSION}=${CUDA_DRIVER_VERSION} cuda-drivers=${CUDA_DRIVER_VERSION}
Opcional: mantenha pressionado pacotes
dkms
.Depois que a Inicialização segura for ativada, todos os módulos do kernel precisam ser assinados para que sejam carregados. Os módulos de kernel criados por
dkms
não funcionam na VM porque, por padrão, não são assinados corretamente. Essa etapa é opcional, mas pode ajudar a impedir a instalação acidental de outros pacotesdkms
futuramente.Para manter os pacotes
dkms
, execute o seguinte comando:sudo apt-get remove dkms && sudo apt-mark hold dkms
Instale o kit de ferramentas e o ambiente de execução do CUDA.
Escolha a versão apropriada do CUDA. O script a seguir determina a versão do CUDA mais recente, compatível com o driver CUDA que acabamos de instalar:
CUDA_VERSION=$(apt-cache showpkg cuda-drivers | grep -o 'cuda-runtime-[0-9][0-9]-[0-9],cuda-drivers [0-9\\.]*' | while read line; do if dpkg --compare-versions ${CUDA_DRIVER_VERSION} ge $(echo $line | grep -Eo '[[:digit:]]+\.[[:digit:]]+') ; then echo $(echo $line | grep -Eo '[[:digit:]]+-[[:digit:]]') break fi done)
Para verificar a versão do CUDA, execute
echo $CUDA_VERSION
. A saída é uma string de versão como11-1
.Instale o pacote CUDA.
sudo apt install cuda-${CUDA_VERSION}
Verifique a instalação do CUDA.
sudo nvidia-smi
/usr/local/cuda/bin/nvcc --version
O primeiro comando imprime as informações da GPU. O segundo comando imprime a versão do compilador CUDA instalado.
Verificar a instalação do driver da GPU
Depois de concluir as etapas de instalação do driver, verifique se o driver foi instalado e inicializado corretamente.
Linux
Conecte-se à instância do Linux e use o comando nvidia-smi
para verificar se o driver está funcionando corretamente.
sudo nvidia-smi
O resultado será assim:
Tue Mar 21 19:50:15 2023 +-----------------------------------------------------------------------------------------+ | NVIDIA-SMI 550.90.07 Driver Version: 550.90.07 CUDA Version: 12.4 | |-----------------------------------------+------------------------+----------------------+ | 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 | 00000000:00:04.0 Off | 0 | | N/A 50C P8 16W / 70W | 1MiB / 15360MiB | 0% Default | | | | N/A | +-----------------------------------------+------------------------+----------------------+ +-----------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=========================================================================================| | No running processes found | +-----------------------------------------------------------------------------------------+
Se esse comando falhar, revise o seguinte:
Verifique se as GPUs estão anexadas à VM. Para verificar se há dispositivos NVIDIA PCI, execute o seguinte comando:
sudo lspci | grep -i "nvidia"
Verifique se a versão do kernel do driver e a do kernel da VM são as mesmas.
Para verificar a versão do kernel da VM, execute o seguinte comando:
uname -r
Para verificar a versão do kernel do driver, execute o seguinte comando:
sudo apt-cache show linux-modules-nvidia-NVIDIA_DRIVER_VERSION-gcp
Se as versões não corresponderem, reinicialize a VM para a nova versão do kernel.
Windows Server
Conecte-se à instância do Windows Server e abra um terminal do PowerShell. Em seguida, execute o comando a seguir para verificar se o driver está sendo executado corretamente.
nvidia-smi
O resultado será assim:
+---------------------------------------------------------------------------------------+ | NVIDIA-SMI 538.67 Driver Version: 538.67 CUDA Version: 12.2 | |-----------------------------------------+----------------------+----------------------+ | GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 NVIDIA L4 WDDM | 00000000:00:03.0 Off | 0 | | N/A 66C P8 17W / 72W | 128MiB / 23034MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ +---------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================| | 0 N/A N/A 4888 C+G ...CBS_cw5n1h2txyewy\TextInputHost.exe N/A | | 0 N/A N/A 5180 C+G ....Search_cw5n1h2txyewy\SearchApp.exe N/A | +---------------------------------------------------------------------------------------+
A seguir
- Consulte Monitorar o desempenho da GPU para mais informações sobre esse assunto.
- Para lidar com a manutenção do host da GPU, consulte Manipular eventos de manutenção do host da GPU.
- Para melhorar o desempenho da rede, consulte Usar uma largura de banda de rede maior.
- Para resolver problemas de VMs de GPU, consulte este link.