[问题叙述]:
大家好,最近接触到'snow'这个用于平行运算的package后觉得十分有趣,刚好目前在做
的事情十分需要加快计算速度,因此尝试使用parRapply, parSapply这些function
突然发现,若是我在parRapply当中在包一个apply,或是parRapply function都会产生
问题,例如 :
library(snow)
library(Rmpi)
data <- matrix(1:6, ncol = 2)
target <- 11:16
cl <- makeCluster(2, type = 'MPI')
parRapply(cl = cl, data, function(x) {
x <- t(as.matrix(x))
parRapply(cl = cl, x, function(x){
target[x]
})
})
stopCluster(cl)
会回报错误讯息:
Error in checkForRemoteErrors(val) :
2 nodes produced errors; first error: 找不到物件 'cl'
唯一能想像的到的可能为,cl可能是在某个cpu下被定义的,但其他cpu并不知道cl的定义
因此产生以下错误讯息,此外也想不到其他可能的原因,想请教是否有人有碰过相同的
问题呢?
谢谢各位!
[软件熟悉度]:
使用者(对R的基本使用还算熟悉)