NVIDIA Nsight Visual Studio Code Edition 简介

欢迎使用 NVIDIA Nsight Visual Studio Code Edition,这是一个 CUDA 应用程序的开发环境,集成到 Microsoft Visual Studio Code 中。

1. NVIDIA Nsight Visual Studio Code Edition 用户指南

NVIDIA Nsight Visual Studio Code Edition (Nsight VSCE) 扩展了 Microsoft Visual Studio Code 的调试功能,以支持 GPU 计算。NVIDIA Nsight™ VSCEVisual Studio Code IDE 的一个扩展,通过提供以下功能,将 CUDA 作为一等公民引入到一个优秀的 IDE 中:
  • CUDA 语法高亮显示、括号匹配、代码折叠、自动缩进等声明性语言配置。

  • C++ 语言服务器扩展,以支持 CUDA 特定的语言特性。

  • 调试器适配器,以提供 CUDA 调试。

  • 调试器视图,以提供 CUDA 特定的调试信息。

  • IDE 扩展,以增强 VS Code 环境的生产力。

2. CUDA 调试器

CUDA 调试器帮助您调试使用计算统一设备架构 (CUDA) 的应用程序。除了调试原生 CPU 代码外,您还可以在 CUDA 源代码中设置断点、检查内存、查看局部变量的值、执行内存检查以及其他常见的调试任务。您可以将 CUDA 调试器与使用 CUDA 运行时 (CUDART) API 或 CUDA 驱动程序 API 构建的应用程序一起使用。

3. 优势

更高的生产力

使用智能 CUDA 自动代码完成功能可改善整体开发体验,并使用户在编写代码时节省时间和精力。

交互性

使用 Nsight Visual Studio Code Edition 进行调试提供了多种优势,包括代码格式化、轻松浏览源代码、显示和交互不同的源文件、构建可执行文件和测试。

远程开发支持

Nsight Visual Studio Code Edition 使开发人员能够在各种集群环境中(例如虚拟机或远程 Docker 容器)实现 CUDA 代码。它还通过 Remote – WSL 扩展支持 Linux 系统的代码开发。

4. 主要特性

用于代码开发和调试的 CUDA 语法高亮显示

使用 CUDA 代码的语法高亮显示和 IntelliSense 高效地编辑代码。自动完成、转到定义、查找引用、重命名符号等功能对于内核函数和 C++ 函数同样无缝地工作。

CUDA 内核断点支持和内核执行控制

使用标准断点(包括支持表达式求值的条件断点)在 CPU 或 GPU 设备代码中中断调试会话。GUI 控件允许您像正常的 CPU 调试一样,单步跳过、步入或步出源代码中的语句。断点针对每个内核线程进行评估,并在任何线程遇到它们时暂停执行。

GPU 和内核状态检查

中断到调试器以查看应用程序中任何点的所有详细信息,包括对寄存器、变量和调用堆栈的 GPU 调试支持。有监视列表支持来添加感兴趣的特定变量以进行跟踪。此外,还有焦点控件可以手动选择 CUDA 块和线程号来切换调试器焦点。

声明

声明

NVIDIA® Nsight™ 异构平台应用程序开发环境 Visual Studio Code Edition 2024.1 用户指南发送反馈

本指南中的信息以及本指南中引用的 NVIDIA 文档中包含的所有其他信息均“按原样”提供。 NVIDIA 不对产品信息的准确性、完整性或可靠性作任何明示、暗示、法定或其他保证,并且明确否认对产品信息不侵权、适销性和适用于特定用途的所有暗示保证。 尽管客户可能因任何原因蒙受任何损失,但 NVIDIA 对本指南中描述的产品的总累积责任应根据 NVIDIA 产品销售条款和条件进行限制。

本指南中描述的 NVIDIA 产品不具有容错性,并且并非设计、制造或旨在用于与任何系统的设计、建造、维护和/或操作相关的用途,如果在这些系统中使用或发生故障可能会导致危及人类生命安全或严重的身体伤害或财产损失的情况(包括但不限于在任何核、航空电子、生命支持或其他生命攸关的应用中使用)。 NVIDIA 明确否认对此类高风险用途的任何明示或暗示的适用性保证。 NVIDIA 不对客户或任何第三方承担任何全部或部分责任,因由此类高风险用途引起的任何索赔或损害。

NVIDIA 不保证或声明本指南中描述的产品在未经进一步测试或修改的情况下适用于任何特定用途。 NVIDIA 不一定对每种产品的所有参数进行测试。 客户有责任确保产品适合并适用于客户计划的应用,并为该应用进行必要的测试,以避免应用或产品出现故障。 客户产品设计中的缺陷可能会影响 NVIDIA 产品的质量和可靠性,并可能导致超出本指南中包含的附加或不同的条件和/或要求。 NVIDIA 不承担与任何可能基于或归因于以下原因的任何缺陷、损坏、成本或问题相关的任何责任:(i) 以任何违反本指南的方式使用 NVIDIA 产品,或 (ii) 客户产品设计。

除客户有权将本指南中的信息与产品一起使用外,NVIDIA 在本指南下未授予任何其他明示或暗示的许可。 只有在 NVIDIA 书面批准的情况下,才能复制本指南中的信息,并且复制必须未经改动,并附带所有相关的条件、限制和声明。

商标

NVIDIA、NVIDIA 徽标以及 cuBLAS、CUDA、CUDA-GDB、CUDA-MEMCHECK、cuDNN、cuFFT、cuSPARSE、DIGITS、DGX、DGX-1、DGX Station、NVIDIA DRIVE、NVIDIA DRIVE AGX、NVIDIA DRIVE Software、NVIDIA DRIVE OS、NVIDIA Developer Zone(又名“DevZone”)、GRID、Jetson、NVIDIA Jetson Nano、NVIDIA Jetson AGX Xavier、NVIDIA Jetson TX2、NVIDIA Jetson TX2i、NVIDIA Jetson TX1、NVIDIA Jetson TK1、Kepler、NGX、NVIDIA GPU Cloud、Maxwell、Multimedia API、NCCL、NVIDIA Nsight Compute、NVIDIA Nsight Eclipse Edition、NVIDIA Nsight Graphics、NVIDIA Nsight Integration、NVIDIA Nsight Systems、NVIDIA Nsight Visual Studio Edition、NVIDIA Nsight Visual Studio Code Edition、NVLink、nvprof、Pascal、NVIDIA SDK Manager、Tegra、TensorRT、Tesla、Visual Profiler、VisionWorks 和 Volta 是 NVIDIA Corporation 在美国和其他国家/地区的商标和/或注册商标。 其他公司和产品名称可能是与其相关的各自公司的商标。