vscode_cuda调试环境搭建

该文介绍了如何在VSCode中设置CUDA的调试环境,包括软件版本、GCC/G++、GPU驱动和CUDA工具包的安装,以及VSCode扩展插件的选择。通过新建CUDA源文件、配置launch.json和tasks.json,实现CUDA程序的编译与调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

vscode_cuda调试环境


1.基础软件环境准备
vscode
版本: 1.76.2
提交: ee2b180d582a7f601fa6ecfdad8d9fd269ab1884
日期: 2023-03-14T17:57:21.103Z
Electron: 19.1.11
Chromium: 102.0.5005.196
Node.js: 16.14.2
V8: 10.2.154.26-electron.0
OS: Linux x64 4.15.0-50-generic
沙盒化: No
c/c++开发环境
gcc (Ubuntu 9.4.0-1ubuntu1~16.04) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

g++ (Ubuntu 9.4.0-1ubuntu1~16.04) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

GPU驱动

驱动下载和安装

https://www.nvidia.com/Download/index.aspx?lang=en-us

cuda开发环境

cudatoolkit的下载和安装

CUDA Toolkit Archive | NVIDIA Developer

cudnn下载和安装

cuDNN Archive | NVIDIA Developer


2.VSCode扩展插件安装

扩展中安装Microsoft: C/C++

NVIDIA: Nsight Visual Studio Code Edition

在这里插入图片描述


3.程序调试

新建.cu文件,完成代码编写。

这里为矩阵加为例,add.cu

代码编写过程中可通过观察cuda函数是否自动补全来检验2中的插件是否正确安装。

单击左侧功能菜单“运行和调试”,通过选择cuda-c++(cudagdb)调试器。 新建launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "CUDA C++: Launch",
            "type": "cuda-gdb",
            "request": "launch",
            "program": ""
        },
        {
            "name": "CUDA C++: Attach",
            "type": "cuda-gdb",
            "request": "attach"
        }
    ]
}

然后新建tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "mynvcc",		#自定义
            "type": "shell",
            "command": "nvcc",
            "args":["-g","-G", "-o","${fileDirname}/add","${file}",
            	#需要的头文件,和动态库
                "-I", "/usr/local/cuda/include",
                "-I", "/usr/local/cuda/samples/common/inc",
                "-L", "/usr/local/cuda/lib64",   
                "-L", "/usr/local/cuda/samples/common/lib",  
                "-l", "cudart",                           
                "-l", "cublas",
                "-l", "cudnn",
                "-l", "curand",
                "-D_MWAITXINTRIN_H_INCLUDED"  
            ]
        }
    ]
}


根据tasks内容补充launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "CUDA C++: Launch",
            "type": "cuda-gdb",
            "request": "launch",
            "program": "${fileDirname}/add", 	#编译生成的可执行程序             
            "preLaunchTask": "mynvcc"  			#tasks label
        },
        {
            "name": "CUDA C++: Attach",
            "type": "cuda-gdb",
            "request": "attach"
        }
    ]
}

配置完成后。单击“开始调试”或F5,开始调试。界面如下:

在这里插入图片描述

开始调试后,vscode界面右下角或出现当前断点所在的的线程信息:

CUDA:(0, 0, 0) (0, 0, 0),代表了当前执行核函数的线程块号块内的线程号

线程跳转:

单击上述线程ID显示位置,可以在vscode顶部的输入框输入线程块信息进行线程块的直接跳转

在这里插入图片描述


### 配置 VSCode 中 YOLOv8 的 GPU 运行环境 要在 Visual Studio Code (VSCode) 中为 YOLOv8 搭建 GPU 运行环境,需要完成以下几个方面的设置: #### 1. 安装必要的软件和工具 确保已经安装了以下依赖项: - **NVIDIA CUDA Toolkit**: 确认已正确安装并验证其版本是否满足需求。可以通过 `nvidia-smi` 和 `nvcc -V` 命令来确认 CUDA 是否正常工作[^1]。 - **Python 环境**: 推荐创建一个新的虚拟环境专门用于 YOLOv8 的开发和训练[^2]。 ```bash python -m venv yolov8_env source yolov8_env/bin/activate # Windows 用户可以使用 yolov8_env\Scripts\activate pip install --upgrade pip setuptools wheel ``` - **YOLOv8 所需库**: 使用官方文档中的命令安装所需的 Python 库。 ```bash pip install ultralytics ``` - **Visual Studio Code**: 下载并安装最新版的 VSCode[^5]。 --- #### 2. 设置 VSCode 工作区 打开 VSCode 并加载项目文件夹作为工作区。如果尚未克隆 YOLOv8 源码仓库,则可以从 GitHub 上拉取代码: ```bash git clone https://github.com/ultralytics/ultralytics.git cd ultralytics/ ``` 在 VSCode 中打开此目录,并通过扩展市场安装以下插件: - **Python 插件** - **C/C++ 插件**(如果有 C++ 文件) - **Code Runner** --- #### 3. 配置 launch.json 为了支持 GPU 加速调试功能,在 `.vscode/launch.json` 文件中定义调试配置。以下是典型的配置示例: ```json { "version": "0.2.0", "configurations": [ { "name": "Python: Current File with GPU Support", "type": "python", "request": "launch", "program": "${file}", "console": "integratedTerminal", "justMyCode": false, "args": ["--device", "0"], // 设定使用的 GPU ID "env": { "CUDA_VISIBLE_DEVICES": "0" // 显式指定可用的 GPU } } ] } ``` 上述配置允许用户通过参数控制设备分配,并显式设定环境变量以启用特定 GPU[^4]。 --- #### 4. 测试 GPU 支持 运行一段简单的脚本来检测当前环境中是否存在有效的 GPU 支持。例如: ```python import torch print(f"CUDA Available: {torch.cuda.is_available()}") print(f"Device Count: {torch.cuda.device_count()}") print(f"Current Device Name: {torch.cuda.get_device_name(0)}") ``` 如果一切正常,应该能够看到类似于以下输出的结果: ``` CUDA Available: True Device Count: 1 Current Device Name: NVIDIA GeForce RTX XXXX ``` --- #### 5. 编写推理或训练脚本 编写一个基于 YOLOv8 的简单推理或训练脚本。例如,进行图像推理时可以尝试以下代码片段: ```python from ultralytics import YOLO model = YOLO('yolov8n.pt') # Load a pretrained model results = model('https://ultralytics.com/images/bus.jpg', device='cuda:0') for result in results: boxes = result.boxes.cpu().numpy() print(boxes.xyxy) ``` --- #### 6. 启动调试会话 按下 F5 键启动调试模式,或者从菜单栏选择对应的调试选项。此时,VSCode 将按照之前配置好的 `launch.json` 参数执行程序,并利用 GPU 提供加速计算能力。 --- ### 注意事项 - 如果遇到任何错误提示,请仔细检查每一步操作是否有遗漏之处,尤其是关于 CUDA 版本兼容性和驱动更新的部分。 - 对于更复杂的场景(如多卡分布式训练),可能还需要额外调整 PyTorch 或 TensorFlow 的相关设置。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值