我的理解是这样的
你在 conda 在虚拟环境装了 cuda 11.2 ,为什么版本信息显示 11.8 呢
是因为你的环境变量配置问题,导致优先找到了 11.8 版本,cuda 又不依赖于某个虚拟环境
你要做的是,把某个虚拟环境去寻找 cuda 时候的环境变量,配置正确,找到你想要的版本
例如,我之前的做法,我自己手动安装 cuda ,我安装了四个版本
/usr/local/cuda-9.0
/usr/local/cuda-9.2
/usr/local/cuda-10.0
/usr/local/cuda-10.1
那么我在需要不同版本的时候怎么做呢
![cuda 变量配置](
https://i2.100024.xyz/2024/02/05/p374sw.webp)
unset PATH
unset LD_LIBRARY_PATH
删除已有变量的目的是能确保新加路径生效,否则比如有一个 9.0 的路径已经在环境变量里,你后边在加 10.0 的路径,怎么也不会生效的
PATH 变量删除会导致命令行基本不可用,你自己 echo 一下你机器上的 Path 看看,例如我的机器对应的要把 17-18 行左右的设置回去
最后再说 pycharm 怎么处理
(1) 如果你和我这样,全局安装,并设置了对应的环境变量,python 虚拟环境就别装 cuda 了,这样就是全局切换效果,cuda 和虚拟环境分开,你想用哪个 cuda 就用那个 cuda ,和虚拟环境无关,只看你的变量设置
( 2 )如果还是版本不对,pycharm 可以添加变量,点击 pycharm 上面的 run -> edit configurations 在弹出的界面中,你会发现还可以设置 Environment Variables ,这里就是针对这个当前项目设置了,这里设置 PATH 和 LD_LIBRARY_PATH 和上面给出的截图那样,肯定会生效的