pi.c.txt

来自「用于求解pi的MPI程序,在SourceCRT5.5上试过的,好用.」· 文本 代码 · 共 50 行

TXT
50
字号
用于求解pi的MPI程序,在SourceCRT5.5上试过的,好用.
请放心的copy,无版权限制。
#define N 1000000
#include"mpi.h"
#include<stdio.h>
#include<math.h>
int  main(int argc,char **argv)
{
        double local=0.0,pi,w,temp=0.0;
        long i;                   
        int taskid,numtask;
        w=1.0/N;
        MPI_Init(&argc,&argv);
        MPI_Comm_size(MPI_COMM_WORLD,&taskid);
        MPI_Comm_size(MPI_COMM_WORLD,&numtask);
        for(i=taskid;i<N;i=i+numtask){
        temp=(i+0.5)*w;
        local=4.0/(1.0+temp*temp)+local;
        }
        MPI_Reduce(&local,&pi,1,MPI_DOUBLE,MPI_SUM,0,MPI_COMM_WORLD);
        if(taskid==0) printf("pi is %f\n",pi*w);
        MPI_Finalize();
        return 0;
        }




















                                                     [ Wrote 22 lines ]

guest@node2:~$ mpicc pai.c -o pai
guest@node2:~$ mpirun -np 8 pai 
pi is 3.141593
guest@node2:~$ 

⌨️ 快捷键说明

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