任何人都可以解释一下MPI_Scatter和MPI_Bcast之间的区别是什么? (除了任何进程可以使用MPI_Scatter进行广播并且只有root可以使用MPI_Bcast这一事实)
在哪些情况下我应该使用第一个而不是另一个?
解决方法
MPI_Bcast()
向每个人发送相同的数据,而
MPI_Scatter()
向每个进程发送一部分输入数组. MPI_Bcast()与MPI_Reduce()相反,MPI_Scatter()与MPI_Gather()相反.像
this one这样的小方案是不言自明的.
MPI_Scatter()和MPI_Bcast()都有一个名为int root的参数来指定根进程.