r - 使用 OpenMP 编译 CRAN 二进制文件需要哪些 Hook ? (在 OS X 上)

标签 r macos openmp cran

CRAN 提交包裹时,如何获得生成的 Windows 和 Mac OSX 二进制文件以利用 OpenMP?

即,CRAN 机器寻找什么 make 或编译器钩子(Hook)来构建 OpenMP 代码?

最佳答案

  • Unix 源
  • R 在 unix 下具有良好的 OpenMP 支持。只需包含 ifdef _OPENMP。 (用户必须下载包源并在他们的机器上编译包)。
  • OS X 二进制文件
  • 自 2018 年中以来,R for OS X 使用 clang 编译,并使用自定义 clang 提供 OpenMP 支持。利用 OpenMP(例如 OpenMx)的二进制包并行运行。 CRAN tools 提供的编译器安装程序简化了源代码编译。 https://cran.r-project.org/bin/macosx/tools/clang-6.0.0.pkg
  • 强烈建议不要使用其他非 CRAN 编译器(例如 homebrew)。
  • Windows 二进制文件
  • 截至 2019 年,Windows 工具链支持 OpenMP 和 pthreads,但速度较慢且默认未启用。评论表明这可能会改变。

  • 引用文献

    https://cran.r-project.org/doc/manuals/R-exts.html#OpenMP-support

    关于r - 使用 OpenMP 编译 CRAN 二进制文件需要哪些 Hook ? (在 OS X 上),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31903229/

    相关文章:

    r - 如何使用geom_errorbar在堆叠条形图中堆叠误差条?

    java - 在Mac上为lucene设置java类路径

    algorithm - 并行化霍夫变换算法的最佳方法是什么?

    gcc - 怎样才能使 OpenACC/OpenMP4.0 卸载到 nvidia/mic 在 GCC 上工作?

    r - 使用 `.value` 和 `pivot_longer()` 时如何将后缀附加到 `names_pattern`

    r - 有没有一种方法可以为glm函数中的优化算法的每个步骤获取系数?

    objective-c - 使用外部框架构建 Objective-C 应用程序

    cocoa - NSPasteboard和简单的自定义数据

    c++ - 如何在我的 MEX 文件中使用 OpenMP 而不会导致 MATLAB 崩溃?

    r - 在 R 中填表