CUDA Academy · Aula

Decodifique cudaGetErrorString

Transforme códigos em mensagens legíveis.

Aula 4 de 413 etapas

Decodifique cudaGetErrorString é uma aula grátis de CUDA Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de CUDA Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de CUDA Academy inclui 4 aulas no total.

Os códigos não são amigáveis

Um cudaError_t bruto é apenas um número. Para entendê-lo, traduza-o para uma linguagem simples com cudaGetErrorString. 📖

O que ela retorna

cudaGetErrorString recebe um código de erro e retorna uma cadeia de caracteres C legível, descrevendo exatamente o que deu errado.

const char* msg = cudaGetErrorString(e);

Imprima a mensagem

Passe essa cadeia diretamente para printf, para que seus registros informem o que aconteceu em vez de exibirem um número enigmático.

printf("CUDA error: %s\n", cudaGetErrorString(e));

Uma mensagem comum

Uma mensagem que você verá com frequência é out of memory, indicando que um cudaMalloc solicitou mais memória do que o dispositivo podia fornecer.

Configuração inválida

A cadeia invalid configuration argument significa que sua inicialização solicitou threads demais ou um tamanho ilegal de bloco ou grade.

Endereço ilegal

Uma mensagem de illegal address aponta para um acesso fora dos limites dentro de um kernel, geralmente causado pela ausência de uma verificação dos limites do índice.

Combine com sua verificação

Ela é especialmente útil dentro da macro CUDA_CHECK: capture o código e depois imprima sua cadeia, para que as falhas se expliquem imediatamente.

if (e) printf("%s\n", cudaGetErrorString(e));

Duas funções auxiliares para cadeias

Também existe cudaGetErrorName, que retorna o nome da enumeração, como cudaErrorMemoryAllocation, em vez da descrição longa.

printf("%s\n", cudaGetErrorName(e));

Nome versus descrição

Use o nome para registros compactos e a descrição para obter clareza. Muitas equipes imprimem ambos para aproveitar o melhor de cada um.

printf("%s: %s\n", cudaGetErrorName(e), cudaGetErrorString(e));

Pesquise a mensagem

Está com dificuldade para resolver uma falha? Cole a cadeia de erro em um mecanismo de pesquisa. A formulação é padronizada, então outras pessoas provavelmente já enfrentaram o mesmo problema.

Do mistério à correção

Decodificar transforma um número inútil em uma pista clara. A mensagem certa frequentemente aponta diretamente para a linha que você precisa corrigir.

Verificação rápida

Teste sua compreensão de cudaGetErrorString.

Recapitulação: decodifique seus erros

cudaGetErrorString transforma códigos em mensagens legíveis, e cudaGetErrorName fornece o nome da enumeração. Imprima ambos para depurar com confiança. 🎉

Grátis para começar

Aprenda C++ com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
30
Aulas
120

Perguntas Frequentes

A aula “Decodifique cudaGetErrorString” é grátis?

Sim — o texto completo de “Decodifique cudaGetErrorString” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de CUDA Academy, atualize para CoddyKit PRO. O curso de CUDA Academy inclui 4 aulas no total.

O que vou aprender em “Decodifique cudaGetErrorString”?

Transforme códigos em mensagens legíveis. Você pratica CUDA Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar CUDA Academy?

Nenhuma experiência prévia é necessária. CUDA Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Decodifique cudaGetErrorString”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de CUDA Academy?

Sim. Cada aula de CUDA Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Códigos de retorno versus erros assíncronos
  2. cudaGetLastError após a execução
  3. Uma macro CUDA_CHECK reutilizável
  4. Decodifique cudaGetErrorString
← Voltar para CUDA Academy