用montecarlo和MPI_-Reduce计算pi

用montecarlo和MPI_-Reduce计算pi,mpi,montecarlo,pi,Mpi,Montecarlo,Pi,我正在从事一个项目,我们需要使用MPI并行化这个问题。因此,基本思想是每个进程都将获得它的分数份额,进行测试(这些分数是否在圆圈中),然后调用MPI_Reduce。然后根将得到简化的结果并给出最终答案 我所困惑的是要减少什么。每个进程是否应该计算pi,用pi调用reduce,根只取减少的pi值的平均值?或者每个进程调用是否应该随着命中次数(圆内的成功点)的减少而减少,然后根使用此结果计算pi?希望这是清楚的。谢谢。我肯定会做后者:让每个进程返回命中数,让根函数使用这些结果计算pi。通过这种方式,

我正在从事一个项目,我们需要使用MPI并行化这个问题。因此,基本思想是每个进程都将获得它的分数份额,进行测试(这些分数是否在圆圈中),然后调用MPI_Reduce。然后根将得到简化的结果并给出最终答案


我所困惑的是要减少什么。每个进程是否应该计算pi,用pi调用reduce,根只取减少的pi值的平均值?或者每个进程调用是否应该随着命中次数(圆内的成功点)的减少而减少,然后根使用此结果计算pi?希望这是清楚的。谢谢。

我肯定会做后者:让每个进程返回命中数,让根函数使用这些结果计算pi。通过这种方式,您将执行与连续计算相同的过程。

感谢您的反馈,我同意您的意见