Questão FC266522
No que diz respeito às primitivas básicas de programação paralela, controle de tarefas, comunicação e sincronização, a seguir são descritos dois modelos de programação. I. Execução
Conceitos de Arquitetura de Computadores
IDECAN · 2021
No que diz respeito às primitivas básicas de programação paralela, controle de tarefas, comunicação e sincronização, a seguir são descritos dois modelos de programação.
I. Execução de uma mesma atividade sobre diferentes partes de um conjunto de dados. Os dados determinam a concorrência da aplicação e a forma como o cálculo deve ser distribuído na arquitetura.
II. Execução de tarefas que compartilham um mesmo espaço de memória. Comunicação através do acesso a uma área compartilhada
Os modelos de programação descritos em I e II são denominados, respectivamente, paralelismo
- de tarefas e memória compartilhada
- de dados e memória segmentada
- de tarefas e memória particionada
- de dados e memória compartilhada
Mostrar resposta e comentário
Gabarito
D
Comentário do professor
Paralelismo de dados: consiste em aplicar a mesma operação simultaneamente a diferentes partes de um conjunto de dados. A concorrência é definida pelos próprios dados e pela decomposição do problema — por exemplo, processamento de vetores, imagens ou arrays em blocos. Esse modelo facilita balanceamento e escalabilidade em arquiteturas como GPUs e SIMD, pois a comunicação entre tarefas é mínima e o foco é distribuir o cálculo sobre os dados.
Memória compartilhada: várias tarefas ou threads executam em um mesmo espaço de endereço e comunicam-se por acesso a regiões comuns. Esse modelo exige mecanismos de sincronização (por exemplo, locks, barreiras, operações atômicas) para evitar condições de corrida e garantir coerência. É comum em programação multithread (p. ex., POSIX threads, OpenMP), oferecendo comunicação de baixa latência, porém requer cuidado no controle de concorrência.
Conteúdo do catálogo FC Concursos · Atualizado em