lang:cpp:openmp
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| lang:cpp:openmp [2020/03/04 13:20] – Ajout de "Cmake" root | lang:cpp:openmp [2022/09/05 23:05] (Version actuelle) – [linear] : fix format root | ||
|---|---|---|---|
| Ligne 316: | Ligne 316: | ||
| </ | </ | ||
| - | <note important> | + | <WRAP center round important |
| + | Les bornes de la boucle intérieure ne doit pas dépendre de la variable de la boucle externe. | ||
| + | </WRAP> | ||
| < | < | ||
| Ligne 385: | Ligne 387: | ||
| Cela parallélise les instructions de calcul pour utiliser au mieux les SSE* et autres. On peut autant y faire des calculs flottants qu'en entier. Le fonctionnement est similaire aux calculs CUDA : | Cela parallélise les instructions de calcul pour utiliser au mieux les SSE* et autres. On peut autant y faire des calculs flottants qu'en entier. Le fonctionnement est similaire aux calculs CUDA : | ||
| - | {{ : | + | {{ : |
| <code c> | <code c> | ||
| Ligne 407: | Ligne 409: | ||
| </ | </ | ||
| - | '' | + | '' |
| ===safelen=== | ===safelen=== | ||
| Ligne 417: | Ligne 419: | ||
| ===linear=== | ===linear=== | ||
| Incrémente pour chaque boucle une variable. | Incrémente pour chaque boucle une variable. | ||
| - | < | + | < |
| #pragma omp simd linear(b:2) | #pragma omp simd linear(b:2) | ||
| for(int n=0; n<8; ++n) array[n] = b; | for(int n=0; n<8; ++n) array[n] = b; | ||
lang/cpp/openmp.1583324453.txt.gz · Dernière modification : de root
