Skip to content

Add native support for Apple's ARM chips (arm64, M1) to RStudio for macOS #8652

@jmcphers

Description

@jmcphers

R and RStudio work today on the M1 chip, albeit with compromised performance, via Rosetta2, an emulation layer. This issue tracks the work needed to add native support for Apple's new ARM-based silicon to RStudio.

  • We should do this as a universal binary, supporting x86_64 and arm64 without requiring a separate download. Thankfully it is possible to build arm64 binaries on x86_64 hardware. The only downside of this approach is that it will make the binary enormous (as we will ultimately ship x86_64 and arm64 versions of Chromium).
  • Our build infrastructure will need to be updated to the latest version of Xcode to get support for cross-compiling to arm64.
  • Because we load R as a library, we need to wait for R itself to be ported to Apple silicon before RStudio can be fully ported. This is in the works, but currently held up due to dependencies on tooling further upstream. See Will R Work on Apple Silicon? from the R Core team. (Update: It works now. https://mac.r-project.org/)
  • On the front end, we depend on QtWebEngine, which also does not build for M1 (see QT-85279). This should not be an issue since we hope to move to Electron (EPIC: Electron #7389), which supports M1 as of the 11.0 release.
  • Several binaries we bundle will have to continue to run under Rosetta2 since they don't have M1 ports available and won't for the foreseeable future. See e.g., Please build a universal binary for macOS jgm/pandoc#6960

Other useful links

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions