Questões de Concurso
Sobre processamento paralelo em arquitetura de computadores
Foram encontradas 120 questões
Nesse contexto, assinale a opção que descreve corretamente a Taxonomia de Flynn.
Assinale a opção que descreve corretamente um aspecto da paralelização usando aceleradores.
Assinale a opção que descreve corretamente uma característica da arquitetura de processamento paralelo.
Assinale a opção que descreve corretamente uma diferença entre as arquiteturas SIMD (Single instruction - Multiple Data) e MIMD (Multiple instruction - Multiple Data).
Sobre o uso de memória distribuída ou compartilhada, analise as afirmativas a seguir e assinale (V) para a verdadeira e (F) para a falsa.
( ) Em relação ao tempo da comunicação, as memórias distribuídas apresentam vantagem majoritariamente.
( ) Em relação à um número crescente de processadores que podem cooperar eficientemente, os computadores de memória distribuída apresentam mais vantagens.
( ) Quando o número de processadores deve ser alto (mais que 8) para reduzir o tempo de execução, a velocidade da comunicação se torna um fator crucial para a performance.
( ) OpenCL é uma biblioteca de especificação de passagem de mensagem muito útil para a implementação de paralelismo.
As afirmativas são, respetivamente,
Assinale a opção que indica o modelo que consiste em unidades de processamento e módulos de memória acessados por uma rede de interconexão comum, sem memórias locais, permitindo o acesso uniforme às memórias quando não há acessos coincidentes.
I. Sistemas de memória compartilhada.
II. Sistemas distribuídos.
III. Sistemas de tempo real.
IV. Unidades de processamento gráfico (GPU).
V. Sistemas embarcados.
Está correto o que se afirma em
A esse respeito, analise as afirmativas a seguir e assinale (V) para verdadeira e (F) para a falsa.
( ) A cláusula shared(list) especifica que cada variável da lista é compartilhada por todas threads do time, isso é, cada thread tem sua própria cópia da variável.
( ) A cláusula firstprivate(list) especifica que cada variável da lista é privada por todas threads do time, mas são inicializadas com o valor que continha no momento em que a região paralela foi encontrada.
( ) A cláusula private(list) especifica que cada variável da lista é privada por todas threads do time, isso é, todas as threads compartilham uma mesma cópia da variável.
As afirmativas são, respectivamente,
Neste contexto, assinale a opção que apresenta o argumento utilizado no padrão OpenMP para combinar múltiplos loops em um único, permitindo sua execução em paralelo.
Atenção: o enunciado a seguir refere-se à próxima questão.
OpenMP é um ambiente de programação paralela adequado para escrever programas paralelos a serem executados em sistemas de memória compartilhada. É uma coleção de interfaces de programação de aplicativos que inclui diretivas de compilador, funções de suporte e variáveis de ambiente, permitindo que os programadores explorem e controlem o paralelismo durante a execução de um programa.
Atenção: o enunciado a seguir refere-se à próxima questão.
OpenMP é um ambiente de programação paralela adequado para escrever programas paralelos a serem executados em sistemas de memória compartilhada. É uma coleção de interfaces de programação de aplicativos que inclui diretivas de compilador, funções de suporte e variáveis de ambiente, permitindo que os programadores explorem e controlem o paralelismo durante a execução de um programa.
( ) A cláusula shared(list) especifica que cada variável da lista é compartilhada por todas threads do time, isso é, todas as threads compartilham uma mesma cópia da variável.
( ) Por padrão, variáveis declaradas antes de um bloco paralelo são compartilhadas.
( ) A cláusula private(list) especifica que cada variável da lista é privada por todas threads do time, isso é, cada thread tem sua própria cópia da variável.
( ) Por padrão, variáveis declaradas dentro de um bloco paralelo são privadas.
As afirmativas são, respectivamente,
Com relação à tecnologia MapReduce, assinale V para a afirmativa verdadeira e F para a falsa.
( ) A ideia principal do MapReduce é dividir e processar tarefas e depois juntar as informações, o que permite dividir um grande problema em vários pedaços e distribuí-los em diversos computadores.
( ) Os principais passos correspondem a: (i) Input split, onde a entrada é dividida em várias partes, onde cada parte será consumida por um Map; (ii) Map, onde é criada uma lista de pares chave-valor; (iii) Shuffling , onde se classifica e agrupa a saída da etapa anterior para servir de entrada para a seguinte; (iv) Reduce, onde se processa a saída da etapa anterior e se agregam as informações; (v) Output, quando as informações são retornadas.
( ) As principais características do MapReduce se referem a esconder os detalhes do processamento em série, tolerância a falhas, otimização de localidade e balanceamento de memória, que resultam em modelo fácil de usar, mesmo para programadores sem experiência com sistemas paralelos e distribuídos.
As afirmativas são, respectivamente,
Considerando as diferenças básicas entre as arquiteturas de CPU e GPU, analise os itens a seguir.
I. As arquiteturas a GPU e a CPU diferem de modo significativo pois foram desenvolvidas e otimizadas para dois tipos significativamente diferentes de aplicações, tendo baixa similaridade na quantidade relativa de área da pastilha (número de transistores) dedicada à cache, à lógica de controle e à lógica de processamento.
II. As GPUs podem esconder a latência da memória ao administrar a execução de mais threads do que os cores processadores disponíveis, além de simplesmente serem capazes de executar os mesmos threads de código em grandes quantidades de dados.
III. O conhecimento das nuances de várias memórias de uma GPU são importantes no desenvolvimento da programação paralela, em especial quanto aos tempos de acesso relativos, as limitações de acessibilidade e a quantidade de MMU (Memory Management Unit).
Está correto o que se afirma em