OpenMP

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 16 novembre 2019 à 20:05 et modifiée en dernier par Bob08 (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.
OpenMP
Description de l'image OpenMP logo.png.

Informations
Dernière version 5.0 ()Voir et modifier les données sur Wikidata
Écrit en C et C++Voir et modifier les données sur Wikidata
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Type Norme techniqueVoir et modifier les données sur Wikidata
Site web www.openmp.orgVoir et modifier les données sur Wikidata

OpenMP (Open Multi-Processing) est une interface de programmation pour le calcul parallèle sur architecture à mémoire partagée. Cette API est prise en charge par de nombreuses plateformes, incluant GNU/Linux, OS X et Windows, pour les langages de programmation C, C++ et Fortran. Il se présente sous la forme d'un ensemble de directives, d'une bibliothèque logicielle et de variables d'environnement.

OpenMP est portable et dimensionnable. Il permet de développer rapidement des applications parallèles à petite granularité en restant proche du code séquentiel.

La programmation parallèle hybride peut être réalisée par exemple en utilisant à la fois OpenMP et MPI.

Le développement de la spécification OpenMP est géré par le consortium OpenMP Architecture Review Board.

Historique

OpenMP 1.0 pour Fortran a été publié en octobre 1997. En octobre 1998, la spécification pour le C/C++ a été publiée.

La version 2.0 pour Fortran a été disponible en 2000. La version 2.0 pour C/C++ en 2002.

La version 2.5 a été publiée en 2005, pour C/C++ et Fortran.

En mai 2008, la version 3.0 a été publiée[1], puis, le 9 juillet 2011, la version 3.1[2].

La version 4.0 date de juillet 2013[3].

La version 4.5 date de novembre 2015[4]

Particularités de chaque version

Implémentations

  • Version 3.0
    • GCC 4.3.1
    • Compilateur Mercurium
    • Intel Fortran and C/C++ versions 11.0 and 11.1 compilers, Intel C/C++ and Fortran Composer XE 2011 and Intel Parallel Studio.
    • IBM XL C/C++ compiler[5]
    • Sun Studio 12 update 1 has a full implementation of OpenMP 3.0[6]
  • Version 3.1
    • GCC 4.7[7]
    • Intel Fortran and C/C++ compilers 12.1[8]
    • LLVM/Clang 3.7[9]
  • Version 4.0
    • GCC 4.9.0 pour C/C++, GCC 4.9.1 pour Fortran[7],[10]
    • Compilateurs Intel Fortran et C/C++ 15.0[11]
    • LLVM/Clang 3.7 (partiel)[9]

Voir aussi

Références

  1. « OpenMP Application Program Interface, Version 3.0 », openmp.org, (consulté le ).
  2. « OpenMP Application Program Interface, Version 3.1 », openmp.org, (consulté le ).
  3. « OpenMP 4.0 API Released », OpenMP.org, (consulté le ).
  4. « OpenMP 4.5 Specs Released », OpenMP.org (consulté le ).
  5. (en) « XL C/C++ for Linux Features » (consulté le 9 juin 2009).
  6. « Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle », Developers.sun.com (consulté le ).
  7. a et b « openmp - GCC Wiki », Gcc.gnu.org, (consulté le ).
  8. Submitted by Patrick Kennedy... on Fri, 09/02/2011 - 11:28, « Intel® C++ and Fortran Compilers now support the OpenMP* 3.1 Specification | Intel® Developer Zone », Software.intel.com, (consulté le ).
  9. a et b « Clang 3.7 Release Notes », llvm.org (consulté le ).
  10. « GCC 4.9 Release Series - Changes », www.gnu.org.
  11. « OpenMP* 4.0 Features in Intel Compiler 15.0 », Software.intel.com.

Liens externes