MPI实现并行计算统计数据

给定一个数据文件data.txt,存放有N个整型数据(测试数据为13个,1-13),要求统计素数个数。

#include "mpi.h"
#include 
#include 
#define SIZE 10000

int isPrime(int num){
    if(num<2){
        return 0;
    }else if(num==2 || num==3){
        return 1;
    }else{
        int primeFlag=1;
        for(int i=2;i<(int)sqrt(num)+1;i++){
            if(num%i==0){
                primeFlag=0;
                break;
            }
        }
        return primeFlag;
    }
}

int main(int argc,char* argv[]) {
    int number[SIZE];
    FILE *fp=fopen("data.txt","r");
    if(fp==NULL) {
        printf("can not open data.txt!\n");
    } else {
        int totalNum=0;
        while(!feof(fp)) {
            if(totalNum


执行编译命令:

mpicc prime_test.cpp -lm -o prime_test

注意-lm参数表示需要链接数学库,编译环境为mpich2-1.0.2p1 + ubuntu14.04 64bit

然后执行:

mpiexec  -n 4 ./prime_test

运行截图如下:

MPI实现并行计算统计数据_第1张图片

你可能感兴趣的:(软件开发,C语言,MPI,并行计算,数据统计)