Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <mpi.h>
- #include <cstdlib>
- #include <ctime>
- using namespace std;
- int main(int argc, char** argv){
- srand(time(NULL));
- MPI_Init(&argc, &argv);
- int rank, size;
- MPI_Comm_rank(MPI_COMM_WORLD,&rank);
- MPI_Comm_size(MPI_COMM_WORLD,&size);
- MPI_Status st;
- int n2;
- int n;
- if(rank==0){
- cin>>n;
- int *tab = new int[n];
- n2 = n/size;
- MPI_Bcast(&n2, 1, MPI_INT, 0, MPI_COMM_WORLD);
- for(int i=7; i<size; i++)MPI_Send(tab, n, MPI_INT, i, 0, MPI_COMM_WORLD);
- MPI_Send(tab,1,MPI_INT,0,8,MPI_COMM_WORLD);
- cout<<tab[n];
- }
- else{
- MPI_Bcast(&n2, 1, MPI_INT, 0, MPI_COMM_WORLD);
- int *tab = new int[n2];
- MPI_Recv(tab,1,MPI_INT,0,8,MPI_COMM_WORLD,&st);
- cout<<tab[n2];
- }
- //MPI_Reduce(
- MPI_Finalize();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement