【问题标题】:Options when compiling R code编译 R 代码时的选项
【发布时间】:2017-04-25 13:44:50
【问题描述】:

我通常只是在控制台上复制粘贴(或source(..))我的 R 代码,因此在 R 中编译对我来说非常模糊。

在编译 C++ 代码时,可以向编译器提供指示(例如#define#pragma)或指示优化级别的特定标志(例如-o2)。

R 中有 #InfoForCompiler-o2 的等价物吗?是否可以对 R 代码的编译方式和时间(定义函数时或首次调用函数时)做出具体选择?

【问题讨论】:

  • R 是解释型的,而不是编译型的,而且它不使用预处理器,所以实际上没有与这些东西中的任何一个等效的东西。

标签: r compilation compiler-optimization jit


【解决方案1】:

无论您选择哪种编译方式,从 R CMD COMPILER CMD INSTALL 的包,或通过类似 Rcpp::sourceCpp() 的方式,它都会始终由 R 本身调用并且

  • R 尊重环境变量,例如 CXXFLAGS
  • R 在 $RHOME/etc/Makeconf 中查找它的值(在 Debian 系统上也在 /etc/R/Makeconf
  • 这些可以通过~/.R/Makeconf 覆盖每个用户。

但正如@nrussell 评论的那样,这不会影响您已经编译的 R 解释器,只会增加新的编译 - 例如包安装。

要为 R 本身更改这一点,您必须从源代码中重新构建 R。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-27
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多