Ao generalizar um algoritmo de agregação que será executado em paralelo sobre uma coleção, qual propriedade a…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Compreender os conceitos de paralelismo, concorrência e armazenamento/ processamento distribuídos.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Ao generalizar um algoritmo de agregação que será executado em paralelo sobre uma coleção, qual propriedade a operação binária passada como parâmetro deve satisfazer para garantir que a divisão do trabalho não altere o resultado?
- A) Consistência da operação em todos os operandos.
- B) Determinismo da função para entradas iguais.
- C) Associatividade
- D) Comutatividade da operação realizada pela função.
- E) Idempotência da operação utilizada no algoritmo.
✅ Resposta correta: alternativa C
Resolução passo a passo
- Ao dividir uma coleção em partes que são agregadas em paralelo, cada thread calcula um resultado parcial e depois os parciais são combinados. Para que o resultado final não dependa de como a divisão foi feita, a operação precisa permitir agrupar os operandos de qualquer forma sem mudar o valor. Essa propriedade é a associatividade: (a op b) op c = a op (b op c).
- Exemplo com soma em 1, 2, 3, 4. Dividindo em [1,2] e [3,4], temos (1+2)+(3+4)=10. Dividindo em [1], [2,3,4], temos 1+(2+3+4)=10. A soma é associativa, então o resultado não muda.
- Por que as outras estão erradas. A) consistência não é a propriedade exigida pelo cálculo em paralelo, pois o termo é vago e não descreve a regra de agrupamento. B) determinismo da função garante apenas que a mesma entrada gera a mesma saída, o que não impede que a ordem de agrupamento altere o resultado. D) comutatividade não é necessária para a divisão em blocos contíguos, já que a ordem pode ser preservada; a exigência é de agrupamento, não de troca de posições. E) idempotência é uma propriedade específica de algumas operações, como máximo e mínimo, e não é exigida de forma geral para generalizar uma agregação paralela.
- Conclusão. A propriedade que garante que a divisão do trabalho não altere o resultado é a associatividade, alternativa C, que coincide com o gabarito oficial.
💡 Dica: Considere as propriedades das operações binárias em algoritmos paralelos.
Alternativa por alternativa
Acredita que basta a operação se comportar de modo uniforme ou coerente para todos os valores; o aluno confunde consistência, termo genérico, com a regra específica de agrupamento.
Associa a segurança do paralelismo ao determinismo, imaginando que, se a função sempre devolve o mesmo resultado para a mesma entrada, a divisão não causa problemas; esquece que o agrupamento parcial pode mudar o resultado final.
Operações associativas permitem reagrupar operandos (a+b)+c = a+(b+c), o que torna válido combinar resultados parciais produzidos por threads em qualquer ordem.
Supõe que a operação precisa ser comutativa para ser paralelizada, confundindo a necessidade de reagrupar operandos com a necessidade de trocar sua ordem, que não é exigida quando os blocos são contíguos.
Por que engana: Confundir associatividade com comutatividade, acreditando que ambas são a mesma propriedade.
Acredita que repetir a operação sobre um mesmo valor deve ser irrelevante para o paralelismo e generaliza uma propriedade válida só para operações como máximo e mínimo, que não são o requisito geral do algoritmo.
Raio-X da questão
algoritmo de agregação
avaliacao
propriedades de operações binárias · algoritmos de agregação
Revisar propriedades de operações binárias em algoritmos paralelos.
Confundir associatividade com comutatividade, acreditando que ambas são a mesma propriedade.
ciencia_tecnologia
pensamento_critico
cientifico
Questões parecidas com resolução
- Ao generalizar um algoritmo para aplicar operações distintas a elementos de uma coleção heterogênea, que tipo de…
- Ao generalizar um algoritmo que processa uma coleção e acumula resultados, qual prática relativa à variável acumuladora…
- Para tornar um algoritmo reutilizável e seguro para execução paralela, qual prática relacionada a variáveis e efeitos…
- Considere um algoritmo que integra dados de sensores em uma rede. Ao aplicar decomposição, qual subtarefa deve garantir…
- Ao generalizar um algoritmo de ordenação para aceitar critérios distintos, que tipo de variável deve ser passada como…
- Ao decompor um algoritmo que atualiza a mesma variável de estado em várias subtarefas, que estratégia reduz efeitos…
Todas as questões de Sistemas distribuídos e internet - Fundamentos de sistemas distribuídos
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
