当前位置: 首页 > news >正文

用人话讲解深度学习中CUDA,cudatookit,cudnn和pytorch的关系

参考链接

本人学习使用,侵权删谢谢。

用人话讲解深度学习中CUDA,cudatookit,cudnn和pytorch的关系

CUDA

CUDA是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,是一种并行计算平台和编程模型,该架构使GPU能够解决复杂的计算问题。CUDA英文全称是Compute Unified Device Architecture。

我们可以通过nvidia-smi命令查看cuda版本号
在这里插入图片描述
如上图所示,这里显示的是当前显卡可支持的最高CUDA版本。

CUDA Toolkit

CUDA Toolkit可以理解成一个工具包,主要包含了CUDA-C和CUDA-C++编译器、一些科学库和实用程序库、CUDA和library API的代码示例、和一些CUDA开发工具。

cudatookit版本有时会被简称为cuda版本,这也是我们经常搞混的一个原因。

cuDNN

cuDNN的全称为NVIDIA CUDA® Deep Neural Network library,是NVIDIA专门针对深度神经网络中的基础操作而设计基于GPU的加速库。cuDNN为深度神经网络中的标准流程提供了高度优化的实现方式。

简单来说,cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算

Pytorch

pytorch是基于CUDA的深度学习框架,因此,pytorch的版本必须依赖于cuda toolkit的版本。

小总结

CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。

总结一下,食物链顶端的是CUDA这个工作台,也就是我们电脑的硬件配置,我们要先查看它的版本,然后根据这个来看我们都能下载多高的cudatookit版本,然后根据cudatookit版本来选择cudnn版本和可支持的pytorch版本

因此配置环境的流程为:
查看CUDA版本 ——> 选择cudatookit版本 ——> 选择cudnn版本 + pytorch版本

相关文章:

  • 叙永微公益:开展“活水计划-益童成长守护”周末陪伴活动
  • [EFI]Lenovo ThinkPad X280电脑 Hackintosh 黑苹果引导文件
  • 设计基于STM32F103C8T6微控制器的巡线小车
  • Angular 由一个bug说起之二:trackBy的一点注意事项
  • excel导入 Easy Excel
  • idea一键打包docker镜像并推送远程harbor仓库的方法(包含spotify和fabric8两种方法)--全网唯一正确,秒杀99%水文
  • 前台页面从数据库中获取下拉框值
  • (SpringBoot)第七章:SpringBoot日志文件
  • 15分钟,不,用模板做数据可视化只需5分钟
  • Django模板层
  • GAT里面的sofamax函数的实现:
  • 2023.11.17 -hivesql调优,数据压缩,数据存储
  • 【图像分类】【深度学习】【Pytorch版本】ResNet模型算法详解
  • asp.net core mvc之 RAZOR共享指令和标签助手 TagHelpers
  • vivado产生报告阅读分析6-时序报告2
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • 【Linux系统编程】快速查找errno错误码信息
  • avalon2.2的VM生成过程
  • css系列之关于字体的事
  • React 快速上手 - 07 前端路由 react-router
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • 动态规划入门(以爬楼梯为例)
  • 分布式事物理论与实践
  • 好的网址,关于.net 4.0 ,vs 2010
  • 基于HAProxy的高性能缓存服务器nuster
  • 记一次用 NodeJs 实现模拟登录的思路
  • 前端之Sass/Scss实战笔记
  • 前言-如何学习区块链
  • 入口文件开始,分析Vue源码实现
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 微信支付JSAPI,实测!终极方案
  • 学习HTTP相关知识笔记
  • 扩展资源服务器解决oauth2 性能瓶颈
  • # 数据结构
  • #define、const、typedef的差别
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (4.10~4.16)
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (ros//EnvironmentVariables)ros环境变量
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (三)elasticsearch 源码之启动流程分析
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (译)2019年前端性能优化清单 — 下篇
  • (转)EOS中账户、钱包和密钥的关系
  • (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】...
  • (轉)JSON.stringify 语法实例讲解
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .net 后台导出excel ,word
  • .NET简谈设计模式之(单件模式)
  • .NET设计模式(8):适配器模式(Adapter Pattern)
  • /etc/sudoer文件配置简析