Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <mpi.h>
- #define comm MPI_COMM_WORLD
- int main(int arge, char **argv)
- {
- MPI_Status status;
- MPI_Init(&arge,&argv);
- int N = 12;
- int ai, rank, size, del, i0, imax, i, s=0, s1=0;
- MPI_Request request;
- MPI_Comm_rank(MPI_COMM_WORLD, &rank);
- MPI_Comm_size(MPI_COMM_WORLD, &size);
- int a[N];
- del = N/size;
- i0 = rank*del;
- ai = i+1;
- imax = i0 + del;
- if (rank = size - 1)
- {
- imax = N;
- }
- for (i=i0;i<imax;i++)
- {
- a[i] =i+1;
- s1+=a[i];
- }
- MPI_Reduce(&s1, &s, 1, MPI_INT, MPI_SUM, 0, comm);
- printf("rank=%d\n, size=%d\n, i0=%d\n, imax=%d\n, s1=%d\n, s=%d\n, a[i0]=%d\n", rank, size,i0,imax,s1,s,a[i0]);
- printf("Сумма составила: %i", s);
- MPI_Finalize();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement