windows10+Nvidia GeForce GTX 1070+安装 Cuda-10.1 + CuDNN-7.6 + Tensorflow-gpu-1.15.0

本文详细介绍如何在VisualStudio2019环境下安装CUDA10.1和Cudnn7.6.4,以及如何通过调整环境变量和配置pip镜像源来优化TensorFlow-GPU1.15的安装过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装 Visual Studio 2019下载地址
下载完成后点击exe,勾选通用Windows平台开发和使用c++的桌面开发,直到安装完成。
在这里插入图片描述
右键点击NVIDIA控制面板,进入帮助->系统信息,选择组件,查看NVCUDA.dll上写的CUDA版本号
在这里插入图片描述
我的Nvdia控制面板上写的是CUDA10.1

我安装的是CUDA10.1和对应的Cudnn7.6.4(查看CUDA和Cudnn对应的版本,需要登陆一下
CUDA默认安装路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1

以上完成之后把以下四个路径加入到环境变量中:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib

安装完成后,在C盘的用户目录下,选择你当前的用户进去新建文件夹pip,再在里面建立文件pip.ini,在里面设置镜像源和信任,如下

[global] 
index-url=http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com

在这里插入图片描述
接下去在打开Anaconda Prompt输入,命令pip install tensorflow-gpu==1.15.0即可很快的完成安装
在这里插入图片描述
在测试时,发生了错误如下:

在这里插入图片描述

Traceback (most recent call last):
  File "D:\Anaconda3\lib\site-packages\numpy\core\__init__.py", line 24, in <module>
    from . import multiarray
  File "D:\Anaconda3\lib\site-packages\numpy\core\multiarray.py", line 14, in <module>
    from . import overrides
  File "D:\Anaconda3\lib\site-packages\numpy\core\overrides.py", line 7, in <module>
    from numpy.core._multiarray_umath import (
ImportError: DLL load failed: 找不到指定的模块。

看着是numpy版本发生错误,于是我降低了版本:pip install --user numpy==1.16
在这里插入图片描述
由于一些不确定性我本身也不了解,一开始我安装1.14的版本出现了很多错误,比如ImportError: DLL load failed: 找不到指定的模块的问题
历程是直接pip install tensorflow-gpu,但是这个直接给你装2.2的新版本,由于想用旧版本,于是又pip uninstall tensorflow-gpu删除掉,换了博客上面说的1.15最终成功。
在这里插入图片描述

<think>嗯,用户现在想复现RandLA-Net深度学习网络,使用的是CUDA 11.1cuDNN 8.0.5、TensorFlow 1.15.0Python 3.6.13这些版本。首先,我需要确认这些版本之间的兼容性,因为TensorFlow 1.15比较旧了,可能对CUDAcuDNN的支持有限。 用户可能是在一个特定的项目或研究中使用这些版本,可能因为某些依赖库或者代码只能在旧版本下运行。比如,RandLA-Net的原代码可能基于TensorFlow 1.x,而用户不想升级到TensorFlow 2.x,避免代码不兼容的问题。这时候,用户需要确保所有组件的版本正确匹配,否则安装过程中会遇到各种错误,比如CUDA版本不兼容,或者TensorFlow找不到对应的cuDNN库。 接下来,我需要检查CUDA 11.1cuDNN 8.0.5是否被TensorFlow 1.15支持。根据TensorFlow的官方文档,TensorFlow 1.15可能支持CUDA 10.x而不是11.x,这可能是一个问题。用户可能需要降级CUDA10.0或者10.1,但用户明确提到使用CUDA 11.1,所以可能需要寻找非官方支持的方法,或者是否有社区提供的补丁。 另外,Python 3.6.13也是一个较旧的版本TensorFlow 1.15可能支持Python 3.6,但需要确认具体的小版本是否兼容。同时,安装TensorFlow 1.15可能需要通过pip指定正确的版本号,并且可能需要从旧的源下载。 用户可能已经尝试过直接安装这些组件,但遇到了问题,比如导入TensorFlow时出现错误,或者无法找到cuDNN库。这时候需要详细的环境配置步骤,包括设置环境变量如LD_LIBRARY_PATH,确保CUDAcuDNN的路径被正确引用。 然后,关于RandLA-Net的代码部分,用户可能需要从GitHub克隆仓库,并检查代码的依赖项。可能需要安装特定的Python包,如scikit-learn、h5py等,这些包的版本也需要与Python 3.6TensorFlow 1.15兼容。此外,编译自定义的CUDA操作(如tf_ops)时,需要确保CUDA工具链的版本与系统安装CUDA版本一致,否则会导致编译失败。 用户可能会遇到的常见问题包括:CUDATensorFlow版本不兼容,导致导入错误;cuDNN库未正确安装或路径未设置;Python版本冲突;以及自定义CUDA操作编译失败。需要逐步引导用户检查每个环节,例如通过运行nvidia-smi确认GPU驱动,nvcc --version确认CUDA版本,以及验证TensorFlow是否能检测到GPU。 最后,可能还需要建议用户考虑使用Docker或conda环境来隔离旧版本的环境,避免影响系统中的其他项目。如果无法降级CUDA,可能需要寻找其他解决方案,比如使用较新的TensorFlow版本,但需要修改RandLA-Net的代码以适应新版本,这可能比较复杂。 总之,用户的需求是成功复现RandLA-Net,但受限于特定的软件版本,需要详细的步骤来确保环境配置正确,处理可能的兼容性问题,并提供故障排除的方法。</think>以下是基于**CUDA 11.1 + cuDNN 8.0.5 + TensorFlow 1.15.0 + Python 3.6.13**复现RandLA-Net的详细指南,包含环境配置、代码调试和常见问题解决方案。 --- ### 一、环境验证与依赖检查 #### 1. **版本兼容性说明** - **TensorFlow 1.15** 官方支持 CUDA 10.0/10.1,但通过修改可适配 CUDA 11.1 - **cuDNN 8.0.5** 需与 CUDA 11.1 匹配 - **Python 3.6** 需使用 `pip<=20.3` #### 2. **关键依赖安装** ```bash # 创建Python 3.6虚拟环境 conda create -n randla_net python=3.6.13 conda activate randla_net # 安装TensorFlow 1.15(需指定源) pip install tensorflow-gpu==1.15.0 -i https://pypi.tuna.tsinghua.edu.cn/simple # 安装其他依赖 pip install numpy==1.18.5 scikit-learn==0.24.2 h5py==2.10.0 open3d-python==0.7.0.0 ``` --- ### 二、RandLA-Net代码适配 #### 1. **代码仓库与修改** ```bash git clone https://github.com/QingyongHu/RandLA-Net.git cd RandLA-Net ``` - **修改文件 `helper_tf_util.py`**: ```python # 替换所有 tf.contrib 的弃用函数(如tf.contrib.layers.xavier_initializer) import tensorflow.compat.v1 as tf tf.disable_v2_behavior() ``` #### 2. **CUDA 11.1适配** - **修改CUDA编译参数**(`tf_ops/compile.sh`): ```bash # 指定CUDA 11.1路径 export CUDA_HOME=/usr/local/cuda-11.1 nvcc -std=c++11 -c -o $1_g.cu.o $1.cu -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC -O2 ``` --- ### 三、数据集准备与训练 #### 1. **下载数据集** - **Semantic3D** 或 **S3DIS** 数据集: ```bash wget http://semantic3d.net/data/sem8_original.zip unzip sem8_original.zip -d data/ ``` #### 2. **数据预处理** ```bash python utils/data_prepare_semantic3d.py ``` #### 3. **启动训练** ```bash python main_Semantic3D.py --mode train --gpu 0 ``` --- ### 四、常见问题与解决方案 #### 1. **TensorFlow无法识别GPU** - **现象**:`Could not load dynamic library 'libcudart.so.11.0'` - **解决**: ```bash # 检查环境变量 export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:$LD_LIBRARY_PATH ``` #### 2. **cuDNN版本冲突** - **现象**:`CUDNN_STATUS_NOT_INITIALIZED` - **解决**: ```bash # 验证cuDNN安装 cp /usr/local/cuda-11.1/include/cudnn.h /usr/local/cuda/include/ ``` #### 3. **自定义算子编译失败** - **现象**:`undefined symbol: _ZN10tensorflow7strings6StrCatERKNS0_8AlphaNumE` - **解决**: ```bash # 重新编译tf_ops(需与TensorFlow版本严格匹配) cd tf_ops && bash compile.sh ``` --- ### 五、性能优化建议 1. **Batch Size调整**:显存不足时降低`batch_size`(默认4→2) 2. **混合精度训练**:在`main_Semantic3D.py`中添加: ```python tf.keras.mixed_precision.set_global_policy('mixed_float16') ``` --- ### 六、验证环境是否成功 ```python import tensorflow as tf print(tf.__version__) # 应输出1.15.0 print(tf.test.is_gpu_available()) # 应返回True ``` --- 通过以上步骤,可完成RandLA-Net的复现。若遇到环境问题,建议优先检查CUDA/cuDNN路径和TensorFlowGPU支持状态。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值