r - 如何在 Windows 下使用 doMC 或 glmnet 的替代并行处理实现?

标签 r foreach parallel-processing domc

我使用的是 Win7 操作系统,Rstudio 中装有 R 3.3.1。目的是将 glmnet 与并行处理结合使用。来自 ?glmnet 帮助:

parallel: If TRUE, use parallel foreach to fit each fold. Must register parallel before hand, such as doMC or others. See the example below.

来自引用的示例:

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

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

我仍然可以在 Win7 操作系统下使用 doMC 之类的代码吗?或者什么是有用的替代方案?

最佳答案

doMC 的小插图中所写

The doMC package acts as an interface between foreach and the multicore functionality of the parallel package, originally written by Simon Urbanek and incorporated into parallel for R2.14.0. The multicore functionality currently only works with operating systems that support the fork system call (which means that Windows isn't supported)

您可以尝试使用 snow 包和 SOCK 集群。 (感谢 @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()

关于r - 如何在 Windows 下使用 doMC 或 glmnet 的替代并行处理实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40426115/

相关文章:

php - 在每个列表项后添加逗号,但仅当列表中有超过 1 个项目时才添加

python - 进程陷入 PyInstaller 可执行文件循环

r - 将列添加到 Shiny 中的响应式(Reactive)数据框中并更新它们

r - 如何增加标签名称的字体大小

当所有数据均为 NA 时删除图例条目和构面

php - 如何在 Laravel 中将 @foreach 添加到 SQL 原始语句

php - Laravel 5.1 无法在集合上使用 @foreach

c++ - 如何在设备内存中有效地随机播放数据?

java - 为并行处理数据选择最佳线程数

r - 合并 Igraph 时保持属性名称