Questão nº 12
Questão de Ciência de Dados · FGV SEFAZ-MG 2022 - Tarde (nº 12)
Cálculos numéricos usam arrays para representar vetores, matrizes e tensores. As operações distribuídas comuns em torno de arrays podem ser encontrados na especificação Message Passing Interface (MPI).
Assinale a opção que não figura como uma das operações MPI.
- ABroadcast: transmite um array de um processo para muitos outros processos.
- BGather/AllGather: coleta arrays de diferentes processos e cria um array maior em um único processo ou em vários processos.
- CExpand/OneToAll: distribui arrays para diferentes processos. (alternativa correta)
- DScatter/AllToAll: redistribui partes de um array para diferentes processos.
- EReduce/AllReduce: redução de arrays elemento a elemento. Operações populares incluem SUM, MIN, MAX, PROD.
Resposta comentada
Gabarito Alternativa C
MPI (Message Passing Interface) é um padrão para comunicação entre processos que rodam em máquinas diferentes ou na mesma máquina, permitindo que eles trabalhem juntos em um problema, como processar grandes arrays de dados de forma distribuída.
(A) Incorreta: A operação Broadcast (`MPI_Bcast`) é uma função coletiva padrão do MPI que transmite um array (ou qualquer dado) de um processo raiz para todos os outros processos no comunicador.
(B) Incorreta: As operações Gather (`MPI_Gather`) e Allgather (`MPI_Allgather`) são funções coletivas padrão do MPI; `Gather` coleta dados de todos os processos em um único processo, enquanto `Allgather` coleta e distribui o resultado para todos os processos.
(C) Correta: "Expand/OneToAll" não é uma operação coletiva padrão ou nome reconhecido na especificação MPI. Embora o MPI tenha operações que distribuem dados (como `MPI_Bcast` ou `MPI_Scatter`), esta nomenclatura específica não faz parte do padrão. Armadilha: O termo "OneToAll" pode remeter a `MPI_Bcast`, mas "Expand" não é um termo MPI padrão e a combinação não descreve uma operação coletiva específica.
(D) Incorreta: As operações Scatter (`MPI_Scatter`) e AllToAll (`MPI_Alltoall`) são funções coletivas padrão do MPI; `Scatter` distribui partes de um array de um processo para outros, e `Alltoall` permite que cada processo envie e receba dados de todos os outros.
(E) Incorreta: As operações Reduce (`MPI_Reduce`) e AllReduce (`MPI_Allreduce`) são funções coletivas padrão do MPI que aplicam uma operação (como soma, mínimo, máximo, produto) aos elementos correspondentes de arrays distribuídos, consolidando o resultado em um processo (`Reduce`) ou em todos os processos (`Allreduce`).
Fonte: FGV SEFAZ-MG 2022 - Tarde Auditor Fiscal - Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.