FC ConcursosFC Concursos

Questão FC406283

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 prog

Questões sem classificação de assunto (TI - Organização e Arquitetura dos Computadores)

FGV · 2024

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.

 

Com isto em mente, a cláusula que especifica o número de threads que devem ser executadas em um bloco estruturado em paralelo é

  1. omp_get_thread_num().
  2. collapse(n).
  3. omp_get_num_threads().
  4. reduction(operator:variable).
  5. num_threads.
Mostrar resposta e comentário

Gabarito

Errado

Comentário do professor

A cláusula num_threads em OpenMP especifica diretamente a quantidade de threads que serão criadas para executar o bloco estruturado paralelo ao qual ela é aplicada.

Sintaxe típica (C/C++): #pragma omp parallel num_threads(4) { ... } — o valor dentro dos parênteses é uma expressão inteira avaliada em tempo de execução e pode ser uma constante, variável ou chamada de função.

Seu efeito é local ao bloco paralelo: ela sobrepõe temporariamente configurações globais (por exemplo, OMP_NUM_THREADS ou omp_set_num_threads) apenas para aquela região. Se o valor for ≤ 0, o comportamento é inválido; implementações podem criar menos threads se houver restrições de recursos.

Use num_threads quando precisar controlar finamente o grau de paralelismo de uma região específica sem alterar parâmetros globais do programa.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo