当前位置:   article > 正文

什么是CUDA和CUDNN?——GeForce NVIDIA显卡用于深度学习计算的GPU加速工具_cuda和cudnn是什么

cuda和cudnn是什么

1、什么是CUDA?

CUDA的概念

  • 统一计算架构CUDA(Compute Unified Device Architecture)是为了让nvidia gpu可以完成通用计算任务的一种集成技术 ,通常可以使用的cuda框架有c,c++,fortran,python,java的,可以为数据大吞吐量的工作提供很好的加速功能。
  • CUDA包括驱动,sdk,toolkit等。主要是用来进行计算加速,作为协处理器来进行使用同时cuda有很多的库 ,如cublas,cufft等计算库,在用于科学计算和人工智能领域 都有很好的加速效果。
  • nvidia推出的cuda,也只有nvidia GPU有最优的效能,nvidia整个软硬件生态做的最好,现在几乎所有深度学习框架都首选cuda作为底层加速库 ,所以没得选只能用CUDA了。
  • 有了cuda,可以让pytorch等框架直接在gpu上运行,速度更快

RTX光追系统和CUDA的关系?

  • 之前买显卡的时候被安利,GTX1060没有光追系统,只有RTX2060及以上的系列才有,虽然不打游戏,然后光追跑深度学习也要用balabla的。
  • 然而实际上,并没有直接关系。英伟达2018发布会上发布的新一代GPU架构——图灵(Turing),以及基于该架构设计的GPU——Quadro RTX系列 ,支持了两项全新的技术。分别是光线追踪(DXR)和深度学习超级采样(DLSS)。
  • 光追(DXR)全程光线追踪 ,简单来讲就是一项渲染技术,它能够追踪画面里每一条光线的位置并进行计算,来渲染出更加趋近于真实的光影效果。
  • Tensor Core是专为深度学习而设计的处理器 ,可用于AI计算,支持每秒500万亿次张量运算。这些新功能包括DLAA(深度学习抗锯齿),DLSS(超级采样抗锯齿)以及去噪、分辨率缩放和视频调速。

CUDA和CUDNN的关系?

  • CUDA是在驱动之上提供给软件开发人员的一个编程库,现在多应用在并行计算等科学和工程研究领域。
  • 还有一个叫做cudnn,是针对深度卷积神经网络的加速库。

2、如何使用CUDA

1、CUDA官网下载:
https://developer.nvidia.com/cuda-downloads
在这里插入图片描述环境变量中可以酌情考虑添加
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64

2、CUDA版本查看
打开控制面板,或者Win+S进行搜索,进入NVIDIA控制面板
系统信息中可以看到CUDA的版本。
在这里插入图片描述

3、判断自己是否成功安装:
cmd中输入

nvcc -V
  • 1

在这里插入图片描述

3、如何使用CUDNN

1、CUDNN官网下载
https://developer.nvidia.com/rdp/cudnn-archive
在这里插入图片描述

2、下载完后安装

把 C:\Users<username>\Downloads\cuda\bin\cudnn64_7.dll 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
把 C:\Users<username>\Downloads\cuda\include\cudnn.h 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\include
把 C:\Users<username>\Downloads\cuda\lib\x64\cudnn.lib 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\lib\x64

在这里插入图片描述
3、判断自己是否安装成功

import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL']='2'
print(tf.__version__)
a = tf.constant(1.)
b = tf.constant(2.)
print(a+b)
print('GPU:', tf.test.is_gpu_available())
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

提示各种dll库找不到
Could not load dynamic library ‘cudart64_110.dll’;
Could not load dynamic library ‘cublas64_11.dll’;
Could not load dynamic library ‘cublasLt64_11.dll’;
Could not load dynamic library ‘cufft64_10.dll’;
Could not load dynamic library ‘curand64_10.dll’;
Could not load dynamic library ‘cusolver64_11.dll’;
Could not load dynamic library ‘cusparse64_11.dll’;
Could not load dynamic library ‘cudnn64_8.dll’;
在这里插入图片描述

在这里插入图片描述

附一张用开GPU优化跑的小数据MNIST的优化效果,快了将近两倍
在这里插入图片描述
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/151212?site
推荐阅读
相关标签
  

闽ICP备14008679号