Windows 环境搭建 CUDA 和 cuDNN 详细教程

news/2024/10/4 6:56:36/

CUDA_0">CUDA

  1. CUDA(Compute Unified Device Architecture)是由NVIDIA公司推出的一个并行计算平台和编程模型,它允许开发者使用NVIDIA GPU进行通用计算(即GPGPU),从而加速各种计算密集型任务。CUDA提供了一套基于C/C++的编程语言扩展,使得开发者能够编写在GPU上运行的代码,利用GPU的并行处理能力来提升程序性能。

  2. CUDA的架构包括多个核心概念,如线程、线程块、网格以及内存模型。线程是CUDA中最小的执行单位,线程块是一组线程的集合,它们可以共享数据和同步操作。网格则是由多个线程块组成,用于执行大规模的并行计算任务。CUDA的内存模型包括全局内存、共享内存、常量内存和纹理内存,它们各自有不同的访问速度和用途。

  3. NVIDIA发布的CUDA Toolkit 12.0,这是多年来的第一个主要版本,它支持NVIDIA Hopper和Ada
    Lovelace架构的新功能,并提供了新的编程模型和性能优化。此外,CUDA Toolkit 12.2也已发布,引入了对NVIDIA Hopper(H100)GPU的支持,以及异构内存管理(HMM)等新特性。

  4. CUDA技术在科学计算、大数据分析、机器学习和图形处理等领域有广泛应用。例如,在深度学习领域,CUDA与TensorFlow、PyTorch等深度学习框架深度整合,提供了高效的计算加速。

CUDA_12">CUDA安装步骤

  1. 查看本机设备NVIDIA显卡对应的驱动版本和CUDA版本,PowerShell中输入命令 nvidia-smi;可以看到驱动Driver和CUDA的版本;或者利用NVIDIA控制面板按照系统信息->组件->NVCUDA64.DLL查看详细CUDA版本;
    在这里插入图片描述
    在这里插入图片描述

  2. 确定本机设备显卡的算力:https://developer.nvidia.com/cuda-gpus;可以看到本机设备显卡3060的计算算力为8.6;
    在这里插入图片描述
    在这里插入图片描述

  3. 安装CUDA Toolkit:https://developer.nvidia.com/cuda-toolkit-archive;选择本机设备显卡需要的CUDA Toolkit版本下载;
    在这里插入图片描述

  4. 按照下图的1-2-3-4-5的顺序点击,进行下载;
    在这里插入图片描述

  5. 点击下载好的的 exe 进行安装;
    在这里插入图片描述

  6. 默认路径即可,此时是临时数据;
    在这里插入图片描述
    在这里插入图片描述

  7. 进入安装界面,选择继续;
    在这里插入图片描述
    在这里插入图片描述

  8. 选择自定义安装,全选;

在这里插入图片描述
在这里插入图片描述

  1. 确定安装路径,进行安装;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 安装结束;
    在这里插入图片描述
  2. 验证是否安装成功,PowerShell输入命令:nvcc -V,返回如下即表示安装成功。
    在这里插入图片描述

cuDNN_48">cuDNN

cuDNNCUDA Deep Neural Network library)是NVIDIA推出的一个深度学习加速库,它为深度神经网络提供了高度优化的GPU加速原语。cuDNN特别针对深度学习中常见的操作进行了优化,如前向和后向卷积、池化层、归一化和激活层等,从而大幅提升了深度学习模型训练和推理的性能。
cuDNN的主要特点包括:

  1. Tensor Core加速:支持多种卷积操作的Tensor Core加速,包括2D卷积、3D卷积、分组卷积、深度可分离卷积等。
  2. 运行时融合:通过新的运算符、启发式算法和融合迅速编译内核,提高了内存和计算效率。
  3. 多精度支持:支持FP32、FP16、BF16和TF32浮点格式以及INT8和UINT8整数格式,允许开发者根据需要选择不同的精度和性能平衡。
  4. 灵活的API:提供了C API和开源的C++前端API,方便用户使用。
  5. 广泛的框架支持:与多个流行的深度学习框架集成,如TensorFlow、PyTorch、Caffe等。

cuDNN_60">cuDNN安装步骤

  1. 下载官网:https://developer.nvidia.com/cudnn-downloads
    在这里插入图片描述
  2. 按照 1-2-3-4-5 的步骤点击选择,进行下载;
    在这里插入图片描述
  3. 解压下载下来的压缩包,里面有includelibbin三个文件夹和LICENSE文件;

在这里插入图片描述

  1. 将下载文件解压后放换到NVIDIA GPU TookitC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.3)里对应的目录binincludelib中。
    (1)将下载下来的cudnn中bin文件拷贝到NVIDIA GPU Tookit的bin中。
    在这里插入图片描述
    在这里插入图片描述

(2)将下载下来的cudnn中include文件拷贝到NVIDIA GPU Tookit的include中。
在这里插入图片描述
在这里插入图片描述

(3)将下载下来的cudnn中lib\x64中文件拷贝到NVIDIA GPU Tookit目录x64\lib中。

在这里插入图片描述
在这里插入图片描述

  1. 验证安装是否成功:“C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.3\extras\demo_suite>”,然后分别运行里的 bandwidthTest.exedeviceQuery.exe,有PASS即代表成功。
    在这里插入图片描述
    在这里插入图片描述

http://www.ppmy.cn/news/1533776.html

相关文章

Linux·进程概念(下)

1. 进程优先级 优先级就是获得某种资源的先后顺序,因为CPU资源是有限的,因此各个进程之间要去争取CPU的资源。 那么针对Linux操作系统下的PCB中,也就是task_struct结构体中,使用了int类型的变量记录了每个进程的优先级属性&#x…

使用 lstm + crf 实现NER

条件随机场CRF 前言 CRF是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布的模型。特点:假设输出随机变量构成马尔卡夫随机场。CRF可以用于不同的预测问题。但是主要讨论线性链条件随机场,这时问题变成了由输入序列对输出序列的判别模型&…

[RabbitMQ] RabbitMQ介绍,安装与快速上手

🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏: 🧊 Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 🍕 Collection与…

高斯消元 笔记

高斯消元 高斯消元:解线性方程组 有 n n n 个未知数: x 1 , x 2 , . . . , x n x_1,x_2,...,x_n x1​,x2​,...,xn​ a 1 1 x 1 1 a 1 2 x 1 2 . . . a 1 n x 1 n b 1 a_{1_1}x_{1_1}a_{1_2}x_{1_2}...a_{1_n}x_{1_n}b_1 a11​​x11​​a12​​x1…

开源模型应用落地-qwen2.5-7b-instruct-LoRA微调-LLaMA-Factory-单机单卡-V100(十八)

一、前言 本篇文章将使用LLaMA-Factory去高效微调(命令和界面方式)QWen2.5系列模型,通过阅读本文,您将能够更好地掌握这些关键技术,理解其中的关键技术要点,并应用于自己的项目中。 QWen2系列模型微调: 开源模型应用落地-qwen2-7b-instruct-LoRA微调-LLaMA-Factory-单机单…

Spring Boot 进阶-如何自定义SpringBoot日志配置?

在之前的文章中我们介绍了Spring Boot中的日志框架,并且也介绍了SpringBoot日志框架中日志级别的调整。这篇文章我们主要来介绍关于如何让日志框架更加符合我们自己的需求。那么首先我们就来看一下日志文件输出路径的配置。 如何指定日志文件的输出位置 在Spring Boot中日志是…

leetcode刷题day29|贪心算法Part03( 134. 加油站、135. 分发糖果、860.柠檬水找零、406.根据身高重建队列)

134. 加油站 思路&#xff1a; 暴力解法&#xff1a;for循环适合模拟从头到尾的遍历&#xff0c;while循环适合模拟环形遍历&#xff01;但是会超出leetcode的时间限制。 class Solution {public int canCompleteCircuit(int[] gas, int[] cost) {for(int i0;i<gas.length…

CMU 10423 Generative AI:lec13/13.5(text-to-image models:三大类方法、评估标准、图像编辑原理)

1 文章目录 1 lec13和lec13.5概述2 Text-to-Image Generation 概念、主要方法、挑战、发展历程1. **基本概念**2. **主要技术方法**2.1. **生成对抗网络&#xff08;GAN&#xff09;**2.2. **自回归模型&#xff08;Autoregressive Models&#xff09;**2.3. **扩散模型&#x…