Le problème ici est que le mode par défaut est shared, sauf pour l'indice de la boucle sur laquelle porte la directive et donc les variables i2 et i3 seront mises en mémoire partagées et là c'est le drame.
Quand on fait du C++/C99 un peu propre, on préfère la forme
[^] # Re: OpenMP et la fausse simplicité...
Posté par serge_sans_paille (site web personnel) . En réponse au journal Pyth(on|ran) + OpenMP ?. Évalué à 3.
Le problème ici est que le mode par défaut est
shared, sauf pour l'indice de la boucle sur laquelle porte la directive et donc les variables i2 et i3 seront mises en mémoire partagées et là c'est le drame.Quand on fait du C++/C99 un peu propre, on préfère la forme
qui ne pose pas de soucis car les variables locales sont considérées comme
privateLa lecture de http://en.wikipedia.org/wiki/OpenMP#Data_sharing_attribute_clauses est un bon point de départ pour comprendre ça.