Master d’informatique 2007 2008 de l’université Paris VI
ppar
TD OpenMP

Pour cette séance, nous allons utiliser le compilateur gcc qui permet de paralléliser les codes contenant des directives OpenMP. Pour la génération du code executable, ajouter l’option -fopenmp aussi bien à la compilation qu’à l’édition de lien.

1. Premier programme

Utilisez un des programmes du cours pour tester votre environnement N’oubliez pas de d’affecter la variable OMP_NUM_THREADS !!!

Rappel pour la compilation : gcc toto.c -fopenmp -o toto

2. Multiplication de deux matrices

Le fichier mulmat.c contient le code source d’un programme de multiplication de matrices. Deux jeux de tests sont insérés dans les sources a) Paralléliser ce code avec OpenMP et ajouter des affichages qui mettent en évidence l’exécution multi-threadée. b) exécutez le programme en mode statique, choisissez différentes valeurs pour la taille des blocs c) même chose avec le mode dynamique

3. Calcul de fractales. Le fichier mandel.c contient le code source d’un programme qui calcule les valeurs de l’espace de Mandelbrot.

Effecttuez le même travail que pour le programme de multiplication de matrices

4. Convolution Le fichier mandel.c contient le code source d’un programme qui applique des opérateurs de convolution à des images. Même travail que pour le programme de multiplication de matrices et le calcul des fractales.

Documents joints

Document (C source - 1.8 ko)
Document (C source - 5.9 ko)
Document (C source - 8.6 ko)
Document (Zip - 59.6 ko)
Document (C header - 1.9 ko)