Ferramentas do usuário

Ferramentas do site


faq:cuda

CUDA

Qual Máquina tem o CUDA disponível?

A única máquina que tem placas de vídeo Nvidia com capacidade CUDA é a neozil. Ela está equipada com duas Nvidia Tesla K20c SM35.

Qual a versão do CUDA Toolkit disponível?

A versão atual é o CUDA Toolkit 9.1.

Caso o nvcc não funcione

Para poder usar o nvcc e outros comandos do CUDA toolkit, é necessário adicionar a pasta /usr/local/cuda/bin para a sua variável de ambiente PATH.

PATH=$PATH:/usr/local/cuda/bin"
echo "export PATH=$PATH:/usr/local/cuda/bin" >> ~/.bashrc 

Exemplos

A Nvidia provê vários exemplos pequenos, mas muito abrangentes, de código CUDA. Eles estão localizados na pasta /nvidia/NVIDIA_CUDA-X.X_Samples, Para poder compilar, modificar ou executar esses códigos, você deve copiá-los para alguma pasta de sua preferência dentro de sua home:

cp -r /nvidia/NVIDIA_CUDA-9.1_Samples ~/cuda_samples

Compilando e Rodando

O compilador do CUDA aceita códigos C e C++, além do próprio CUDA. Para compilar um arquivo de código, basta chamar o nvcc como se fosse qualquer outro compilador de C.

nvcc codigo.cu 

Para rodar o executável gerado também é como qualquer outro.

Não crie seu próprio nvidia-cuda-mps-server. O nvidia-cuda-mps-server é um processo gerenciador das gpus que é executado pela raíz e não atrapalha a execução do seu processo.
Como o servidor possui duas GPUS, é necessário informar em qual delas seu kernel irá rodar.

Para isso basta, antes de chama-lo, colocar a linha:

cudaSetDevice(id); 

Comando Úteis

Comando Descrição
nvcc Compilador de código CUDA
cudatop Exibe informações de proessos dos usuários e uso das GPUS
nvidia-smi Display de informações gerais das gpus

O comando nvidia-smi é na verdade uma variedade de comandos juntos num comando só (vide nvidia-smi -h) . Com ele é possível obter informações como id, uso e memória livre das GPUs e quais processos estão rodando nelas (grealmente os processos serão gerenciados pelo mps-server e não aparecerão individualmente), o que facilita na hora de escolher uma GPU mais livre para rodar o seu programa.

Uso

Eu vou pessoalmente bater em quem usar isso pra minerar bitcoin. — Jose Goudet Alvim 2020/05/02 07:39

faq/cuda.txt · Última modificação: 2020/05/02 07:40 por josealvim