CUDA e MPI são duas tecnologias amplamente utilizadas em Co...

Próximas questões
Com base no mesmo assunto
Q2520885 Arquitetura de Computadores
CUDA e MPI são duas tecnologias amplamente utilizadas em Computação de Alto Desempenho. Assinale a alternativa que apresenta a principal diferença entre CUDA e MPI.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: B

1. Tema central

Esta questão aborda tecnologias de processamento paralelo em arquitetura de computadores, especialmente CUDA e MPI. É essencial compreender o que cada uma faz e em quais contextos são utilizadas.

2. Resumo teórico

CUDA (Compute Unified Device Architecture) é uma plataforma de computação paralela criada pela NVIDIA, que permite usar a placa de vídeo (GPU) para executar tarefas de processamento massivamente paralelo, principalmente em aplicações científicas, gráficas e de engenharia (Fonte: NVIDIA CUDA Programming Guide).

MPI (Message Passing Interface) é um padrão de comunicação entre processos muito usado em sistemas distribuídos e clusters de computadores. Ele permite que programas transmitam dados entre processos executados em diferentes máquinas ou nós (Fonte: MPI Standard Documentation).

3. Justificativa da alternativa correta (B)

A alternativa B está correta porque:

  • CUDA é realmente específica para programação em GPUs.
  • MPI é voltada para comunicação entre processos em sistemas distribuídos, ou seja, sua principal função é permitir que diferentes processos troquem mensagens em ambientes distribuídos.

Essas definições capturam a principal diferença entre as duas tecnologias.

4. Análise das alternativas incorretas

  • A: Incorreta. CUDA não é uma linguagem de programação, mas sim uma plataforma/API baseada em C/C++; MPI também é uma interface, não uma linguagem.
  • C: Incorreta. CUDA não é uma biblioteca de comunicação para sistemas distribuídos; ela é usada para paralelismo em GPU local.
  • D: Incorreta. CUDA não é usada para programação paralela em CPUs, e sim em GPUs.
  • E: Parcialmente correta, pois descreve ambos como complementares, mas não destaca a principal diferença como pede o enunciado.

5. Estratégias para interpretação

Ao resolver questões desse tipo:

  • Identifique palavras-chave como “principal diferença”.
  • Cuidado com pegadinhas que confundem linguagem de programação com interface ou plataforma.
  • Busque associar cada tecnologia ao seu contexto de uso: CUDA → GPU; MPI → Sistemas Distribuídos.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

A alternativa correta para a diferença entre CUDA e MPI é B: CUDA e MPI são ambas linguagens de programação para programação paralela, mas CUDA é específica para programação em GPUs, enquanto MPI é utilizada para comunicação entre processos em sistemas distribuídos.

A principal diferença entre CUDA e MPI é:

B) CUDA e MPI são ambas linguagens de programação para programação paralela, mas CUDA é específica para programação em GPUs, enquanto MPI é utilizada para comunicação entre processos em sistemas distribuídos.

CUDA é a plataforma da NVIDIA para computação massivamente paralela em GPUs, sendo amplamente usada em inteligência artificial, big data e física computacional.

  • Usa arquitetura SIMD (Single Instruction, Multiple Data).
  • Programação baseada em kernels para execução paralela em milhares de threads.
  • Altamente otimizado para GPUs NVIDIA.
  • CUDA permite aceleração de cálculos complexos em comparação com CPUs tradicionais.

MPI (Message Passing Interface) é o principal padrão para programação paralela em clusters e supercomputadores, sendo baseado na troca de mensagens entre nós. Essencial para aplicações científicas, pois permite que milhares de processos executem tarefas paralelamente.

  • Modelo de memória distribuída: Processos não compartilham memória.
  • Comunicação explícita via envio e recebimento de mensagens.
  • Suporte para linguagens como C, C++ e Fortran.
  • Portável e otimizado para supercomputadores e clusters HPC.

MPI não é uma linguagem de programação eu marcaria a E.

CUDA (Compute Unified Device Architecture) and MPI (Message Passing Interface) are distinct but complementary technologies used in high-performance computing (HPC).

CUDA is a parallel computing platform and programming model developed by NVIDIA for its Graphics Processing Units (GPUs)

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo