loop
Les contrôles dont le code de la boucle doit être considéré par auto - parallelizer, et/ou exclut une boucle de la considération en auto - vectorizer.
#pragma loop( hint_parallel(n) )
#pragma loop( no_vector )
#pragma loop( ivdep )
Paramètres
hint_parallel(n)
Les indicateurs au compilateur que la boucle doit être parallélisée entre les threads n , où n est un littéral entier positif ou zéro.Si n est zéro, le nombre maximal de threads est utilisé au moment de l'exécution.Il s'agit d'un indicateur au compilateur, pas la commande, et il n'y a aucune garantie que la boucle est parallélisée.Si la boucle a des dépendances de données, ou le structurel question- pour l'exemple, les magasins de boucle à une variable scalaire utilisée au delà de le corps - ensuite de boucle la boucle ne seront pas parallélisées.Le compilateur ignore cette option sauf si le commutateur de compilation de /Qpar soit spécifié.
no_vector
Par défaut, auto - vectorizer est activée et tente de vectorize toutes les boucles qu'elle prend en tirant parti de celui-ci.Spécifiez ce pragma pour désactiver auto - vectorizer pour la boucle qui la suit.ivdep
Indicateurs au compilateur d'ignorer les dépendances vectorielles de cette boucle.Utilisez ce paramètre conjointement avec hint_parallel.
Notes
Pour utiliser le pragma d' loop , placez-le immédiatement avant-non dans-un la définition de boucle.Le pragma entre en vigueur pour la portée de la boucle qui la suit.Vous pouvez appliquer plusieurs pragmas à une boucle, dans n'importe quel ordre, mais vous devez déclarer chaque dans une instruction pragma distincte.