cuda安装教程显卡驱动(cuda安装失败解决方法)

一直对人工智能、机器学习、深度学习等相关方面有着探索的兴趣,它们对我来说就像一团迷雾。

这篇文章记录一下我入门的探索,主要在深度学习方面,名词的简单解释、CUDA、PyTorch 等。

1 理论学习 1.1 浅薄理解

① 人工智能>机器学习>深度学习;

② y = f(x),我们的目标是知道这个 f 是什么,也就是 x 与 y 的关系是什么,需要计算得出;

③ GPU 在复杂问题上拥有比 CPU 更高的计算效率,并行;

④ 研究这些内容一般情况下最好拥有一台配置了支持 CUDA 的 NVIDIA 显卡的电脑。

官网写的的 CUDA-enabled GPU[1],建议再利用搜索引擎搜索下。

1.2 名词介绍1.2.1 CUDA

让 GPU 来进行复杂计算得到结果,而不只用 CPU。

如何写一款软件?可以使用 C 语言。

如何使用 GPU 来进行计算?可以使用 CUDA。

CUDA (Compute Unified Device Architecture)是 NVIDA 推出的 GPU 通用并行运算架构,CUDA 是一个异构模型,需要 CPU 和 GPU 协同工作。CPU 负责处理逻辑复杂的串行程序,而 GPU 重点处理数据密集型的并行计算程序。

推荐文章:CUDA编程入门极简教程[2]。

推荐视频:CUDA学习第1课:用CUDA做数的平方[3],极力建议读完推荐文章后看这个视频。

CPU 的数据以 h_ (host)开头,GPU 的数据以 d_ (device)开头,是一种约定。将 GPU 计算的结果搬到 CPU。

1.2.2 cuDNN

为 GPU 计算加速,提高性能。CUDA 的插件。

如何提高书写代码的效率?可以使用 IDE。

如何提高 GPU 计算效率?可以使用 cuDNN。

1.2.3 Tensorflow、PyTorch

深度学习框架,编程库。

如何高效的写前端项目?可以使用 Vue 框架、React 框架、Angular 框架等,多种选择。

如何高效的写深度学习项目?可以使用 Tensorflow 框架、PyTorch 框架等,多种选择。

推荐文章:深度学习框架究竟是什么?[4]

张量(Tensor)。

1.3 个人选择

我选择在 Window10 系统下使用 PyTorch 框架学习。Ubuntu 应该是更好些,但目前是学习阶段,就用常用系统来。虽然 Tensorflow 对我来说一直是这方面的一个标记,但 PyTorch 易学习和易使用。

2 CUDA 相关

安装 CUDA 运行其示例。网上关于各个安装部分的内容挺多的,我就不过多重复写了,仅记录下自己遇到的问题和关键点。

2.0 vs2019 和更新显卡驱动

此条为建议。

电脑先安装 vs2019[5] 或者其他版本,解决什么依赖什么库什么 DLL 等等问题,参考文章 Visual Studio2019安装步骤[6]。Visual Studio Installer 非常方便,最近用微软的系列开发,是什么都给你弄好直接用的感觉。然后更新显卡驱动[7]。完成后再开始后续内容。

2.1 查看 CUDA 最高支持版本

命令行内输入命令,右上角会显示最高支持的 CUDA 版本,可以看到我电脑是 11.0 版本。

$nvidia-smi

cuda安装教程显卡驱动(cuda安装失败解决方法)

cudaVersion

注意,驱动是向下兼容的。也就是说,只要安装的 CUDA 版本不高于这里显示的版本就可以,无需重装对应版本驱动!比如目前电脑驱动最高支持 11.x,但是各个框架最高只支持到 10.x,不需要重新装显卡驱动。

下载的 CUDA 也会集成 NVIDIA 显卡驱动,如果需要安装到时候重装就好,不需要要记得取消勾选。

2.2 CUDA2.2.1 下载

这是官方各版本下载页面[8],下载即可。

目前我本机版本为 11.0,各框架最高支持到 10.1、10.2 等等,比如 Tensorflow[9] 支持到 10.1,PyTorch[10] 支持到 10.2,我综合考虑安装 10.1 版本。

cudaToolkitArchive

最初安装时,访问网站的速度给我造成了一定的困扰,但是最近几天却很顺畅,囧。

CUDA Toolkit 10.1 update2 Archive Window10 x86_64 exe 下载链接[11]

2.2.2 安装

选择位置进行解压,然后安装就好。可参考Win10安装CUDA10和cuDNN[12]文章。

cudaInstall

在命令行输入命令,安装成功。如果报错,重新开一个命令窗口输入,或者检查环境变量(安装是会自动添加的,但是也有可能没添加成功)。

$nvcc–version

nvcc:NVIDIA C 编译器

nvccVersion2.3 cuDNN

cuDNN 的版本需要与 CUDA 版本对应。

2.3.1 下载

cudnn-10.1-windows10-x64-v8.0 下载链接[15]

2.3.2 安装

直接把压缩包里面的内容复制到 CUDA 的安装目录下就好了。

cuDNNInstall2.4 简单代码2.4.1 在命令行中使用 cuda

推荐两个简单的代码文件, 直接复制文中代码,保存为 .cu 文件,命令行中运行即可。

① 理解CUDA[16],这一篇附的代码是前文 1.2.1 小节介绍 CUDA 时推荐文章的代码。自己手打了一遍视频中的代码运行,查找其他示例时发现有文章已记录,所以直接附带文章链接。

② CUDA编程入门[17],这篇以渐进的方式展示代码,显示出 GPU 的计算效率。

//编译程序$nvcc-osquaresquare.cu//运行程序$./square//性能测试$nvprofsquare2.4.2 遇到的问题

① 编译程序时报错找不到 cl.exe 程序。将 cl.exe 添加到系统环境,一般在 vs 的安装目录下,对应平台 x64 或者 x86。

nvccfatal:Cannotfindcompiler’cl.exe’inPATHC:\ProgramFiles(x86)\MicrosoftVisualStudio\2019\Community\VC\Tools\MSVC\14.27.29110\bin\Hostx64\x64

② 编译时提示一串 C4819 警告,Unicode 编码问题。尝试找到的方法,但无成功,就不推荐了。这个并不太影响编译,只是 Debug 会混乱。

warningC4819:Thefilecontainsacharacterthatcannotberepresentedinthecurrentcodepage(936).SavethefileinUnicodeformattopreventdataloss

③ 性能测试发现没有结果,需要用管理员身份运行。

Nokernelswereprofiled.NoAPIactivitieswereprofiled.

nvccAndNvprof2.5 默认示例

安装的示例是用 vs 写的,所以直接用 vs 来运行。

2.5.1 运行

C:\ProgramData\NVIDIACorporation\CUDASamples\v10.1\1_Utilities\bandwidthTest\bandwidthTest_vs2019.sln

bandWidthTest2.5.2 遇到的问题

① IntelliSense 可能不可用。

配置“Debug|x64”的 Designtime 生成失败。IntelliSense 可能不可用。检查%TEMP%目录中的*.designtime.log 文件。

解决方法:Visual Studio警告IDE0006的解决办法[18] 和 Visual Studio 2017: IDE0006 Compiler Error encountered while loading the project[19]。设置环境变量 TRACEDESIGNTIME=true 并重启 Visual Studio 以进行调查。

② 找不到导入的项目。

errorMSB4019:找不到导入的项目“${url}”。请确认 Import 声明“${url}”中的表达式正确,且文件位于磁盘上。

③ 使用 vs 新建项目时发现没有 CUDA 模板。

解决方法:VS2017 CUDA9.2 新建项目里没有CUDA选项[21]

C:\ProgramData\NVIDIA GPU Computing Toolkit\v10.1\extras\visual_studio_integration

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\Extensions\NVIDIA

Developer Command Prompt for VS 2019,VS2019 的开发人员命令提示符

cudaVSTemplate

运行使用 vs 提供的 CUDA 模板新建的代码:

cudaTemplateTest3 PyTorch 相关

框架相关内容,需要对 Python 有一定了解。简单记录安装经验,其他就不深入写了。

3.1 基础概念

Anaconda[22] 是一个包含常用数据科学包的 Python 发行版本,提供了图形界面(Anaconda Navigator)和命令行(Anaconda Prompt)。

Conda 是一个包和环境的管理工具。安装了 Anaconda 就有了。

3.2 安装使用

先安装 Anaconda[23](历史下载[24]),再安装 PyTorch[25]。我为了平时方便用,就用 canda 在 base 基础环境直接安装了,如果是开发等建议新建环境使用。

推荐文章:PyTorch环境配置及安装[26],Anaconda清华镜像源的使用及安装Pytorch失败问题解决[27]

下载加速:将 conda 下载源换为 清华源[28],安装链接去掉 -c pytorch 即可。

pytorchInstall最后

开始深度学习吧。

参考资料[1]

CUDA-enabled GPU: https://developer.nvidia.com/cuda-gpus

[2]

CUDA编程入门极简教程: https://zhuanlan.zhihu.com/p/34587739

[3]

CUDA学习第1课:用CUDA做数的平方: https://www.bilibili.com/video/BV1s7411E7oE?from=search&seid=15319356103006123664

[4]

深度学习框架究竟是什么?: https://blog.csdn.net/yeler082/article/details/78755095

[5]

vs2019: https://visualstudio.microsoft.com/zh-hans/downloads/

[6]

Visual Studio2019安装步骤: https://www.cnblogs.com/hsjj/p/VisualStudio.html

[7]

显卡驱动: https://www.nvidia.cn/Download/index.aspx?lang=cn

[8]

官方各版本下载页面: https://developer.nvidia.com/cuda-toolkit-archive

[9]

Tensorflow: https://tensorflow.google.cn/install/gpu

[10]

PyTorch: https://pytorch.org/get-started/locally/

[11]

CUDA Toolkit 10.1 update2 Archive Window10 x86_64 exe 下载链接: http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_426.00_win10.exe

[12]

Win10安装CUDA10和cuDNN: https://blog.csdn.net/qq_37296487/article/details/83028394

[13]

官方各版本下载页面: https://developer.nvidia.com/rdp/cudnn-archive

[14]

Ubuntu 环境: https://dl.ypw.io/ubuntu-environment/#cudnn

[15]

cudnn-10.1-windows10-x64-v8.0 下载链接: https://developer.download.nvidia.cn/compute/redist/cudnn/v8.0.2/cudnn-10.1-windows10-x64-v8.0.2.39.zip

[16]

理解CUDA: https://blog.csdn.net/buptjz/article/details/11787663

[17]

CUDA编程入门: https://www.cnblogs.com/sdu20112013/p/12629478.html

[18]

Visual Studio警告IDE0006的解决办法: https://www.jianshu.com/p/70c99946edbc

[19]

Visual Studio 2017: IDE0006 Compiler Error encountered while loading the project: https://ourcodeworld.com/articles/read/414/visual-studio-2017-ide0006-compiler-error-encountered-while-loading-the-project

[20]

vs2019出现MSB4019 找不到导入的项目CUDA 10.0.props: https://blog.csdn.net/weixin_44868057/article/details/106524786

[21]

VS2017 CUDA9.2 新建项目里没有CUDA选项: https://blog.csdn.net/JiangNingmm/article/details/100849115

[22]

Anaconda: https://www.anaconda.com/

[23]

Anaconda: https://www.anaconda.com/products/individual

[24]

历史下载: https://repo.anaconda.com/archive/

[25]

PyTorch: https://pytorch.org/get-started/locally/

[26]

PyTorch环境配置及安装: https://www.cnblogs.com/zhouzhiyao/p/11784055.html

[27]

Anaconda清华镜像源的使用及安装Pytorch失败问题解决: https://blog.csdn.net/WannaSeaU/article/details/88427010

[28]

清华源: https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

发表评论

登录后才能评论