Anaconda 和升级到新的 M1 Mac

新手上路,请多包涵

背景

我刚得到一台新的 M1 mac mini 开发机器,并使用苹果的迁移助手从我的旧 x86 mac 迁移。

这样做还将我所有的 conda 环境复制到新机器(它们都在我的主目录中)

我安装了最新版本的 anaconda 和 anaconda 加上我所有的 python 代码和环境似乎工作正常(这包括一堆 wheel 模块,特别是 numpy/scipy)。

我在下面对我的问题进行了大量谷歌搜索,但在任何地方都找不到任何好的答案 - 所以我想我会问,因为这似乎是其他人会遇到的很常见的情况

问题

  • 有谁知道 conda forge 提供的 python/numpy/scipy 等 M1 本机版本的状态?
  • 我假设我的 python/numpy 等环境中的所有二进制文件都仍然是旧的 x86 版本,因为它们都在我的主目录中的环境中,并且通过仿真运行。那么,如果/当可用时,您如何将它们更改/更新为 M1 arm 本机版本?

原文由 Richard 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

截至 2021 年 7 月的快速更新。

TLDR

  • conda-forge 组 有一个 M1 本机 conda 安装程序 在这里
  • 安装很简单 - 运行安装程序,您就可以启动并运行 conda
  • 这将安装一个 M1 原生 conda ,并且该 conda 的默认环境将默认 安装 M1 原生 python 版本和 M1 原生版本的模块(如果可用)
  • 现在在 conda-forge 频道上可用 的大多数常见模块似乎都有原生 osx M1 原生轮子

当前状态

似乎 Anaconda 仍然 没有原生的 M1 版本,Miniconda 也没有。 …我不明白为什么它花了这么长时间而且似乎都没有原生 M1 支持,但这是一个单独的问题。

选择

然而,正如上面提到的 steff, conda-forge (在 负责维护 conda-forge 频道的小组中确实 有一个安装程序用于他们的版本 conda 这本身就是原生 M1,并设置您的环境以在可用的情况下拉动 M1 原生轮子。他们称之为 Miniforge

他们的 github 在 这里

他们的 Miniforge 的各种安装程序(通过直接下载、curl 或自制程序)可以在他们的 github 页面(上方)上找到 - ARM 本机 miniforge 安装程序的直接链接在 这里

快速搜索一下 conda-forge show 的几乎所有常见模块现在都有可用的原生 M1 轮子。 (寻找支持平台 ‘osx-arm64` 例如 numpy

注意事项

我还没有对此进行过广泛的测试,而且我不确定如果非 M1 车轮可用会发生什么(我相信它会默认下载非拱形版本)。

我也不确定/没有测试过您是否可以将 M1 轮子与 x86 mac 轮子混合搭配。 (我猜这会起作用,但还没有尝试过)。

我也只使用 conda 的 pip 进行了最少的测试,以及它识别/尝试下载/解析 M1 与 x86 pip 包的程度。

原文由 Richard 发布,翻译遵循 CC BY-SA 4.0 许可协议

这里的答案会随着时间的推移而演变,所以这里是我截至 2021 年 1 月 27 日掌握的最新知识。

在仿真模式下安装 conda 完全可以正常工作。您需要做的就是将它安装在以仿真模式运行的终端中,或者使用尚未移植的终端仿真器安装它。

一旦您的 conda 环境启动并运行,其他一切看起来和感觉就像在 x86 Mac 上一样。

如果您想了解更多细节,我 在博客上写了我的经历。希望它能帮到你。

原文由 ericmjl 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题