R错误:“2个参数传递给'&'这需要2“

时间:2016-02-09 21:15:13

标签: r mpi hpc

我正在群集上运行大规模模拟。代码工作得很好,但偶尔出现意外错误,如上图所示:“一个节点产生错误:2个参数传递给'&'这需要2 “。有没有人知道这可能指向什么?

背景:代码在使用MPI worker R 3.2.2的集群上并行运行。因此,我看到的错误消息不包括任何行号或任何进一步的信息。这些也可能需要数百小时的cpu时间才能复制。我用'&'在我的代码中,它被送到MPI工作者的两个地方:

inRange <- (sim[1] <= nS) & (sim[2] <= nD) & (sim[3] <= nSF) & (sim[4] <= nDF)

  if((S < dim(pr)["S"]) & (D < dim(pr)["D"]) &
     (SF < dim(pr)["SF"]) & (DF < dim(pr)["DF"])) { ...

此处引用的所有变量均由每个MPI工作人员在本地计算。 我认为这可能与MPI通信问​​题有关,但我无法想象如何......

我已将我的代码的可疑部分包裹到try() - 块中,但到目前为止我还没有抓到任何东西。我还将输出重定向到特定于工作程序的文件,但是在输出大量调试信息时,我担心会有太多的性能损失。

0 个答案:

没有答案