Translations:OpenACC Tutorial - Adding directives/17/fr

From Alliance Doc
Jump to navigation Jump to search

Si vous avez déjà utilisé OpenMP, vous retrouverez dans OpenACC le principe de directives. Il existe cependant d'importantes différences entre les directives OpenMP et OpenACC :

  • Les directives OpenMP sont à la base prescriptives. Ceci signifie que le compilateur est forcé d'accomplir la parallélisation, peu importe que l'effet détériore ou améliore la performance. Le résultat est prévisible pour tous les compilateurs. De plus, la parallélisation se fera de la même manière, peu importe le matériel utilisé pour exécuter le code. Par contre, le même code peut connaitre une moins bonne performance, dépendant de l'architecture. Il peut donc être préférable par exemple de changer l'ordre des boucles. Pour paralléliser du code avec OpenMP et obtenir une performance optimale dans différentes architectures, il faudrait avoir un ensemble différent de directives pour chaque architecture.