TP6 (Broadcast et produit Matriciel)
Broadcast
Broadcast
MPI offre une primitive (MPI_Bcast) permettant d'envoyer un message à tous les processeurs.
- Écrivez un programme MPI qui permet à un processeur (par exemple 0) d'envoyer une valeur à tous les autres.
All-to-All
All-to-All
On considère p processus possédant un tableau tab de taille p tel que tab[rang]=rang et tab[i]=0 pour i!=rang.
- Écrire un programme MPI implementant une communication all-to-all (via l'intermédiaire de MPI_Bcast) telle qu'à la fin, tous les processus possèdent le même tableau.
Produit Matrice-Vecteur
Produit Matrice-Vecteur
- Implémentez le produit Matrice-Vecteur sur un anneau.
- On considère une matrice de taille NxN
- Chaque noeud de l'anneau aura une copie du vecteur
- La matrice initiale sera découpée en blocs de ligne (N/P)
- Chaque noeud calculera le produit de sa sous matrice avec le vecteur
- Les calculs seront ramenés sur le processus de rang 0 et le résultat final affiché.
Produit Matrice-Matrice
Produit Matrice-Matrice
- Implémentez le produit Matrice-Matrice sur un anneau avec circulation des lignes.