如何在Python虚拟环境中安装cuDNN与CUDA Toolkit(权限受限场景)
在无全局权限的Python虚拟环境中安装CUDA Toolkit和cuDNN
可以实现将CUDA Toolkit和cuDNN安装到当前虚拟环境目录下,但无法直接通过pip install完成(二者并非纯Python包),以下是具体操作步骤:
1. 确认版本匹配
首先确认你的TensorFlow版本对应的CUDA和cuDNN版本要求:
python3 -c "import tensorflow as tf; print(tf.__version__)"
例如TensorFlow 2.15.x对应CUDA 11.8和cuDNN 8.6.x,务必严格匹配版本,否则会出现兼容性问题。
2. 下载CUDA Toolkit(自定义路径安装)
从NVIDIA官网下载对应版本的CUDA Toolkit runfile安装包(而非deb包),然后执行以下命令将其安装到虚拟环境目录:
# 替换为你下载的CUDA runfile文件名 sh cuda_11.8.0_520.61.05_linux.run --silent --toolkit --installpath=$PWD/.environment/cuda
参数说明:
--silent:静默安装,无需交互--toolkit:仅安装CUDA Toolkit(不装驱动,假设系统已装合适的GPU驱动)--installpath:指定安装到当前虚拟环境的cuda子目录
3. 下载并部署cuDNN
从NVIDIA官网下载对应CUDA版本的cuDNN压缩包(例如cudnn-linux-x86_64-8.6.0.163_cuda11-archive.tar.xz),解压后将文件复制到虚拟环境的CUDA目录:
# 解压压缩包 tar -xf cudnn-linux-x86_64-8.6.0.163_cuda11-archive.tar.xz # 复制头文件 cp -r cudnn-linux-x86_64-8.6.0.163_cuda11-archive/include/* $PWD/.environment/cuda/include/ # 复制库文件 cp -r cudnn-linux-x86_64-8.6.0.163_cuda11-archive/lib64/* $PWD/.environment/cuda/lib64/ # 设置文件权限 chmod a+r $PWD/.environment/cuda/include/cudnn*.h $PWD/.environment/cuda/lib64/libcudnn*.so
4. 配置虚拟环境的环境变量
编辑虚拟环境的激活脚本,让每次激活环境时自动加载CUDA和cuDNN的路径:
nano .environment/bin/activate
在脚本末尾添加以下内容:
export CUDA_HOME="$VIRTUAL_ENV/cuda" export LD_LIBRARY_PATH="$CUDA_HOME/lib64:$CUDA_HOME/extras/CUPTI/lib64:$LD_LIBRARY_PATH" export PATH="$CUDA_HOME/bin:$PATH"
保存退出后,重新激活虚拟环境:
source .environment/bin/activate
5. 验证安装
运行你之前的检查命令,确认TensorFlow能识别GPU:
python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
如果输出包含GPU设备信息,说明配置成功。
内容的提问来源于stack exchange,提问作者Sharan Kumar
相关产品推荐
相关产品推荐

