VS2022 CUDA环境配置的实现步骤

 更新时间:2023年05月26日 10:45:42   作者:微小冷  
本文主要介绍了VS2022 CUDA环境配置的实现步骤,文中通过图文示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

安装准备

配置Cuda环境主要分为以下几个步骤

  • 安装VS 这个应该不用太说,直接装最新版
  • 安装CUDA 下载地址:Cuda Toolkit
  • 安装cuDNN 下载地址:cuDNN archieve

这个安装顺序非常重要,一定是先装VS后装CUDA Toolkit,否则CUDA不可能未卜先知地在VS目录中创建项目模板。

为了确认Cuda的安装版本,可在命令行中输入nvidia-smi,其返回值如下,表头中的CUDA Version便是Cuda版本,我这里是12.1,所以选择CUDA Toolkit 12.1.0cuDNN选择最新的v8.8.1 for CUDA 12.x

>nvidia-smi
Tue Apr 25 11:52:50 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 531.14                 Driver Version: 531.14       CUDA Version: 12.1     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                      TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf            Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce RTX 4060 L...  WDDM | 00000000:01:00.0  On |                  N/A |
| N/A   36C    P8                3W /  N/A|    250MiB /  8188MiB |      1%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+
+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A     10556    C+G   ...auncher\PowerToys.PowerLauncher.exe    N/A      |
|    0   N/A  N/A     10980    C+G   ...rPicker\PowerToys.ColorPickerUI.exe    N/A      |
+---------------------------------------------------------------------------------------+

Cuda toolkit安装的第一步是解压,可以选择一个临时地址,直到NVIDIA安装程序的界面弹出后,才开始真正安装。在安装过程中,选择自定义可以自行选择安装路径,剩下没什么好说的,安装成功之后,在命令行中输入nvcc -V可返回版本呢信息。

>nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Wed_Feb__8_05:53:42_Coordinated_Universal_Time_2023
Cuda compilation tools, release 12.1, V12.1.66
Build cuda_12.1.r12.1/compiler.32415258_0

cuDNN在安装时需要注册,下载完成后将压缩包中的三个文件夹解压到Cuda安装目录中,然后就能用了。

新建项目

安装成功之后,打开VS2022,就可以看到CUDA12.1的项目模板,点进去之后就能创建CUDA程序了

CUDA,或者说GPU的编程逻辑是,先将内存中的数组写入到显存中,然后再执行操作。

其自带的模板程序非常简单,就是对两个数组进行并行求和,用到的是一个自定义函数

__global__ void addKernel(int *c, const int *a, const int *b)
{
    int i = threadIdx.x;
    c[i] = a[i] + b[i];
}

但在具体调用时,用到了<<<>>>这个语法,表示GPU调用的线程块,示例程序在调用自定义函数addKernel时,用到了下面的代码,表示调用1个线程块,每个线程块中有5个线程。

//size=5
addKernel<<<1, size>>>(dev_c, dev_a, dev_b);

到此这篇关于VS2022 CUDA环境配置的实现步骤的文章就介绍到这了,更多相关VS2022 CUDA环境配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Visual C++ 6.0新建一个C语言文件的图文教程

    Visual C++ 6.0新建一个C语言文件的图文教程

    本教程适用于C语言初学者,本文主要介绍了Visual C++ 6.0新建一个C语言文件的图文教程,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • C语言规律循环累加求和案例

    C语言规律循环累加求和案例

    这篇文章主要介绍了C语言规律循环累加求和案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 仿现代C++智能指针实现引用计数

    仿现代C++智能指针实现引用计数

    这篇文章主要为大家详细介绍了如何仿现代C++智能指针实现引用计数,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下
    2024-03-03
  • 浅析设计模式中的代理模式在C++编程中的运用

    浅析设计模式中的代理模式在C++编程中的运用

    这篇文章主要介绍了设计模式中的代理模式在C++编程中的运用,代理模式最大的好处就是实现了逻辑和实现的彻底解耦,需要的朋友可以参考下
    2016-03-03
  • Dev C++中文乱码的有效解决方案

    Dev C++中文乱码的有效解决方案

    在DevC++中出现汉字乱码的问题通常是由于编码设置不正确导致的,本文通过图文结合的方式给大家介绍了解决方法,对大家的解决问题有一定的帮助,需要的朋友可以参考下
    2025-04-04
  • C语言深入探索动态内存分配的使用

    C语言深入探索动态内存分配的使用

    给数组分配多大的空间?你是否和初学C时的我一样,有过这样的疑问。这一期就来聊一聊动态内存的分配,读完这篇文章,你可能对内存的分配有一个更好的理解
    2022-04-04
  • Opencv下载和导入Visual studio2022的实现步骤

    Opencv下载和导入Visual studio2022的实现步骤

    本文主要介绍了Opencv下载和导入Visual studio2022的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • C语言实现三子棋小游戏(vs2013多文件)

    C语言实现三子棋小游戏(vs2013多文件)

    这篇文章主要为大家详细介绍了C语言实现三子棋小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • 一篇文章彻底搞懂C++常见容器

    一篇文章彻底搞懂C++常见容器

    容器就是一些特定类型对象的集合,容器可以分为顺序容器和关联容器,下面这篇文章主要给大家介绍了关于C++常见容器的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • 基于matlab对比度和结构提取的多模态解剖图像融合实现

    基于matlab对比度和结构提取的多模态解剖图像融合实现

    这篇文章主要介绍了多模态医学图像配准与融合的概念、方法及意义,最后简单介绍了小波变换分析方法。感兴趣的小伙伴可以跟随小编一起学习一下
    2021-11-11

最新评论