Apple 芯片上的 R 和 Rstudio

R and Rstudio on Apple silicon

是否有人了解有关 R 和 Rstudio 的未来路线图以支持新的 ARM 架构的信息?

我知道我们可能应该依赖 rosetta2,但我只是想知道我们是否能够 运行 本机代码。

看看这些链接,它们正在收集有关 M1 兼容软件和 R 以及 RStudio seem to be running fine under Rosetta2 and the developers are working hard on a native solution 的信息。

您也可以关注this blog.

更新!

这里有一些 benchmark results leman,我刚刚做了。

Rosetta2 (M1) 下的 R 基本上比我的 2.3GHz i5 16GB RAM 2017 年底 MBPro 快 70%。

RStudio 是用多种语言编写的,令人讨厌的是其中包含一些 FORTRAN 90。

问题是没有用于 FORTRAN 90 的本机、稳定、开源的 Apple Silicon 编译器,尽管有 NAG 和 ARM 出售的商业编译器。有一个古老的免费 G​​NU 工具 f2c,可将 FORTRAN 源代码转换为 C,但它仅支持 FORTRAN 66 和 77 标准。

所以要么:

需要调整 GNU 的 f2c 以支持 FORTRAN 90 标准,通过添加一些重要的逻辑来处理在 77 和 90 标准之间添加的内部函数,其他更改相对较小。然后调整 RStudio 的 Apple silicon 版本的依赖列表,在本机编译之前将有问题的模块转换为 C。

在将 GNU Fortran 编译器 gfortran 移植到 Apple 的 ARM 架构方面做出了一些努力(建议在 2022 年夏季发布,GNU 编译器合集,v12.#,尽管在 V11 分支中提供了实验性支持)。很快就用本机编译的包。

某人拥有商业 Apple Silicon、Fortran 90 编译器,自愿定期构建 运行 测试套件,为 RStudio 签名并提交通用二进制文件到 Apple 商店。

或者将 RStudio 中包含的 FORTRAN 90 模块手动翻译成一种语言,使用原生 Apple Silicon 编译器,例如 C 或 C++。

迫于压力,Apple 选择为架构编写和维护自己的 FORTRAN 90、95、2003、2008、2018 编译器(或从 ARM 或 NAG 购买编译器的权利)。