Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Controla como o código de loop deverá ser considerado pelo paralelizador automático e/ou exclui um loop de ser considerado pelo vetorizador automático.
Sintaxe
#pragma loop( hint_parallel(n) )
#pragma loop( no_vector )
#pragma loop( ivdep )
Parâmetros
hint_parallel(
n)
Indica para o compilador que esse loop deverá ser paralelizado por threads n, em que n é um literal de inteiro positivo ou zero. Se n for zero, o número máximo de threads será usado em tempo de execução. É uma dica para o compilador, não para um comando. Não há garantia de que o loop será paralelizado. Se o loop tiver dependências de dados ou problemas estruturais, ele não será paralelizado. Por exemplo, ele não será paralelizado se armazenar em um escalar usado além do corpo do loop.
O compilador ignorará esta opção, a não ser que a opção de compilador /Qpar seja especificada.
no_vector
Por padrão, o vetorizador automático tenta vetorizar todos os loops que ele avalia que podem se beneficiar disso. Especifique este pragma para desabilitar o vetorizador automático para o loop que se segue.
ivdep
Uma dica para o compilador deverá ignorar as dependências de vetor para esse loop.
Comentários
Para usar o looppragma, coloque-o imediatamente antes, não dentro, de uma definição de loop. O pragma entra em vigor para o escopo do loop que se segue a ele. Você pode aplicar várias diretivas pragma a um loop, em qualquer ordem, mas deve declarar cada um em uma instrução pragma separada.
Confira também
Paralelização automática e vetorização automática
diretivas Pragma e as palavras-chave __pragma e _Pragma