Anaconda 并升级到新的 M1 Mac

2024-01-10

背景

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

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

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

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

问题

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

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

TLDR

  • The 康达锻造集团 https://conda-forge.org/ have a M1本机 conda安装人员here https://github.com/conda-forge/miniforge#miniforge3.
  • 安装很简单 - 运行安装程序,您就拥有了conda启动并运行。
  • 这将安装一个M1 原生康达,并且 conda 的默认环境将默认安装 M1 本机 python 版本和模块的 M1 本机版本(如果可用).
  • 似乎有适用于大多数常见模块的原生 osx M1 原生轮子现已在 conda-forge 频道上提供。

当前状态

看来是蟒蛇still没有原生的 M1 版本,Miniconda 也没有。...我不明白为什么花了这么长时间,而且似乎都没有本地 M1 支持,但这是一个单独的问题。

选择

然而,正如上面提到的,conda-forge (as in 负责维护 conda-forge 通道的小组 https://conda-forge.org/) do有一个适合他们版本的安装程序conda这本身就是 M1 原生的,并且还设置您的环境以在可用的情况下拉动 M1 原生轮子。他们称之为小型锻造厂.

他们的github是here https://github.com/conda-forge/miniforge.

各种安装程序Miniforge(通过直接下载、curl 或 homebrew)可以在他们的 github 页面(上图)上找到 - ARM 原生 miniforge 安装程序的直接链接是here https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh.

快速搜索 conda-forge 显示几乎所有常见模块现在都有可用的原生 M1 轮子。 (寻找支持平台“osx-arm64”,例如numpy https://anaconda.org/search?q=numpy)

Caveats

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

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Anaconda 并升级到新的 M1 Mac 的相关文章

随机推荐

  • 使用git作为集中版本服务器

    我目前在工作中使用svn 我们的设置是 每个人都有一个工作副本 并且我们致力于由 apache2 提供服务的 svn 服务器 所以我提交了更改 其他更新 每个人都可以按照自己的意愿处理副本 所以部署起来非常容易 但现在 我想做同样的事情 但
  • 从不同订阅下创建的映像创建 Azure VM

    有没有办法备份虚拟机 按照 sysprep 方法捕获图像 然后使图库中的该图像对其订阅下的人员可见 例如 我创建一个虚拟机 将其存档到图像库 然后我的同事出现并想要从该图像创建一个虚拟机 该同事不能是我的订阅的共同管理员 或者 是否有一种方
  • UICollectionViewFlowLayout 不使用整体框架

    我最近开始使用 UICollectionView 对 UICollectionViewFlowLayout 有点困惑 集合视图中每个单元格的框架似乎是在每个项目之间的间距相等的情况下计算的 这会导致某些单元格的帧具有分数位置 这会导致标签模
  • 如何对 find 的输出执行“for every”?

    我想找到所有mp41920x1080 的文件 If I do find type f name mp4 exec ffprobe 2 gt 1 它会找到所有mp4文件并显示视频信息 例如 输出将包含 以及其他行 Input 0 mov mp
  • Fortran 90 中双精度的最大数组大小是多少?

    抱歉 如果这不是做这个问题的正确位置 这不是关于编程的问题 而是一个技术问题 我需要处理大量双精度二维向量数组 大约有 1000 万个 但是 在其他程序中 我在处理这种数组时遇到了内存问题 我的问题是双精度数组大小是否有某种限制 我在 Li
  • jquery select2如何使选择后不关闭

    使用 多值选择框 时http ivaynberg github io select2 http ivaynberg github io select2 每次选择后选择框都会回落 有没有办法不这样做 以便用户可以选择其中的几个而不需要额外单击
  • 如何在 C# 中以管理员模式启动进程[重复]

    这个问题在这里已经有答案了 我有一个 Visual Studio Windows 应用程序项目 我添加了代码来下载安装程序更新文件 下载完成后 安装程序需要管理员权限才能运行 我添加了一个清单文件 当用户单击 DownloadUpdate
  • 如何在新创建的 .NET Core 2.0 Web 应用程序中以 .NET Standard 2.0 为目标?

    我刚刚使用创建了一个新项目dotnet new web 我的 Google foo 可能让我失望 但我没有找到与我的答案相关的任何内容 如果我错过了一些明显的东西 请链接到另一个 SO 答案或相关文档 如果我想确保这个新项目符合 NET S
  • 有没有一种简单的方法可以在 VB.NET 中随机化列表?

    我有一个类型列表System IO FileInfo 我想随机化列表 我想我记得看到过类似的东西list randomize 不久前 但我找不到我在哪里见过的 我第一次涉足这个领域 得到了这个函数 Private Shared Sub Ge
  • 从 Firebase 数据库读取和显示数据

    我正在尝试从 firebase 数据库检索数据并将数据存储在我在课堂上定义的课程数组中 到目前为止我已经得到 import AngularFireDatabase AngularFireList from angularfire2 data
  • 如何将 dataframe-js 导入 Google App 脚本?

    我使用http链接导入包 var d3Url https gmousse github io dataframe js dist dataframe js eval UrlFetchApp fetch d3Url getContentTex
  • 使用 GUI -OR- adb 命令从模拟器中提取文件时出现问题

    我正在 Eclipse Win7x64 中开发我的第一个 Android 应用程序 但在提取 SQLite 文件来检查其中的内容时遇到问题 我使用 DDMS GUI 来拉取时看到了这个问题 这似乎有些已知 2011 03 01 20 15
  • 不可清除的页面

    我遇到如下内核崩溃 在这里我可以观察到不可修复页面中存在大量内存 我想知道内存何时被添加到不可清除的页面列表中 另外 从下面的消息我可以了解到系统中只有 1724kB 可用 这是对的吗 kswapd0 page allocation fai
  • 如何在多模块构建中禁用根聚合模块的打包和发布任务?

    我有一个多项目 SBT 项目 它看起来像 SBT 文档上的示例 import sbt import Keys object HelloBuild extends Build lazy val root Project id hello ba
  • git add 添加被忽略的文件

    我正在尝试从 git 中删除以前跟踪的目录 这可以工作 但它会在后续的每个目录中添加回来git add git add A等等 这是我所做的 添加到项目根目录中的 gitignore node modules 运行以下命令 git rm r
  • 如何先移动文件的最后一行?

    我有一个文件 其中包含以下 3 行 bsub I q vtran vtran scan pad 0X test pm30 60 224 jtag bist full vector off vtran bsub I q vtran vtran
  • 在哪个 py.test 标注中我可以找到“项目”和“报告”数据?

    pytest runtest makereport 获取两个参数 item 和 call 从 item 中 我可以找到我为此测试创建的 funcarg 并且从 call 中 我可以找到异常信息 如果有 def pytest runtest
  • 用 Java 读取 XML 元素列表

    我想迭代一个 XML 文档 该文档本质上是一个结构相同的 XML 元素的列表 这些元素将被序列化为 Java 对象
  • 如何在 Polymer.dart 中的自定义元素内注册 PolymerExpression 过滤器?

    如何在自定义元素内注册 PolymerExpression 过滤器 我正在使用 Polymer dart 我想用这个 div Uppercase bob fullName uppercase div 在我的自定义元素的模板内 我在哪里注册u
  • Anaconda 并升级到新的 M1 Mac

    背景 我刚刚拥有一台新的 M1 mac mini 开发机器 并使用苹果的迁移助手从我的旧 x86 mac 迁移 这样做还将我的所有 conda 环境复制到新机器 它们都在我的主目录中 我安装了最新版本的 anaconda 和 anacond