带C的MPI:通信时间
我刚刚开始学习MPI,这是我第一个在两个处理器之间发送和接收数据的程序带C的MPI:通信时间,c,parallel-processing,mpi,C,Parallel Processing,Mpi,我刚刚开始学习MPI,这是我第一个在两个处理器之间发送和接收数据的程序 MPI_Status status; MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD,&rank); MPI_Comm_size(MPI_COMM_WORLD,&size); printf("Comm Size %d",
MPI_Status status;
MPI_Init(&argc,&argv);
MPI_Comm_rank(MPI_COMM_WORLD,&rank);
MPI_Comm_size(MPI_COMM_WORLD,&size);
printf("Comm Size %d",size);
printf("Rank %d",rank);
if (rank == 0)
{
for(j=1;j<size;j++);
{
tmp = clock();
start_time = clock();
MPI_Send(&N,1,MPI_INT,j,j,MPI_COMM_WORLD);
MPI_Recv(&N,1,MPI_INT,j,j,MPI_COMM_WORLD,&status);
end_time = clock();
timer_overhead = start_time - tmp;
total_time = end_time - start_time - timer_overhead;
communication_time = total_time / 2;
printf("%d",total_time);
}
}
else
{
MPI_Recv(&N,1,MPI_INT,0,rank,MPI_COMM_WORLD,&status);
MPI_Send(&N,1,MPI_INT,0,rank,MPI_COMM_WORLD);
}
MPI_Finalize();
}
MPI\u状态;
MPI_Init(&argc,&argv);
MPI通信等级(MPI通信世界和等级);
MPI_通信大小(MPI_通信世界和大小);
printf(“通信大小%d”,大小);
printf(“排名%d”,排名);
如果(秩==0)
{
for(j=1;j在有for循环的那一行,在末尾放了“;”
for(j=1;j<size;j++);
(j=1;j)的