Visual Studio 2022中配置cuda环境

一、前置条件(必须先完成)

在配置VS2022前,你需要先安装好以下软件,否则配置会失败:

  1. NVIDIA显卡驱动 :确保你的电脑有NVIDIA独立显卡,且安装了最新/兼容的显卡驱动(可通过NVIDIA控制面板或官网下载)。
  2. CUDA Toolkit :下载并安装与VS2022兼容的CUDA Toolkit(推荐11.7及以上版本,VS2022对低版本CUDA支持不佳),下载地址:NVIDIA CUDA Toolkit官网
    • 安装时保持默认路径即可(默认路径:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.X,X.X是版本号,比如12.2)。
  3. VS2022组件:确保安装了"桌面开发用C++"工作负载(创建项目时若提示缺失,可在VS Installer中补充安装)。

二、VS2022项目配置步骤

步骤1:创建空项目
  1. 打开VS2022,点击"创建新项目",选择"空项目"(C++模板),命名(比如CUDA_Driver_Test),选择保存路径,点击"创建"。
  2. 右键项目 -> 添加 -> 新建项,选择"C++文件(.cpp)",命名为main.cpp,将你提供的代码粘贴进去。
步骤2:核心属性配置(关键)

右键项目 -> 属性(注意:顶部"配置"选"Debug","平台"选"x64",CUDA驱动API仅支持64位),按以下路径配置:

1. 配置包含目录(让VS找到cuda.h)
  • 路径:配置属性 -> C/C++ -> 常规 -> 附加包含目录

  • 点击右侧下拉箭头 -> 编辑,添加CUDA Toolkit的include路径:

    复制代码
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.X\include

    (替换vX.X为你的CUDA版本,比如v12.2

2. 配置库目录(让VS找到cuda.lib)
  • 路径:配置属性 -> 链接器 -> 常规 -> 附加库目录

  • 点击编辑,添加CUDA Toolkit的lib路径:

    复制代码
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.X\lib\x64
3. 配置链接依赖(链接cuda.lib)
  • 路径:配置属性 -> 链接器 -> 输入 -> 附加依赖项

  • 点击编辑,添加:

    复制代码
    cuda.lib
4. (可选)配置运行时环境(防止找不到dll)
  • 路径:配置属性 -> 调试 -> 环境

  • 输入:

    复制代码
    PATH=%PATH%;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.X\bin\x64

    (作用:运行时让程序找到cuda64_X.X.dll

步骤3:编译运行
c 复制代码
// CUDA驱动头文件cuda.h
#include <cuda.h>

#include <stdio.h>
#include <string.h>

// 很明显,这种代码封装方式,更加的便于使用
//宏定义 #define <宏名>(<参数表>) <宏体>
#define checkDriver(op)  __check_cuda_driver((op), #op, __FILE__, __LINE__)

bool __check_cuda_driver(CUresult code, const char* op, const char* file, int line){

    if(code != CUresult::CUDA_SUCCESS){    
        const char* err_name = nullptr;    
        const char* err_message = nullptr;  
        cuGetErrorName(code, &err_name);    
        cuGetErrorString(code, &err_message);   
        printf("%s:%d  %s failed. \n  code = %s, message = %s\n", file, line, op, err_name, err_message);   
        return false;
    }
    return true;
}

int main(){

    // 检查cuda driver的初始化
    // 实际调用的是__check_cuda_driver这个函数
    checkDriver(cuInit(0));

    // 测试获取当前cuda驱动的版本
    int driver_version = 0;
    if(!checkDriver(cuDriverGetVersion(&driver_version))){
        return -1;
    }
    printf("Driver version is %d\n", driver_version);

    // 测试获取当前设备信息
    char device_name[100];
    CUdevice device = 0;
    checkDriver(cuDeviceGetName(device_name, sizeof(device_name), device));
    printf("Device %d name is %s\n", device, device_name);
    return 0;
}
  1. 确认VS顶部的"解决方案平台"是x64(默认可能是x86,需手动切换)。
  2. 点击"本地Windows调试器"(绿色三角按钮),编译并运行。

三、预期运行结果

如果配置正确,控制台会输出类似以下内容:

复制代码
CUDA Driver version is 12020
Device 0 name is NVIDIA GeForce RTX 4090

(版本号和设备名根据你的CUDA驱动、显卡型号不同而变化)

四、常见问题排查

  1. 找不到cuda.h:检查"附加包含目录"路径是否正确,CUDA Toolkit是否安装完整。
  2. 链接错误(LNK1104 找不到cuda.lib) :检查"附加库目录"是否选了x64路径,"附加依赖项"是否加了cuda.lib,平台是否为x64。
  3. cuInit失败(返回错误码)
    • 确认有NVIDIA显卡且驱动正常;
    • 确认CUDA驱动版本与CUDA Toolkit版本兼容(可参考NVIDIA官网的版本兼容表);
    • 若用笔记本,确认切换到了独立显卡(NVIDIA控制面板中设置)。

总结

  1. 核心配置是3个关键路径 :CUDA的include目录、lib/x64目录、链接cuda.lib,且必须选择x64平台。
  2. 前置条件要满足:安装CUDA Toolkit、VS2022的C++工作负载、NVIDIA显卡驱动。
  3. 运行时若提示缺失dll,通过配置"调试-环境"补充PATH路径即可解决。
相关推荐
VernonJsn2 小时前
visual studio 2022的windows驱动开发
ide·驱动开发·visual studio
Azure_withyou2 小时前
Visual Studio中try catch()还未执行,throw后便报错
c++·visual studio
阿尔帕兹2 小时前
Visual Studio2019/2022离线安装完整教程(含闪退解决方法)
ide·visual studio
琉染云月2 小时前
【C++入门练习软件推荐】Visual Studio下载与安装(以Visual Studio2026为例)
c++·visual studio
萌止2 小时前
Visual Studio下载保姆级安装教程
ide·visual studio
GISer_Jing2 小时前
解决Visual Studio调试时找不到exe文件的终极指南
ide·visual studio
程序人生5182 小时前
Visual Studio 2026下载与安装详细教程!(附下载地址)
ide·visualstudio·visual studio
安全二次方security²14 小时前
CUDA C++编程指南(7.31&32&33&34)——C++语言扩展之性能分析计数器函数和断言、陷阱、断点函数
c++·人工智能·nvidia·cuda·断点·断言·性能分析计数器函数
PfCoder1 天前
C#中定时器之System.Timers.Timer
c#·.net·visual studio·winform