1

パッケージを使用しforeachてコードを並行して実行しています。「小さな」データ セットでは正しく機能しますが、より大きなデータ セットでは実行できません。具体的には、次のエラーがスローされます。

serialize(data, node$con) のエラー: 接続への書き込みエラー

これは私のコードです:

library(foreach)
library(doParallel)
library(iterators)

numCores = detectCores() - 1
clm = makePSOCKcluster(numCores)
registerDoParallel(clm)

results = foreach(i = 1:1000) %dopar% {
    myFunction(i, otherArguments)
}
stopCluster(clm)

実行中、タスク マネージャーで、プログラムが停止する前にメモリがほぼ 100% に達していることに気付きました。さまざまな数のコアを使用して を設定しようとしmemory.limit()ましたが、体系的な方法ではなく、問題が解決しませんでした。私の問題は何ですか?どうすれば解決できますか?

コンピューター: Windows 10 64 ビット、28 GB RAM、CPU 8 コア、R3.2.2 (64 ビット)

同様のものがここに投稿されたことは知っていますが、問題は解決されませんでした。

4

0 に答える 0