Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Controla como o código de loop deve ser considerado pelo auto-paralelizador ou exclui um loop da consideração pelo autovetorizador.
Sintaxe
#pragma loop( hint_parallel(n) )
#pragma loop( no_vector )
#pragma loop( ivdep )
Parâmetros
hint_parallel(
n)
Uma dica para o compilador de que esse loop deve ser paralelizado em n threads, onde n é um literal 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 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 é paralelizado se armazenar em um escalar usado além do corpo do loop.
O compilador ignora essa opção, a menos que a opção de compilador /Qpar seja especificada.
no_vector
Por padrão, o autovetorizador tenta vetorizar todos os loops que avalia pode se beneficiar dele. Especifique essa pragma para desabilitar o vetorizador automático para o loop a seguir.
ivdep
Uma dica para o compilador ignorar dependências vetoriais para esse loop.
Comentários
Para usar o looppragma, coloque-o imediatamente antes, não em, uma definição de loop. O pragma entra em vigor para o escopo do loop que o segue. Você pode aplicar várias diretivas pragma a um loop, em qualquer ordem, mas deve declarar cada uma delas em uma instrução pragma separada.
Ver também
de paralelização automática e vetorização automática
diretivas Pragma e as palavras-chave __pragma e _Pragma