C++ 对C/C++;存在?

C++ 对C/C++;存在?,c++,c,deployment,compiler-construction,r,C++,C,Deployment,Compiler Construction,R,我想知道部署R的最佳方法。Matlab有“Matlab编译器”(MCR)。曾经讨论过类似的R,将R编译成C或C++。有没有人有这方面的经验 我已经研究过了,它似乎是唯一一个致力于将R代码编译成可执行代码的项目。据我所知,它还没有被使用 [编辑1:]:要清楚,我知道有C和C++(和Java、Python等)接口给R(Rjava、RCPP、Rpy等)。我想知道在不预先安装R的情况下编译和部署R代码的具体方法 [编辑2:]:John Mellor Crummey告诉我,他们仍在研究RCC,希望能在4

我想知道部署R的最佳方法。Matlab有“Matlab编译器”(MCR)。曾经讨论过类似的R,将R编译成C或C++。有没有人有这方面的经验

我已经研究过了,它似乎是唯一一个致力于将R代码编译成可执行代码的项目。据我所知,它还没有被使用

[编辑1:]:要清楚,我知道有C和C++(和Java、Python等)接口给R(Rjava、RCPP、Rpy等)。我想知道在不预先安装R的情况下编译和部署R代码的具体方法


[编辑2:]:John Mellor Crummey告诉我,他们仍在研究RCC,希望能在4个月左右(最早)实现。如果我发现任何其他信息,我将进一步更新此信息。

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


通常情况下,人们只是直接用C/C++/Fortran编写计算密集型函数,然后才能找到瓶颈。有关示例,请参见或。对于R用户来说,这也很好,因为语法/函数名是相似的。

我已经忘记了Rice项目,已经有一段时间了。我认为这里的操作术语在项目页面的顶部有说明:最后更新日期为2006年3月8日

我们都知道R变化很大。因此,我只有标准的几点建议:

  • 他不仅对R的内部结构非常了解,而且对字节编译器也非常了解,一直致力于这样一个项目。还没有准备好,它仍然可以与标准的R引擎一起工作
  • Stephen Milbrow具有对R的扩展,该扩展与他的即时编译器包一起工作
  • 我的R高性能计算教程介绍了评测、编译扩展、R并行计算。。。部分,包括 还有一点
简言之:如果不事先安装R,就无法获得您想要的编译和部署R代码的特定方法。对不起

编辑/更新(2011年4月):Luke新的
编译器
包将是R2.13.0(将于2011年4月发布)的一部分,但默认情况下不会被“激活”,预计将于2011年10月发布


编辑/更新(2011年12月):Tierney教授刚刚发布了一个关于字节码编译器的版本。

字节码编译器将是R2.13版本的一部分。默认情况下,此版本中不使用它,但它是可用的;我希望2.14版本默认情况下会编译所有基本和推荐的包。编译器::编译帮助页面和R安装与管理手册提供了更多细节。

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


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

您可以查看p编译器,该编译器实现了R的子集。尤其是列表、矩阵、向量等以及lsfit、chol、svd等

您可以在以下位置下载免费版本:

它大大加快了计算速度

最好的


谢谢你,德克!最近没有查看Luke的主页。你的高性能计算论文/教程棒极了。我认为上次更新的日期正是你所说的意思,但我只是想核实一下。:)谢谢,这些都是很好的链接。不过,我特别关注的是部署过程,而不是性能问题。是否有关于编译何时有效的提示/指南?到目前为止,我最成功的尝试是二进制搜索,速度提高了2倍;我一直暗自希望S4会变得非常快,但没有这样的运气?在这一点上,大型函数和循环将受益匪浅。目前,调用编译函数和调用解释函数使用相同的机制,因此由函数调用开销主导的事情将不会有什么变化。这可能会在未来一年左右演变。我今天在博客上写了一个例子,重点是(简单、愚蠢、不现实的)循环:我相信,一旦R 2.13.0明天正式发布,将会有更多关于这个的帖子。R很简单。有些包及其依赖项不是,特别是当它们涉及某些其他语言时。我想到了Java和Tcl/Tk。