C语言使用MPI:
#include "mpi.h"
#include "stdio.h"
#include "math.h"
#include "unistd.h"
#define n 10
void printArr(int *arr){
for(int i = 0; i < n; i++){
for(int j = 0; j < n; j++){
printf("%d ",arr[i * n + j]);
}
printf("\n");
}
}
int main(int argv, char *argc[])
{
int rank, p, a;
MPI_Init(&argv, &argc);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &p);
MPI_Status status;
// printf("程序开始运行: 开启的线程数量为:%d, 我是线程%d\n", p, rank);
if(p != 1){ // 线程的数量多于1条
a = n / (p - 1);
}
// printf("a = %d\n", a);
if(rank == 0){ // 0号线程处理
int A[n * n];
int B[n * n];
int C[n * n];
for(int i = 0; i < n; i++){
for(int j = 0; j < n; j++){
A[i * n + j] = i + j;
B[i * n + j] = 1;
}
}
double tb,