【发布时间】:2013-03-26 16:46:40
【问题描述】:
我正在尝试使用 R 中的 parallel 包进行并行操作,而不是 doSNOW,因为它是内置的,并且表面上是 R 项目想要的方式。我做错了,但我无法确定。以这个为例:
a <- rnorm(50)
b <- rnorm(50)
arr <- matrix(cbind(a,b),nrow=50)
aaply(arr,.margin=1,function(x){x[1]+x[2]},.parallel=F)
这工作得很好,产生了我的两列的总和。但是如果我尝试引入并行包:
library(parallel)
nodes <- detectCores()
cl <- makeCluster(nodes)
setDefaultCluster(cl)
aaply(arr,.margin=1,function(x){x[1]+x[2]},.parallel=T)
它会抛出错误
2: In setup_parallel() : No parallel backend registered
3: executing %dopar% sequentially: no parallel backend registered
我是不是初始化后端错了?
【问题讨论】:
-
对于任何看到这篇文章的人来说,我早就放弃了并行,转而支持 doParallel,这似乎只是工作。
标签: r parallel-processing plyr