PyTorch 的 GPU 和 CPU 版本可以安装在同一个 Conda 环境中吗?

Posted

技术标签:

【中文标题】PyTorch 的 GPU 和 CPU 版本可以安装在同一个 Conda 环境中吗?【英文标题】:Can both the GPU and CPU versions of PyTorch be installed in the same Conda environment? 【发布时间】:2020-02-19 00:52:38 【问题描述】:

PyTorch installation web page 展示了如何安装 GPU 和 CPU 版本的 PyTorch:

conda install pytorch torchvision cudatoolkit=10.1 -c pytorch

conda install pytorch torchvision cpuonly -c pytorch

这两个版本可以安装在同一个Conda环境中吗?

如果您可能会问为什么需要这样做,那是因为我想要一个单一的 Conda 环境,我可以在有 GPU 和没有 GPU 的计算机上使用它。

【问题讨论】:

不管在一个环境中安装 2 个版本,我认为你不能在没有 NVidia GPU 的机器上安装 PyTorch GPU,因为它依赖于 CUDA。 【参考方案1】:

GPU 版本的 PyTorch 实际上是 CPU PyTorch 的超集。您可以在 CPU 上使用 GPU PyTorch,但不能在 GPU 上使用 CPU PyTorch。所以在你的情况下,只安装 GPU 版本的 PyTorch 就足够了。

【讨论】:

你确定吗?我最初安装了 torch gpu 版本并将其用于训练和测试。现在对于我的烧瓶应用程序,我不需要在 gpu 上运行它。我将模型加载到 cpu(显式)并且我得到错误 CUDA 内存不足。这很奇怪!

以上是关于PyTorch 的 GPU 和 CPU 版本可以安装在同一个 Conda 环境中吗?的主要内容,如果未能解决你的问题,请参考以下文章

PyTorch CPU 和 GPU 版本环境搭建及 PyTorch 基本语法

安装pytorch-gpu时会默认安装cpu版本

强烈推荐浅谈将Pytorch模型从CPU转换成GPU

将Pytorch模型从CPU转换成GPU

Pytorch 亲妈级安装教程(GPU or CPU版本)

pytorch常见问题之cpu占满