⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 11.cpp

📁 10 Mpi source examples for begginers
💻 CPP
字号:
#include <mpi.h>
#include <stdio.h>
#include <malloc.h>

int main(int argc, char** argv)
{
	MPI_Init(&argc, &argv);

	int size, rank;
	//char *msg="Hi!!!!";
	char msg2[12]="i'm message";
	char rmsg[12];
	double t1, t2, dt1,dt2,t11,t22;
	MPI_Status status;

	MPI_Comm_size(MPI_COMM_WORLD, &size); 
	MPI_Comm_rank(MPI_COMM_WORLD, &rank);

	t1 = MPI_Wtime();

	if(rank==0)
	{
		for (int i=1; i<size; i++)
			MPI_Send(msg2, 7, MPI_CHAR, i, 0, MPI_COMM_WORLD);
	}
	else 
		MPI_Recv(&rmsg, 7, MPI_CHAR, 0, 0, MPI_COMM_WORLD, &status);

	
	MPI_Barrier(MPI_COMM_WORLD);

	t2 = MPI_Wtime();
	if (rank==0)
	{
		dt1= t2 - t1;
		printf(" Send\Recv TIME : %f \n", dt1);
	}

	t11 = MPI_Wtime();
	
	MPI_Bcast(msg2, 7, MPI_CHAR, 0, MPI_COMM_WORLD);
	MPI_Barrier(MPI_COMM_WORLD);
	
	t22 = MPI_Wtime();
	
	if (rank==0)
	{
		dt2 = t22 - t11;
		printf(" BCast TIME : %f \n", dt2);
		if (dt2>dt1)
			printf("BAD RESULT");
		else
		printf("Bcast FASTER then Send\Recv");
	}

	MPI_Finalize();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -