makeCluster出错(detectCores(),type =" PSOCK"):未知的簇类型

时间:2018-06-16 19:28:07

标签: r parallel-processing

我有一台Mac并且并行化了我的代码,工作正常。我最近意识到我也需要在Windows上运行代码,而我编写它的方式并不适用于Windows计算机。为了使它在Windows上运行,我尝试使用Makecluster,但它不断返回此错误,我无法弄清楚为什么会发生这种情况:

Error in makeCluster(detectCores(), type = "PSOCK") :    unknown cluster type

在这里查看我的代码:

coefold <- rep(0,160)

cl <- makeCluster(detectCores(), type='PSOCK')
registerDoParallel(cl)

# Uses parallel to perform bootstrap; adds the result of each 
# foreach loop to a list of lists called coefold_storer
coefold_storer <- list()
coefold_storer <- foreach(i=1:bootrep, .combine=c) %dopar%{
  # cat("847 on bootstrap run: ",bootrun,".\n",sep="")
  rndsamp <- sample(1:length(yi),length(yi),replace=TRUE)
  indxrun <- repeatsales(yi[rndsamp],xi[rndsamp,],
                        maxdailyreturn,vweighti[rndsamp])
  coefold_storer[[length(coefold_storer)+1]] <- list(indxrun)
}
registerDoSEQ()

1 个答案:

答案 0 :(得分:2)

尝试使用parallel包。它们都具有函数makeCluster

  • 使用parallel我可以在Windows 7和Windows上创建群集。 10。
  • 使用包snow,我会收到与您相同的错误。

你可以在不添加参数的情况下创建集群&#34; PSOCK&#34;因为它是默认使用的。