Anaconda 与 Cuda 9.0 的集成显示不兼容的包错误

Posted

技术标签:

【中文标题】Anaconda 与 Cuda 9.0 的集成显示不兼容的包错误【英文标题】:Anaconda Integration with Cuda 9.0 shows Incompatible Package Error 【发布时间】:2020-07-19 04:46:14 【问题描述】:

我正在尝试在 Windows 10 中使用 NVIDIA-SMI: 445.75 安装 CUDA 9.0

我的Cuda 9.0安装成功,如图来自Command-prompt

*(DL) C:\Users\User>nvcc --version    
nvcc: NVIDIA (R) Cuda compiler driver    
Copyright (c) 2005-2017 NVIDIA Corporation    
Built on Fri_Sep__1_21:08:32_Central_Daylight_Time_2017    
**Cuda compilation tools, release **9.0**, V9.0.176***

(1) 我下载了cudnn-9.0-windows10-x64-v7.zip,将其解压缩,并将其移动到安装 Cuda 时创建的文件夹中。

(2)在Anacondaterminal提示符下, 我输入conda install pytorch=1.1.0 torchvision=0.3.0 cudatoolkit=9.0 –c pytorch

但是,Anaconda 提示给出以下错误

**Error messages**    
*Collecting package metadata (current_repodata.json): done    
Solving environment: failed with initial frozen solve. Retrying with flexible solve.    
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.    
Collecting package metadata (repodata.json): done    
Solving environment: failed with initial frozen solve. Retrying with flexible solve.    
Solving environment: |    
Found conflicts! Looking for incompatible packages.    
This can take several minutes.  Press CTRL-C to abort.    
failed    

UnsatisfiableError: The following specifications were found to be incompatible with the existing python installation in your environment:    

Specifications:    

  - pytorch=1.1.0 -> python[version='>=3.5,<3.6.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0']    
  - torchvision=0.3.0 -> python[version='>=3.5,<3.6.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0']    

Your python: python=3.8    

如果 python 位于链的最左侧,那就是您要求的版本。 当 python 出现在右侧时,这表明左侧的内容在某种程度上不适用于您受限的 python 版本。请注意,除非您明确指定,否则 conda 不会将您的 python 版本更改为不同的次要版本。

发现以下规范相互不兼容:

Output in format: Requested package -> Available versions    

Package cudatoolkit conflicts for:    

    torchvision=0.3.0 -> cudatoolkit[version='>=10.0,<10.1|>=9.0,<9.1']    
    pytorch=1.1.0 -> cudatoolkit[version='>=10.0,<10.1|>=9.0,<9.1']    
    torchvision=0.3.0 -> pytorch[version='>=1.1.0'] -> cudatoolkit[version='>=10.1,<10.2|>=9.2,<9.3']The following specifications were found to be incompatible with your CUDA driver:    

      - feature:/win-64::__cuda==11.0=0    

    Your installed CUDA driver is: 11.0*    

【问题讨论】:

这可能已经晚了,但是当我遇到这个问题时,更新 conda 工作(可能使用了与新 Python 版本不一致的旧版本:conda update -n base conda 【参考方案1】:

我解决了这个问题如下。

    通过在开始菜单中搜索来打开 Anaconda Powershell Prompt。 然后运行conda install -c anaconda tensorflow-gpu 命令。 可能会要求您接受。

终于tensorflow-gpu 列在安装列表中。

参考:https://anaconda.org/anaconda/tensorflow-gpu

【讨论】:

【参考方案2】:

我在安装 rpy2 时遇到了同样的问题,所以也许这在这里也有帮助。 原来是conda源的问题。对我来说,它在使用时有效:

conda install -c conda-forge <library_name>

将 替换为您要安装的库。

【讨论】:

【参考方案3】:

您可能正在尝试运行其他人的代码。因此,安装的 conda 与您的 python 版本不兼容。可能你的 python 版本太旧了,而 conda 是新的。据我所知,您有 2 个选择(虽然都不好):

1. 降级你的 conda

2. 安装较新的 python 并尝试运行您的代码。如果您遇到错误,请尝试通过编码来修复它们,例如:替换已弃用的函数。

正如我所说,这些解决方案不是最好的,但您可以尝试

【讨论】:

以上是关于Anaconda 与 Cuda 9.0 的集成显示不兼容的包错误的主要内容,如果未能解决你的问题,请参考以下文章

CUDA + pytorch + pycharm + Anaconda + OpenCV安装教程与环境配置

使用 Anaconda install 在 Windows 上获取 CUDA 和 CUDNN 版本

win10 下cuda 9.0 卸载

01 Pytorch和CUDA对应的版本及Pytorch和Python对应的版本及Python与Anaconda的对应关系

为什么CUDA内核无法在带有CUDA 9.0的VS 2013中启动

cuda 9.0 + vs2015 环境搭建