1) Ikkita jarayondan uchinchi jarayonga istalgan tipdagi bir xil teg orqali ma’lumot jo’nating va uni MPI_ANY_SOURCE ni ishlatgan holda qabul qiling va ma’lumotni ekranga chiqaring va ma’lumot qaysi jarayondan чqabul qilinganligini izohlang.
#include "mpi.h"
#include
#include
using namespace std;
int main(int argc, char**argv)
{
int rank;
float a,b,c;
MPI_Status status;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
a = 0.0; b = 0.0; c=0.0;
if (rank == 0)
{
a=3.7;
MPI_Send(&a, 1, MPI_FLOAT, 2 3, MPI_COMM_WORLD);
}
if (rank == 1)
{
b = 4.5;
MPI_Send(&b, 1, MPI_FLOAT, 2, 3, MPI_COMM_WORLD);
}
if (rank == 2)
{
MPI_Recv(&c, 1, MPI_FLOAT, MPI_ANY_SOURCE, 3, MPI_COMM_WORLD, &status);
cout << "Process : " <#include
#include
using namespace std;
int main(int argc, char**argv)
{
int rank;
float a,b,c;
MPI_Status status;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
a = 0.0; b = 0.0; c=0.0;
if (rank == 0)
{
a=2.5;
MPI_Send(&a, 1, MPI_FLOAT, 2, 7, MPI_COMM_WORLD);
}
if (rank == 1)
{
b = 5.5;
MPI_Send(&b, 1, MPI_FLOAT, 2, 3, MPI_COMM_WORLD);
}
if (rank == 2)
{
MPI_Recv(&c, 1, MPI_FLOAT, 0, MPI_ANY_TAG, MPI_COMM_WORLD, &status);
cout << "Process : " <bir nechta jarayonlardan
Do'stlaringiz bilan baham: |