1

我正在使用该foreach包并行运行我的代码。尽管它适用于“小型”数据集,但无法运行较大的数据集。更具体地说,它会引发此错误:

序列化错误(数据,node$con):写入连接时出错

这是我的代码:

library(foreach)
library(doParallel)
library(iterators)

numCores = detectCores() - 1
clm = makePSOCKcluster(numCores)
registerDoParallel(clm)

results = foreach(i = 1:1000) %dopar% {
    myFunction(i, otherArguments)
}
stopCluster(clm)

运行时,我在任务管理器中注意到在程序停止之前内存几乎达到 100%。我尝试使用各种数量的核心并尝试设置memory.limit(),但不是以系统的方式,问题仍然存在。我的问题可能是什么,我该如何解决?

计算机:Windows 10 64 位,28GB 内存,CPU 8 核,R3.2.2(64 位)

我知道这里发布了类似的内容,但当时问题没有解决。

4

0 回答 0