Accueil🇫🇷Chercher

OpenMP

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[2], puis, le 9 juillet 2011, la version 3.1[3].

La version 4.0 date de juillet 2013[4].

La version 4.5 date de novembre 2015[5]

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[6]
    • Sun Studio 12 update 1 has a full implementation of OpenMP 3.0[7]
    • Multi-Processor Computing (« MPC »)
  • Version 3.1
  • Version 4.0
    • GCC 4.9.0 pour C/C++, GCC 4.9.1 pour Fortran[8] - [11]
    • Compilateurs Intel Fortran et C/C++ 15.0[12]
    • LLVM/Clang 3.7 (partiel)[10]

Voir aussi

Références

  1. « OpenMP ARB Releases OpenMP 5.2 with Improvements and Refinements », (consulté le )
  2. « OpenMP Application Program Interface, Version 3.0 », openmp.org, (consulté le ).
  3. « OpenMP Application Program Interface, Version 3.1 », openmp.org, (consulté le ).
  4. « OpenMP 4.0 API Released », OpenMP.org, (consulté le ).
  5. « OpenMP 4.5 Specs Released », OpenMP.org, (consulté le ).
  6. (en) « XL C/C++ for Linux Features » (consulté le 9 juin 2009).
  7. « Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle », Developers.sun.com (consulté le ).
  8. « openmp - GCC Wiki », Gcc.gnu.org, (consulté le ).
  9. 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 ).
  10. « Clang 3.7 Release Notes », llvm.org (consulté le ).
  11. « GCC 4.9 Release Series - Changes », www.gnu.org.
  12. « OpenMP* 4.0 Features in Intel Compiler 15.0 », Software.intel.com.

Liens externes

Cet article est issu de wikipedia. Text licence: CC BY-SA 4.0, Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.