Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <windows.h>
- #pragma hdrstop
- #include "mpi.h"
- #include "pt4.h"
- void Solve()
- {
- Task("MPIBegin27");
- int flag;
- MPI_Initialized(&flag);
- if (flag == 0)
- return;
- int rank, size;
- MPI_Comm_size(MPI_COMM_WORLD, &size);
- MPI_Comm_rank(MPI_COMM_WORLD, &rank);
- int n;
- if (rank != 0){
- pt >> n;
- for (int i = 0; i < n; i++) {
- double x;
- int t;
- pt >> x >> t;
- MPI_Send(&x, 1, MPI_DOUBLE, 0, t, MPI_COMM_WORLD);
- }
- }
- if (rank == 0) {
- for (int i = 1; i <= size * 2; i++) {
- double x;
- MPI_Status status;
- MPI_Recv(&x, 1, MPI_DOUBLE, MPI_ANY_SOURCE, i, MPI_COMM_WORLD, &status);
- pt << x;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement