9

我在 Rstudio 中使用带有 R 3.3.1 的 Win7 操作系统。意图是glmnet与并行处理一起使用。从?glmnet帮助:

parallel:如果TRUE,使用平行的 foreach 来适应每个折叠。必须先并行注册,例如doMC或其他。请参见下面的示例。

从参考的例子:

# Parallel
require(doMC)
registerDoMC(cores=4)

install.packages('doMC')退货包不可用。手动检查CRAN会提供可下载的 UNIX 代码,但 Windows 二进制文件不可用。

我还能doMC在我的 Win7 操作系统下使用类似的代码吗?或者有什么有用的替代方法?

4

1 回答 1

14

正如小插图中所写doMC

doMC 包充当 foreach 和 parallel 包的多核功能之间的接口,最初由 Simon Urbanek 编写并合并到 R2.14.0 的并行中。多核功能目前仅适用于支持 fork 系统调用的操作系统(这意味着不支持 Windows)

您可以尝试改用snow软件包和SOCK集群。(Thx @HongOoi 提示doSNOW实际上并不需要加载。)

library(doParallel)

#the following line will create a local 4-node snow cluster
workers = makeCluster(4, type="SOCK")
registerDoParallel(workers)

foreach(i=1:4) %dopar% Sys.getpid()
于 2016-11-04T16:07:59.673 回答