Windows 7にR(64ビット)バージョン2.11.1をインストールしました。また、並列処理のために "REvolution foreach windows bundle"からdoSMPとrevoIPCをパッケージしました。ライブラリdoSMPをRにアップロードし、次のメッセージが表示されました。Windows 7で64ビットのRでの並列処理doSMP
> library(doSMP)
Loading required package: revoIPC
Error: package 'revoIPC' is not installed for 'arch=x64'
この問題を回避するにはどうすればよいですか? doSMPはRの32ビット分布では動作しますが、64ビット分布では動作しないようです。
私はまた、次のプログラム
------------------------------------------------------
require(doSMP)
workers <- startWorkers(4) # My computer has 2 cores
registerDoSMP(workers)
# create a function to run in each itteration of the loop
check <-function(n) {
for(i in 1:1000)
{
sme <- matrix(rnorm(100), 10,10)
solve(sme)
}
}
times <- 10 # times to run the loop
# comparing the running time for each loop
system.time(x <- foreach(j=1:times) %dopar% check(j)) # 2.56 seconds (notice that the first run would be slower, because of R's lazy loading)
system.time(for(j in 1:times) x <- check(j)) # 4.82 seconds
# stop workers
---------------------------------------------------------------------------
をテストし、私はR
> workers <- startWorkers(4) # My computer has 2 cores
Error: could not find function "startWorkers"
> registerDoSMP(workers)
Error: could not find function "registerDoSMP"
から次のメッセージをあなたの助けに感謝しました。
トニー
ありがとうございました。私はdoMCでLinuxプラットフォームを試してみてください。 doSMPはWindows上の32ビットR専用です。 – Tony
私はかなり降雪パッケージに満足しています:http://cran.r-project.org/web/packages/snowfall/index.html –
私はちょうど降雪を使用してcpu = 8と並列に動作するプログラムをテストしました、それはかなり速いです。 Cheers- Tony – Tony