在多核上使用doSNOW包訪問/寫入全局變量時是否存在問題?使用doSNOW寫入全局變量並在R中進行並行化?
在下面的程序,每個MyCalculations(II)的寫入矩陣「全局變量」的第II個列...
你認爲結果會是正確的嗎?會有隱藏的漁獲物嗎?
非常感謝!
p.s.我必須寫出全局變量,因爲這是一個簡單的例子,事實上,我有許多輸出需要從並行循環內傳輸......因此,可能唯一的辦法就是寫出全局變量。 ..
library(doSNOW)
MaxSearchSpace=44*5
globalVariable=matrix(0, 10000, MaxSearchSpace)
cl<-makeCluster(7)
registerDoSNOW(cl)
foreach (ii = 2:nMaxSearchSpace, .combine=cbind, .verbose=F) %dopar%
{
MyCalculations(ii)
}
stopCluster(cl)
ps我要求 - 在DoSnow框架內,在那裏訪問/寫入全局變量... THX
您可以考慮使用[doRedis(https://github.com/bwlewis/doRedis),這將處理您的問題與需要訪問全局變量。 – daroczig 2012-02-23 10:16:39