5

これらは、R での並列計算に関する私の最初のステップです。以下のコードを実行すると、次のエラーが発生します。私が書いたものにはmclapply関数がないので、私は無知です.少なくとも私はそれを明示的に入れていません.

エラー:

Error in mclapply(argsList, FUN, mc.preschedule = preschedule, mc.set.seed = set.seed,  : 
  (list) object cannot be coerced to type 'integer'
Calls: %dopar% -> <Anonymous> -> mclapply
Execution halted

コード:

dist<-array(0, dim=c(320,500,25))

mc<-8
cl<-makeCluster(mc)
registerDoMC(cl)
opts<-list(chunkSize=10)

for(a in 1:25) {
  dist[,,a]<-foreach(x=1:500, .combine='cbind', .options.mc=opts) %:% 
    foreach(y=1:320, .combine='c') %dopar% {
      gcd.slc(crdsx[y,x], crdsy[y,x], lot[a,5], lot[a,4])
    }
}
stopCluster(cl)

別のマシンでは、うまく動作します

registerDoParallel(cl)

それ以外の

registerDoMC(cl)
4

1 に答える 1