
Execute um benchmark GROMACS reproduzível em um RTX 4090 usando a imagem otimizada para GPU do Compute. Este guia mostra como verificar o acesso à GPU, instalar o GROMACS corretamente e executar um benchmark básico descarregado da GPU sem adivinhações.
Este artigo é não um manual de solução de problemas e não uma promessa de configuração com um clique. É um caminho prático e reproduzível que corresponde à forma como as instâncias de computação realmente funcionam atualmente.
Este guia pressupõe que:
As instâncias de computação são ambientes em contêineres. Você não deve presumir que “apt-get anything I want” ou “build once and forget” serão válidos durante as reinicializações. Se você precisar de um ambiente fixo a longo prazo, crie um modelo personalizado.
Imagem otimizada para GPU
Faça não suponha que o GROMACS esteja pré-instalado. Não é.
Inicie a instância.
Faça o SSH na instância usando o comando mostrado na interface do usuário.
Primeiro, verifique se a GPU está visível:
nvidia-smi
Você deve ver o RTX 4090 listado.
Se nvidia-smi falha ou não mostra nenhuma GPU, pare aqui. Encerre a instância e tente novamente. Se isso acontecer novamente, esse é um problema de plataforma e deve ir para o Suporte.
Você tem dois caminhos compatíveis. Escolha um e cumpra-o.
Isso evita incompatibilidades entre CUDA, compilador e compilação.
Verifique se o Docker ou um ambiente de execução de contêiner compatível está disponível:
docker --versão
Em seguida, execute:
docker run --rm --gpus all gromacs/gromacs:2024.1 gmx --version
Se isso funcionar e mostrar uma compilação habilitada para GPU, você está pronto para executar trabalhos usando o contêiner.
Essa é a opção mais segura no Compute atualmente.
Faça isso somente se você souber que precisa de uma compilação personalizada.
Em um alto nível, isso significa:
Siga o guia oficial de instalação do GROMACS e certifique-se de que o suporte CUDA esteja ativado. Não misture instruções de blogs ou guias antigos.
Esteja ciente: as alterações feitas dessa forma não têm garantia de persistir nos ciclos de vida da instância, a menos que você converta o resultado em um modelo personalizado.
Crie um diretório de trabalho:
mkdir -p ~/gromacs
cd ~/gromacs
Você precisa de um .tpr arquivo a ser executado mdrun.
Se você já tiver um, copie-o aqui.
Caso contrário, gere-o a partir de entradas existentes:
gmx grompp -f md.mdp -c conf.gro -p topol.top -o system.tpr
Execute o GROMACS com sinalizadores de GPU explícitos:
banco de dados gmx mdrun -s system.tpr -deffnm\
-nb gpu -pme gpu -atualizar gpu -pin ativado
Enquanto estiver em execução, confirme a atividade da GPU em outro shell:
nvidia-smi
Você deve ver uma utilização diferente de zero.
Quando a execução terminar, observe o desempenho relatado (ns/dia).
gmx --versão relata suporte a GPUnvidia-smi mostra a atividade durante a corridaSe essas condições não forem atendidas, esse não é um benchmark válido.
“GROMACS não encontrado”
Você selecionou a imagem otimizada para GPU. O GROMACS não vem pré-instalado. Use o contêiner ou instale-o explicitamente.
Erros de CUDA ou GPU em tempo de execução
Você está misturando versões CUDA incompatíveis ou o contêiner não tem acesso à GPU. Verifique com nvidia-smi e gmx --versão.
Desempenho inconsistente entre as execuções
Você está alterando o tamanho da instância, a alocação de CPU ou as versões do contêiner. Os benchmarks só são significativos se o ambiente for estável.
O desempenho depende de:
Os números deste artigo são meramente ilustrativos. Sempre compare sua própria carga de trabalho.
Nesses casos, este artigo o frustrará. Crie um modelo personalizado ou entre em contato com o Suporte.
Inicie uma instância de GPU com um modelo pronto para CUDA (por exemplo, Ubuntu 24.04 LTS/CUDA 12.6) ou sua própria imagem GROMACS. Aproveite o faturamento flexível por segundo com modelos personalizados e a capacidade de iniciar, interromper e retomar suas sessões a qualquer momento. Não tem certeza sobre os requisitos do FP64? Entre em contato com o suporte para ajudá-lo a selecionar o perfil de hardware ideal para suas necessidades computacionais.