【问题标题】:Parallel execution of randomforestSRC on macOS在 macOS 上并行执行 randomforestSRC
【发布时间】:2017-10-30 10:33:04
【问题描述】:

我对来自randomForestSRC 包的随机生存森林的并行估计有疑问。我已经关注this guide 并尝试在 Mac (Sierra) 上安装它。但是,rfsrc() 函数仍然在单个线程上运行。您能否建议如何实现并行执行,因为该函数需要很长时间才能在更大的数据集上进行计算。我已直接按照教程中描述的步骤进行操作,但没有成功。

提前致谢!

【问题讨论】:

  • 你试过设置簇数吗? detectCores 将检测您的处理器内核数。然后makeCluster()设置你要使用的核数。
  • 我在运行模型之前尝试了以下设置:registerDoParallel(detectCores() - 1 ) options(rf.cores = detectCores() - 1, mc.cores = detectCores() - 1)

标签: r parallel-processing openmp random-forest


【解决方案1】:

您的问题中提到的指南来自 2013 年,从那时起,成功执行 OpenMP 并行执行的过程得到了显着简化。事实上,当前构建 (2.5.1) 在 CRAN 上可用的二进制文件应该在 Sierra 上并行运行。源代码包括一个现成的配置文件,它是 autoconf 命令的结果。因此,并行执行现在是默认行为。如果您尚未升级到最新版本,我建议您这样做。如果 CRAN 提供的二进制构建仍然没有开启并行执行,我建议使用 Homebrew 或其他包管理器将编译器升级到 GCC,然后按照我们的 GitHub 页面上的说明适当地创建和处理 Makevars 文件,以便允许 CRAN 包安装过程选择 GCC 编译器而不是默认的 Clang 编译器:

https://kogalur.github.io/randomForestSRC/building.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-26
    • 1970-01-01
    • 2020-07-13
    • 1970-01-01
    • 2012-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多