【CUDA】cuda安装 (windows版)

2023-11-14

本次安装参考了网上许多教程,结合自己的需求与理解,写下此篇博客,仅做本人总结使用。。

一、前言

windows10 版本安装 CUDA ,首先需要下载两个安装包

  • CUDA toolkit(toolkit就是指工具包)
  • cuDNN

注:cuDNN 是用于配置深度学习使用

官方教程

CUDA:https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html

cuDNN:https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html#installwindows

二、安装工具的准备

1. CUDA toolkit Download

https://developer.nvidia.com/cuda-toolkit-archive

官网安装:

https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64

在这里插入图片描述

在这里插入图片描述

GA = General Availability,通用版本,指软件的通用版本。
RC=Release Candidate,含义 是"发布候选版",它不是最终的版本,而是最终版(RTM=Release To Manufacture)之前的最后一个版本
在这里插入图片描述
官网说明文档,
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

在这里插入图片描述

CUDA的版本是跟显卡型号有关还是驱动有关?

一般是驱动版本决定了能用的CUDA版本的上限,比如新版的显卡驱动可以支持老的CUDA runtime。但是老的显卡可能无法更新到最新的显卡驱动,比如Fermi显卡只能装到391驱动,因此只能用到CUDA9.1。除此之外,显卡硬件与CUDA compute capability相关,当然编译时也可以指定streaming multiprocessor。新的架构支持更多特性就是了。

最终本人下载的

在这里插入图片描述

2. cuDNN Download

cuDNN地址如下,不过要注意的是,我们需要注册一个账号,才可以进入到下载界面。大家可以放心注册的。

https://developer.nvidia.com/rdp/cudnn-download

在这里插入图片描述

注册成功后的下载界面

在这里插入图片描述

可以使用下面网址,查看适配的 cuDNN

https://developer.nvidia.com/rdp/cudnn-archive

在这里插入图片描述

在这里插入图片描述

本人下载的版本如下:

在这里插入图片描述

三、 CUDA 安装与配置过程

  1. 双击“exe文件”,选择下载路径(推荐默认路径)

在这里插入图片描述

  1. 安装选项

如果你是第一次安装,尽量全选
如果你是第n次安装,尽量只选择第一个,不然会出现错误

在这里插入图片描述

不要选Visual Studio Integration,即使选了也不能成功安装

在这里插入图片描述
如果本机的驱动版本(当前版本)小于cuda对应的版本(新版本),则选择,否则不选。如果当前版本小于新版本,并且不覆盖安装,之后电脑会频繁蓝屏或死机

  1. 记住安装位置,tensorflow要求配置环境

在这里插入图片描述

重点提醒:一定要记住这个路径,把这个路径保留下来,后面我们还会用到!!!

  1. 安装进行
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述

  1. 安装完成

在这里插入图片描述

查看系统变量中是否添加了路径,如果没有需要自己添加

在这里插入图片描述

测试环境是否安装成功

运行cmd,输入nvcc --version 即可查看版本号;
set cuda,可以查看 CUDA 设置的环境变量。

nvcc --version
set cuda

在这里插入图片描述

在这里插入图片描述

四、cuDNN配置

1.解压

cuDNN叫配置更为准确,我们先把下载的 cuDNN 解压缩,会得到下面的文件:

  1. cuDNN 解压缩后的文件
    在这里插入图片描述

下载后发现其实cudnn不是一个exe文件,而是一个压缩包,解压后,有三个文件夹,把三个文件夹拷贝到cuda的安装目录下

CUDA 的安装路径在前面截图中有,或者打开电脑的环境变量查看,默认的安装路径如下:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1

后面那个v11.1是你自己的版本号

  1. CUDA 安装目录文件:
    在这里插入图片描述
    拷贝时看到,CUDA 的安装目录中,有和 cuDNN 解压缩后的同名文件夹,这里注意,不需要担心,直接复制即可。cuDNN 解压缩后的同名文件夹中的配置文件会添加到 CUDA安装目录中的同名文件夹中。

  2. 拷贝成功后的文件
    在这里插入图片描述

现在大家应该可以理解,cuDNN 其实就是 CUDA 的一个补丁而已,专为深度学习运算进行优化的。然后再参加环境变量

2.添加至系统变量

  1. 往系统环境变量中的 path 添加如下路径(根据自己的路径进行修改)
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\bin

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\include

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\lib

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\libnvvp
  1. 验证安装是否成功

配置完成后,我们可以验证是否配置成功,主要使用CUDA内置的deviceQuery.exe 和 bandwidthTest.exe:
首先win+R启动cmd,cd到安装目录下的 …\extras\demo_suite,然后分别执行bandwidthTest.exe和deviceQuery.exe,应该得到下图:

在这里插入图片描述

在这里插入图片描述

参考博客:

https://blog.csdn.net/mao_hui_fei/article/details/104246466

https://www.pianshen.com/article/8647746165/

https://blog.csdn.net/weixin_45494025/article/details/100746025

https://blog.csdn.net/u011473714/article/details/95042856

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【CUDA】cuda安装 (windows版) 的相关文章

  • 将 Pytorch 模型 .pth 转换为 onnx 模型

    我有一个预训练的模型 其格式为 pth 扩展名 我想将其转换为 Tensorflow protobuf 但我没有找到任何方法来做到这一点 我见过 onnx 可以将模型从 pytorch 转换为 onnx 然后从 onnx 转换为 Tenso
  • NtDll 真的导出 C 运行时函数吗?我可以在我的应用程序中使用这些函数吗?

    我在查看 Windows 10 计算机上的 NtDll 导出表 发现它导出标准 C 运行时函数 例如memcpy sprintf strlen etc 这是否意味着我可以在运行时动态调用它们LoadLibrary and GetProcAd
  • CUDA 中的 JPEG 库

    我正在尝试在 CUDA 中压缩和解压缩图像 到目前为止我已经找到了这个库 http sourceforge net projects cuj2k source navbar http sourceforge net projects cuj
  • 使用 IDLE 编辑的 .py 文件消失了

    我曾经有过Edit with IDLE当我右键单击时的选项 py文件 但我多次卸载 重新安装以使某些东西正常工作 但现在它消失了 我检查了注册表HKEY CLASSES ROOT and HKEY LOCAL MACHINE对于价值低于Py
  • 批处理文件 FOR /f 标记

    任何人都可以逐行准确解释以下代码是如何工作的 我真的迷路了 我一直在尝试学习如何使用 FOR 命令 但我不明白这一点 echo off for f tokens delims f in myfile do set line f call p
  • .wav 文件长度/持续时间,无需读入文件

    有没有办法提取有关 wav 文件长度 持续时间的信息 而无需在 R 中读取文件 我有数千个这样的文件 如果我必须阅读每个文件才能找到其持续时间 那将需要很长时间 Windows 文件资源管理器为您提供了打开 长度 字段的选项 并且您可以查看
  • 如何从任何进程关闭 Windows 上的套接字(ipv4 和 ipv6)连接?

    如何在 Windows 上关闭 tcp v4 和 tcp v6 连接 我不想终止具有开放连接的整个进程 因为这显然会将其他人踢出该进程 我需要从一个单独的进程执行此操作 因此无法访问套接字句柄等 我正在使用 Windows API 来获取
  • python+win32:检测窗口拖动

    有没有办法检测何时使用 python pywin32 在窗口中拖动不属于我的应用程序的窗口 我想对其进行设置 以便当我拖动标题与桌面边缘附近的图案匹配的窗口时 当松开鼠标时它会捕捉到边缘 我可以编写代码 以便在释放鼠标时将所有具有该标题的窗
  • Keras:binary_crossentropy 和 categorical_crossentropy 混淆

    使用 TensorFlow 一段时间后 我阅读了一些 Keras 教程并实现了一些示例 我找到了几个使用卷积自动编码器的教程keras losses binary crossentropy作为损失函数 我想binary crossentro
  • 将 cuda 数组传递给 Thrust::inclusive_scan

    我可以对 cpu 上的数组使用包容性扫描 但是否可以对 gpu 上的数组执行此操作 注释是我知道有效但我不需要的方式 或者 是否有其他简单的方法可以对设备内存中的数组执行包含扫描 Code include
  • 以编程方式从 java 代码中查找 java.exe 的绝对路径

    如果我有一个由用户启动的 java jar 或类文件 假设在环境变量中设置了 java 路径 那么我如何从代码中找出 java exe javaw exe 的绝对路径文件正在启动 就像在 ubuntu 上一样 我们可以运行 which ja
  • Kerberos 双跳

    我们遇到了臭名昭著的 Kerberos 双跳问题 这是一个全新的域 是从以前使用模拟和委派的另一个提供商迁移而来的 我们已将操作系统升级到最新的 SQL 服务器 2017 WPF 应用程序 使用域凭据 gt Web 服务 IIS 10 上的
  • 在 Cygwin 软件包列表中找不到 Openssl

    这里说的是https github com joyent node wiki Building node js on Cygwin Windows https github com joyent node wiki Building nod
  • 如何使用来自 Microsoft-Windows-NDIS-PacketCapture 提供程序的实时 ETW 事件?

    更大的问题是一般如何使用实时 ETW 网络堆栈事件 但我特别感兴趣Microsoft Windows NDIS PacketCapture 提供程序 所有其他网络堆栈提供程序都部分工作 但 NDIS PacketCapture NDIS P
  • 交换keras中的张量轴

    我想将图像批次的张量轴从 batch size row col ch 交换为 批次大小 通道 行 列 在 numpy 中 这可以通过以下方式完成 X batch np moveaxis X batch 3 1 我该如何在 Keras 中做到
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 如何在批处理文件中回显换行符?

    如何从批处理文件输出中插入换行符 我想做类似的事情 echo hello nworld 这会输出 hello world Use echo hello echo echo world
  • 为什么我只能用管理员权限才能导入Python中的某些模块?

    我正在努力解决 Python 2 7 中的一些奇怪问题 我写了一个很长的工具 在其中导入不同的模块 我必须首先使用它安装pip 该工具将在公司内部共享 不同的用户在其特定机器上拥有不同的权限 当另一个用户登录我的计算机 我在那里拥有管理员权
  • 如何在 Tensorflow Keras 中规范化我的图像数据

    如前所述 我正在尝试在训练模型之前标准化我的数据集 我正在使用tf keras preprocessing image ImageDataGenerator之前执行此操作 train data tf cast train data tf f
  • 在哪里可以获得 PHP 5.3+ 的 runkit DLL 扩展?

    这是一个简单的问题 我在哪里可以获得 PHP 5 3 版本的 runkit 扩展 它的手册 http php net manual en book runkit php http php net manual en book runkit

随机推荐

  • 异步线程进行事务的管理,异步线程事务失效解决方案

    场景 工作中使用到异步线程 在发生异常时对操作的数据进行回滚 使用 Transactional propagation Propagation REQUIRES NEW 失效 解决方式 进行手动提交事务 代码 TODO 获取当前线程请求头信
  • 百度Apollo视频学习笔记

    APOLLO视频学习笔记 一 总览 无人驾驶车的运作方式 五个核心部件 计算机视觉 弄清楚周围的世界是怎样的 传感器融合 合并来自其他传感器的数据 如激光和雷达 更加深入了了解我们周围的环境 定位 精确地确定我在世界所处的位置 路径规划 绘
  • vlc web 插件 js接口

    Embed tag attributes To embed the plugin into a webpage use the following template Required ele
  • 【IEEE】2022年第六届计算机科学与智能控制国际会议(ISCSIC 2022)

    2022年第六届计算机科学与智能控制国际会议 ISCSIC 2022 重要信息 会议网址 www iscsic org 会议时间 2022年11月11 13日 召开地点 中国北京 截稿时间 2022年10月11日 录用通知 投稿后2周内 出
  • 34-变量类型

    接33节 这节举了variable的数据类型 有个例子是bool类型和其他类型相加 比如bool 浮点 由于bool类型有0和1两个值的选择 所以相加时当做0或者1 这里默认值为1 即true 再加上个浮点类型 注意的是 浮点类型的默认值启
  • UnknownHostException: api.weixin.qq.com解决方法

    在使用微信服务过程中 调用api weixin qq com 总会碰到如下这种问题 java net UnknownHostException api weixin qq com 未知的名称或服务 关键是这种问题偶尔出现 我们在测试环境甚至
  • jee中的过滤器

    对于web app的开发者来说 过滤器 是最常见不过了 在web xml中经常可以看到这样的几行
  • 【转】sed 简明教程

    awk于1977年出生 今年36岁本命年 sed比awk大2 3岁 awk就像林妹妹 sed就是宝玉哥哥了 所以 林妹妹跳了个Topless 他的哥哥sed坐不住了 也一定要出来抖一抖 sed全名叫stream editor 流编辑器 用程
  • 老生常谈-FFmpeg 的编译问题轻松搞定

    前几天发了一篇 FFmpeg 调用 Android MediaCodec 进行硬解码 关于 FFmpeg 的编译 是个老生常谈的话题了 很多初学者都会卡在怎么编译动态库 so 的问题上 这其实也是 Android 开发转音视频的一大拦路虎
  • element-ui中el-tab的的使用

    element ui中el tab的的使用 el tab在页面中当作tab页使用如下 name就是与选项卡绑定值 value 对应的标识符 表示选项卡别名 用v model绑定值 选中选项卡的 name label 设置选项卡的标题 可以动
  • Mysql的mysql_store_result/mysql_use_result,mysql_field_count/mysql_num_fields/mysql_num_rows函数区别

    Mysql的mysql store result mysql use result mysql field count mysql num fields mysql num rows函数区别 1 先参考以下文章 或者先看下面再回来理解 my
  • list.clear()与=null以及new ArrayList<E>()的差异(Map类似)

    1 使用clear 方法 List
  • linux下载命令wget命令详解

    wget是linux最常用的下载命令 一般的使用方法是 wget 空格 要下载文件的url路径 例如 wget http www linuxsense org xxxx xxx tar gz 简单说一下 c参数 这个也非常常见 可以断点续传
  • Angular自定义表单验证

    前端表单验证 为年龄输入框添加了两个验证 并分情况填写了提示语
  • Android开发 之 指纹识别

    指纹识别 在android6 0的时候谷歌对指纹识别开始支持了 现在市面的基本上指纹识别都是在api23以上的版本 涉及到一个系统服务 FingerPrintManager 在使用FingerPrintManager这个类实现的时候发现了很
  • np.meshgrid()函数

    文章目录 1 自己理解 2 官方解释 3 参数 3 1 x1 x2 xn array like 3 2 sparse bool optional 默认false 3 3 copy bool optional 1 自己理解 np meshgr
  • 用GCC开发STM32,正点原子开发板的一个库函数版本例程示例

    GCC环境搭建 首先下载交叉编译环境GCC 这个网上有很多 百度一下就能找到下载 比如 Sourcery G for ARM EABI 我的CSDN资源里 有相关下载 熟悉下Makefile 强力推荐熟悉网络牛人李云的51cto博客 有一篇
  • java 数组的长度_Java初学者:数组,得到数组长度

    得到数组的长度在java里是很简单的 那就是 数组名 length 我们来看一个简单的程序就可以了 如下 这个就是上次的那个程序 我只是把for后面那个4改成了a length 也许有人要问了 那为什么非要求出数组的长度呢 数组在起始的时候
  • Redraiment的遭遇

    描述 Redraiment的老家住在工业区 日耗电量非常大 是政府的眼中钉肉中刺 但又没办法 这里头住的可都是纳税大户呀 今年7月 又传来了不幸的消息 政府要在7 8月对该区进行拉闸限电 但迫于压力 限电制度规则不会太抠门 政府决定从7月1
  • 【CUDA】cuda安装 (windows版)

    CUDA cuda安装 windows10版 一 前言 官方教程 二 安装工具的准备 1 CUDA toolkit Download 2 cuDNN Download 三 CUDA 安装与配置过程 测试环境是否安装成功 四 cuDNN配置