我有一个 R 代码,其中涉及多个 foreach 工作人员以并行执行一些任务。为此,我正在使用 foreach 和 doMC。我想让每个 foreach 工作人员招募一些新工作人员并将其代码的某些部分(可并行化)分发给他们。
当前代码如下所示:
require(doMC)
require(foreach)
registerDoMC(cores = 8)
foreach (i = (1:8)) %dopar% {
<<some code here>>
for (j in c(1:4)) {
<<some other code here>>
}
}
我正在寻找一个理想的代码,如下所示:
require(doMC)
require(foreach)
registerDoMC(cores = 8)
foreach (i = (1:8)) %dopar% {
<<some code here>>
foreach (j = (1:4)) %dopar% {
<<some other code here>>
}
}
我在这里看到了一个使用 doSNOW 和 doMC 的多范式并行示例(https://www.rmetrics.org/files/Meielisalp2009/Presentations/Lewis.pdf#page=17)。但是,我不知道它是否符合我的要求。
此外,似乎嵌套 foreach不适用,因为它需要合并两个循环(请参见此处),而在我的情况下,这不是首选;第二个循环只帮助第一个循环的一部分代码。如果我错了,请纠正我。
谢谢。