Windows下CUDA多版本共存

一、 参考资料

tensorflow各个版本的CUDA以及Cudnn版本对应关系
windows下同一个显卡配置多个CUDA工具包以及它们之间的切换
CUDA、CUDNN在windows下的安装及配置

二、相关介绍

2.1 问题引入

由于tensorflow的版本与CUDA版本是严格匹配的,所以在开发过程中,经常遇到CUDA版本的问题,安装多版本CUDA是必不可少的。本文介绍了多版本CUDA自由切换的方法,亲测有效。
在这里插入图片描述

tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() failed. Status:
 CUDA driver version is insufficient for CUDA runtime version
错误原因:
CUDA版本与驱动版本不匹配

解决办法:
安装当前驱动支持的CUDA版本。

2.2 重要说明

  1. CUDA与显卡驱动没有对应关系,更新显卡驱动到最新版本即可,显卡驱动下载地址。
  2. cuDNN与CUDA版本要对应。
  3. CUDA是NVIDIA推出的用于自家GPU的并行计算框架,CUDA的本质是一个工具包(ToolKit)。
  4. cuDNN是一个SDK,是一个专门用于神经网络的加速包。
  5. 安装CUDA过程中会绑定安装显卡驱动(默认),因为CUDA Toolkit安装包内含对应版本Nvidia显卡驱动,则取消勾选显卡驱动,只安装CUDA Toolkit即可。

三、具体步骤

  1. 安装CUDA参考博客 CUDA、CUDNN在windows下的安装及配置。
  2. 多版本共存的前提是已经安装了CUDA,博主已经安装了CUDA10.1。
    Windows下CUDA多版本共存_第1张图片
  3. 下载CUDA11.1安装包,下载对应的cuDNN。
  4. 自定义安装CUDA11.1,勾选选项。当前版本比新版本新时,取消勾选。
    Windows下CUDA多版本共存_第2张图片
    Windows下CUDA多版本共存_第3张图片
    Windows下CUDA多版本共存_第4张图片
    Windows下CUDA多版本共存_第5张图片
  5. 配置cuDNN。
  6. 配置环境变量。
    CUDA10.1是之前安装的,CUDA11.1是之后安装的,所以默认CUDA10.1的环境变量在CUA11.1之前,CUDA_PATH环境变量被CUDA11.1覆盖。
    Windows下CUDA多版本共存_第6张图片

Windows下CUDA多版本共存_第7张图片
7. 切换CUDA版本时,只需要切换环境变量中CUDA的顺序即可,比如让CUDA11.1生效,则CUDA11.1环境变量在CUDA10.1之前。
Windows下CUDA多版本共存_第8张图片
8. 查看切换版本是否生效。
Windows下CUDA多版本共存_第9张图片
9. 如果要切换回CUDA10.1,在环境变量中,将CUDA10.1调在CUDA11.1之前即可。
Windows下CUDA多版本共存_第10张图片
10. 查看切换版本是否生效
Windows下CUDA多版本共存_第11张图片

你可能感兴趣的:(运维,cuda,cudnn)