R编译器是否存在?

我想知道部署R的最佳方式。Matlab有“matlab编译器”(MCR)。 对于将R编译为C或C ++的R,过去曾经有类似的讨论。 有没有人有任何使用由John Garvin在Rice开发的R到C编译器(RCC)的经验?

我研究过它,它似乎是编译R代码到可执行代码的唯一项目。 而据我所知,它还没有被使用。

[编辑1:] :要清楚,我知道有R和R(rJava,rcpp,Rpy等)的C和C ++(以及Java,Python等)接口。 我想知道具体的方式来编译和部署R代码,而无需事先安装R。

John Mellor-Crummey告诉我,他们还在RCC上工作,希望能在4个月左右(最早)提供。 如果我find其他东西,我会进一步更新。

字节码编译器将成为R 2.13版本的一部分。 默认情况下,这个版本没有使用它,但它是可用的; 我预计2.14版本将默认字节编译所有基本和推荐的软件包。 编译器::编译帮助页面和R安装和pipe理手册给出了一些更多的细节。

我已经忘记了赖斯项目,这已经有一段时间了。 我认为这里的操作术语是在项目页面的顶部: 最后更新3/8/06

我们都知道R变化很大。 所以我只有标准的几个指针给你:

  • Luke Tierney不仅对R内部知道很多,同样也对字节编译器有所了解,他一直在研究这样一个项目。 没有准备好,它仍然会与标准的R引擎一起工作。
  • Stephen Milborrow将R的扩展与R的兼容编译器包jit一起使用
  • 我使用R教程介绍高性能计算教程(UseR!2009最新的教程幻灯片)涵盖了分析,编译扩展,与R …并行计算等部分,包括Rcpp和一些有关RInside的内容 。

简而言之:在没有预先安装R的情况下,没有办法具有你想要的特定方式来编译和部署R代码 。 抱歉。

编辑/更新(2011年4月): Luke的新compiler包将是R 2.13.0(将于2011年4月发布)的一部分,但默认情况下不会“激活”,预计2011年10月预期为2.14.0。

编辑/更新(2011年12月): Tierney教授刚刚在字节码编译器上发布了一篇超过100页的论文 。

为什么人们在部署R时感到恐惧? 我很确定我以前见过这个问题。

安装R是一块蛋糕(你实际上没有说你关心哪个操作系统)。 对于Windows它的一个.exe。 文件,运行它,几次说“是”,完成。 我怀疑安装程序exe可能也有无人参与的安装标志。

你可以看看P编译器,它实现了R的一个子集。特别是列表,matrix,向量等,以及lsfit,chol,svd,…

你可以下载一个免费版本

http://www.ptechnologies.org

它大大加快了计算速度。

最好,

我没有使用Garvin的软件包,也不知道在这些方面有什么可能。 然而:

通常情况下,人们直接在C / C ++ / Fortran中编写计算密集型函数,然后通过分析find瓶颈。 参见RCpp接口或使用.C和.Call从R调用C函数作为示例。 由于语法/函数名称是相似的,所以对于R用户来说, Scythe统计库也是非常好的。