Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
给定以下代码,如果 isize<16000 则运行成功,否则挂起。如何增加缓冲区/计数的大小以允许 isize 更大?(大得多。像 3M)
isize=size(x) call MPI_BCAST(x,isize,MPI_REAL,0,MPI_COMM_WORLD,ierr)
这不是内部缓冲区大小的问题。16k 实数对于 MPI 实现应该没有任何问题(除非您使用的是非常模糊的实现......如果您使用 OpenMPI 或 MPICH2,您应该没问题)。
可以肯定的是,我刚刚成功广播了 16M 值并且没有问题。
所以我的猜测是,要么你使用了太多的等级(并杀死了你无法处理负载的网络),要么你的硬件设置有另一个问题。