写帖子的背景

24年3月份的时候用conda install nvidia/label/cuda-11.x.x::cuda还挺正常的,能直接安装11.x.x版本的cuda,我还安利给同学用。但现在5月份不知道为什么这些命令都只会安装最新的cuda12.4,不知道是我哪里设置有问题还是官网的安装目录里的环境配置换了?

我在三台不同的服务器上都尝试了安装不同版本的cuda,但最后安装下来的都是12.4版本

解决过程

创建虚拟环境

假设创建环境名为env_name python=3.10的虚拟环境

conda create -n env_name python=3.10

利用conda安装cuda

conda官方cuda环境包地址(可以点进去选要安装的cuda版本):https://anaconda.org/nvidia/cuda
这里我选择安装cuda11.8,其中nvidia/label/cuda-11.8.0::表示指定channel路径为nvidia/label/cuda-11.8.0

conda install nvidia/label/cuda-11.8.0::cuda

但仔细看后发现安装的环境中只有cuda是11.8,但其他关联库都是12.4
在这里插入图片描述

愣头青下载安装后发现确实cuda版本不对,pytorch里也无法使用cuda
在这里插入图片描述

在这里插入图片描述
因此怀疑是conda的channel不对,导致环境安装问题

进入 https://repo.anaconda.com/pkgs/main查询cuda安装的版本,发现确实只有cuda12.4版本
在这里插入图片描述
原因我猜测应该是default channel优先级高于nvidia/label/cuda-11.8.0这一channel

解决办法(新,24/6/2更新)

旧的方法治标不治本,把default channel给删去了虽然能让cuda安装都使用nvidia的地址,但下次用conda create -n 创建新的python虚拟环境时会发现找不到python package。因此另外寻找解决办法,很简单如下:

conda install nvidia/label/cuda-11.8.0::cuda --channel nvidia/label/cuda-11.8.0

能够优先去nvidia的channel寻找cuda11.8.0的库,而不受defaults channel的影响,效果如下:
在这里插入图片描述
------------------------------------------------------分割线--------------------------------------------------

解决办法(旧)

修改channel,把默认channel删除

conda config --remove channels defaults

重新安装cuda

conda install nvidia/label/cuda-11.8.0::cuda

显示成功!终于不会去default channel下找cuda了。
在这里插入图片描述
nvcc -V也显示成功安装cuda
在这里插入图片描述

Logo

欢迎来到由智源人工智能研究院发起的Triton中文社区,这里是一个汇聚了AI开发者、数据科学家、机器学习爱好者以及业界专家的活力平台。我们致力于成为业内领先的Triton技术交流与应用分享的殿堂,为推动人工智能技术的普及与深化应用贡献力量。

更多推荐