web-dev-qa-db-fra.com

Premiers pas avec openMP. installer sur windows

Je veux écrire un programme parallèle en C++ en utilisant OpenMP, donc je commence avec OpenMP. En d'autres termes, je suis un débutant et j'ai besoin d'un bon guide OpenMP expliquant comment l'installer. Quelqu'un sait-il comment installer OpenMP sur Windows, puis compiler et exécuter le programme?

17
Nurlan

OpenMP n'est pas quelque chose que vous installez. Il est livré avec votre compilateur. Vous avez juste besoin d'un compilateur décent qui prend en charge OpenMP et vous devez savoir comment activer la prise en charge OpenMP car il est généralement désactivé par défaut.

Le compilateur standard pour Windows vient de Microsoft et c'est le compilateur Microsoft Visual C/C++ de Visual Studio. Malheureusement, son support OpenMP est un peu dépassé - même le dernier et le plus grand Visual Studio ne prend en charge que OpenMP 2.0 (une version standard obsolète de 2002). Voir ici pour plus d'informations sur l'utilisation d'OpenMP dans Visual Studio. Il existe également d'autres compilateurs - le compilateur Intel C/C++ (licence commerciale requise) et GCC (disponible gratuitement) prennent en charge les versions OpenMP plus récentes et d'autres compilateurs sont également disponibles.

Vous pouvez commencer à apprendre OpenMP en visitant le site Web OpenMP ici . Il existe également un excellent tutoriel sur OpenMP du Lawrence Livermore National Laboratory ici .

19
Hristo Iliev

Voici donc ce que j'ai fait pour enfin faire fonctionner OpenMP sur mon PC Windows 10:

  1. Get MinGW - Téléchargez et récupérez ce dont vous avez besoin pour obtenir le compilateur gcc de base et le paquet g ++ (c'est vraiment facile à faire). Vous pouvez toujours exécuter g++ -v pour vous assurer qu'il est opérationnel
  2. Courir mingw-get upgrade --recursive "gcc<4.7.*" "gcc-g++<4.7.*" Ceci est la partie "Fun". Parce qu'à cette époque, aucune bibliothèque libgomp n'était prise en charge dans leur version 4.9. *, Mon gcc n'a pas pu reconnaître <omp.h> la dernière version de support était 4.7.2 donc avec cela j'ai finalement pu lancer mon openMP

Pour compiler, exécutez g++ -fopenmp myOpenMPFile.cpp -o myOpenMP et tout fonctionnera à partir de là

gcc -fopenmp myOpenMPFile.cpp -o myOpenMP fonctionnera également pour le code C

7
FrickeFresh

Je voudrais partager ce que j'ai fait pour que OpenMP fonctionne sur mon PC Windows 10 (les choses sont devenues encore plus simples en 2019)

  1. J'ai installé la distribution MinGW depuis ici avec le compilateur GCC 8.2.0. Le responsable de la distribution a déjà ajouté le support de winpthreads et OpenMP à GCC.

  2. J'ai compilé mon code avec -fopenmp drapeau comme suit: g++ -fopenmp main.cpp -o exec

Remarque: la distribution MinGW prend en charge de nombreuses bibliothèques utiles (telles que Boost 1.69.0) et d'autres utilitaires. Je l'ai trouvé très utile.

1
nae9on