关于并行计算问题
-
@Fkingdom
那个帖子应该说的挺清楚了,可能是内存不够的问题。
估计你的问题是:明明网格没有变,只是增加计算核,内存怎么就不够了。并行计算需要的内存不只和网格的大小有关。并行分区越多,计算分区之间的交接面积越大。交接面处的网格要互相交换数据。就需要内存存这些数据。按你的描述,故障的出现取决于核数,还挺像这个原因的。
可以测试,比如200个核能算,201个核就崩,那就用网格密度低些的网格用201个核算(网格密度底,相同的交接面积,需要储存网格数据的个数也不一样),如果不崩,说明就是因为存交接面的内存太大了。
也可以不必只用一种网格测试,虽然一种网格测试更严谨。除非每种网格都到201核崩,才可能往软件上推问题。如果不同的网格根据密度。密度高的170个核就崩,密度底的220核才崩,那就更说明是上段的猜测了