资源简介

mpi实现块棋盘法矩阵转置,包括总时间的输出,可以根据需求在不同的地方设置时间点进行不同部分时间的计算和输出。没有广播,采用MPI_Recv和MPI_Send进行进程的传值。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

//定义矩阵的大小
#define N 10000
#define p 16
int A[N][N];//矩阵
int B[N][N];//转置矩阵
double t0t1;                                

void printthem(){
long long ij;
for(i = 0;i < N;i++){
for(j = 0;j < N;j++){
printf(“%-2d “B[i][j]);
}
printf(“\n“);
}
}


int main(int argc char *argv[]){
long long ijk;
long long number = 0;
int t = sqrt(p);
int m = N/t;
//生成矩阵的值
for(i = 0;i < N;i++){
for(j = 0;j < N;j++){
A[i][j] = number++;
}
}

int my_rankgroup_size;
MPI_Status status;
//开始
MPI_Init(&argc&argv);
MPI_Comm_size(MPI_COMM_WORLD&gr

评论

共有 条评论