我正在做一个蒙特卡洛模拟,在其中我使用那些蒙特卡洛采样点来馈入电势。不幸的是,对电位的评估非常缓慢,我想对进程进行划分,例如对于12核计算机,用1核进行蒙特卡洛处理,然后将整个阵列分成11个部分,以评估这些电位指向外部程序并将它们缝合在一起。但是,我遇到的一个挑战是,当我等待11个计算完成时,它们可以在不同的时间完成,从而导致我的计算机出现运行时错误。
到目前为止,我已经使用sleep命令让我的程序等待作业完成,但是我要么不得不花很长时间睡眠,否则我的计算会遇到运行时错误。
在这里将作业拆分为多个部分 我= 1,nnode 在这里分工 尽头 调用系统('./external_programoutput&) ... 我1 =,nnode 在这里合并结果 尽头 继续进行其余的计算