下载CUDA Toolkit和VS后,配置vscode

你已经下载并安装了 CUDA ToolkitVisual Studio Build Tools(或 Visual Studio) ,接下来我们一步步在 VSCode 中配置 CUDA 开发环境 ,实现 编写 → 编译 → 运行 → 调试 的完整流程。


✅ 前提确认(请先验证)

在继续前,请确保以下命令在 "x64 Native Tools Command Prompt for VS 2022" 中能正常运行:

复制代码
nvcc --version
cl
  • nvcc 显示 CUDA 版本(如 12.4)
  • cl 显示 Microsoft C++ 编译器信息

如果不行,请先解决环境问题(如重启、重新安装 Build Tools 等)。


🛠️ 步骤 1:安装 VSCode 插件

打开 VSCode,安装以下插件:

  1. C/C++ (Microsoft 官方)
    • 提供智能提示、调试支持
  2. CUDA (作者:kriegalex)
    • .cu 文件提供语法高亮(可选但推荐)

其他插件如 CMake Tools、Code Runner 可后续按需添加。


📁 步骤 2:创建 CUDA 项目目录

例如:

复制代码
D:\cuda_projects\hello_cuda\
├── main.cu
└── .vscode/

编写 main.cu 示例代码:

复制代码
#include <cuda_runtime.h>
#include <iostream>

__global__ void say_hello() {
    printf("Hello from GPU thread %d!\n", threadIdx.x);
}

int main() {
    std::cout << "Launching kernel...\n";
    say_hello<<<1, 5>>>();
    cudaDeviceSynchronize();
    
    // 检查错误(可选)
    cudaError_t err = cudaGetLastError();
    if (err != cudaSuccess) {
        std::cerr << "CUDA error: " << cudaGetErrorString(err) << std::endl;
    }
    
    return 0;
}

⚙️ 步骤 3:配置 .vscode/tasks.json(编译)

在项目根目录创建 .vscode/tasks.json

复制代码
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build CUDA",
            "type": "shell",
            "command": "nvcc",
            "args": [
                "-o",
                "${workspaceFolder}/main.exe",
                "${workspaceFolder}/main.cu",
                "-arch=sm_75"  // ⚠️ 根据你的 GPU 修改!
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": "$msCompile",
            "detail": "Compile CUDA source with nvcc"
        }
    ]
}

🔍 关于 -arch=sm_XX

  • 这是 GPU 的计算能力(Compute Capability)
  • 常见值:
    • GTX 10xx / RTX 20xx → sm_75
    • RTX 30xx → sm_86
    • RTX 40xx → sm_89
  • 查询你的 GPU:https://developer.nvidia.com/cuda-gpus

如果不确定,可先省略 -arch,但可能性能不佳或报错。


🐞 步骤 4:配置 .vscode/launch.json(调试/运行)

创建 .vscode/launch.json

复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Run CUDA Program",
            "type": "cppvsdbg",
            "request": "launch",
            "program": "${workspaceFolder}/main.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "console": "externalTerminal"
        }
    ]
}

使用 cppvsdbg 是因为 Windows 上 VSCode 的 C++ 调试依赖 Visual Studio 的调试引擎(已随 Build Tools 安装)。


▶️ 步骤 5:编译并运行

  1. 编译

    • Ctrl + Shift + B
    • 或终端手动运行:nvcc -o main.exe main.cu -arch=sm_75
  2. 运行/调试

    • F5 启动调试(会弹出外部终端窗口)
    • 或直接双击 main.exe(在资源管理器中)

✅ 预期输出(以 sm_75 为例):

复制代码
Launching kernel...
Hello from GPU thread 0!
Hello from GPU thread 1!
Hello from GPU thread 2!
Hello from GPU thread 3!
Hello from GPU thread 4!

🔧 可选优化:自动检测 nvcc 路径(避免环境变量问题)

如果你在普通 VSCode 终端中运行 nvcc 报错,但开发人员命令提示符中可以,说明环境变量未全局生效。

解决方案:

tasks.json 中使用完整路径(不推荐长期使用),或:

方法:从 VS 开发人员命令提示符启动 VSCode
  1. 先关闭vscode,打开 x64 Native Tools Command Prompt for VS 2022

  2. 进入你的项目目录:

    复制代码
    cd D:\cuda_projects\hello_cuda
  3. 启动 VSCode:

    复制代码
    code .

这样 VSCode 继承了正确的环境变量,nvcccl 都能直接调用。


🧪 验证是否真正使用 GPU

在代码中加入错误检查(如上所示),或使用 nvidia-smi 监控:

  1. 打开任务管理器 → 性能 → GPU
  2. 运行程序时,应看到 GPU 计算负载上升

📌 常见问题

问题 解决
nvcc : fatal error : Microsoft Visual Studio not found 未正确安装 Build Tools,或未用开发人员命令提示符启动 VSCode
cannot open include file 'cuda_runtime.h' CUDA Toolkit 未装好,检查 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.x\include 是否存在
调试时提示 "Unable to start debugging" 确保安装了 C++ 调试组件(Build Tools 中默认包含)

✅ 完成!

相关推荐
这儿有一堆花3 小时前
重磅推出!Google Antigravity:一次 “以 Agent 为中心 (agent-first)” 的 IDE 革命
vscode·ai·ai编程·googlecloud
j***518910 小时前
vscode配置django环境并创建django项目(全图文操作)
vscode·django·sqlite
艾莉丝努力练剑13 小时前
【Python基础:语法第一课】Python 基础语法详解:变量、类型、动态特性与运算符实战,构建完整的编程基础认知体系
大数据·人工智能·爬虫·python·pycharm·编辑器
skywalk816314 小时前
FreeBSD系统安装VSCode Server(未成功,后来是在FreeBSD系统里的Linux虚拟子系统里安装启动了Code Server)
ide·vscode·编辑器·freebsd
深海潜水员14 小时前
【MonoGame游戏开发】| 牧场物语实现 第一卷 : 农场基础实现 (下)
vscode·游戏·c#·.net·monogame
skywalk81631 天前
linux安装Code Server 以便Comate IDE和CodeBuddy等都可以远程连上来
linux·运维·服务器·vscode·comate
时光追逐者1 天前
Visual Studio 2026 现已正式发布,更快、更智能!
ide·c#·.net·visual studio
你还满意吗1 天前
开发工具推荐
编辑器
weixin_377634841 天前
【Git使用】PyCharm中的Git使用
ide·git·pycharm
亮子AI1 天前
如何做一个类似Word的编辑器?要有修改标记功能
编辑器·word