NVIDIA CUDA-命令


在 Windows 系统上管理和使用 NVIDIA CUDA,主要涉及以下几个核心命令和工具:

🔧 1. nvidia-smi (NVIDIA System Management Interface)

  • 作用: 监控 GPU 设备状态、显存使用、温度、功耗、驱动版本、CUDA 版本等。
  • 使用:
    1. 打开 命令提示符 (CMD)PowerShell
    2. 直接输入: nvidia-smi
  • 常用参数:
    • nvidia-smi -l: 每隔 刷新一次信息(例如 nvidia-smi -l 2 每 2 秒刷新)。
    • nvidia-smi -q: 显示更详细的查询信息。
    • nvidia-smi -i: 指定查询哪个 GPU 设备(例如 nvidia-smi -i 0)。
    • nvidia-smi --help: 查看所有可用参数。
  • 关键信息: 输出顶部的 CUDA Version 指的是该 GPU 驱动支持的最高 CUDA 运行时版本,不是你安装的 CUDA Toolkit 版本。

🛠️ 2. nvcc (NVIDIA CUDA Compiler)

  • 作用: 编译 CUDA 源代码(.cu 文件)为可执行程序或对象文件。
  • 检查版本 (最常用):
    1. 打开 命令提示符 (CMD)PowerShell
    2. 输入: nvcc --versionnvcc -V
    3. 输出示例: nvcc: NVIDIA (R) Cuda compiler driver; Copyright (c) 2005-2023 NVIDIA Corporation; Built on ... ; Cuda compilation tools, release 12.2, V12.2.128 ...
    4. 关键信息: release 12.2 表示你当前 安装并使用的 CUDA Toolkit 版本是 12.2。这是你实际开发使用的 CUDA 版本。
  • 编译 CUDA 程序: nvcc -o my_cuda_program.exe my_cuda_program.cu
    • -o: 指定输出文件名(my_cuda_program.exe)。
    • my_cuda_program.cu: 你的 CUDA 源代码文件。

📌 重要提示:环境变量 (PATH)

  • 要使 nvccdeviceQuery.exe 等命令在任意目录的命令行中直接可用,必须将 CUDA Toolkit 的 bin 目录添加到系统的 PATH 环境变量中。
  • 默认安装路径下的 bin 目录通常是: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y\bin 其中 vX.Y 是你安装的具体 CUDA Toolkit 版本(如 v12.2)。
  • 检查 PATH:
  • 在开始菜单搜索 "编辑系统环境变量" -> "环境变量"。
  • 在 "系统变量" 中找到 Path 变量,编辑它。
  • 确认包含类似 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2\bin 的条目。如果没有,需要手动添加。

🔍 3. deviceQuery (CUDA 样例程序)

  • 作用: 更详细地查询系统中支持 CUDA 的设备信息,验证 CUDA 安装是否成功并能识别 GPU。
  • 使用:
    1. 需要先编译或找到预编译好的 deviceQuery.exe
    2. 预编译位置 (常见): C:\ProgramData\NVIDIA Corporation\CUDA Samples\vX.Y\bin\win64\Release\deviceQuery.exeC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y\extras\demo_suite\deviceQuery.exe 其中 vX.Y 是你的 CUDA Toolkit 版本。ProgramData 通常是隐藏文件夹。
    3. 打开 命令提示符 (CMD)PowerShell,导航到包含 deviceQuery.exe 的目录。
    4. 输入: deviceQuery.exe
  • 关键输出: 如果看到类似 Result = PASS 的输出,并且列出了你的 GPU 详细信息(名称、计算能力、全局内存等),说明 CUDA 安装和识别 GPU 成功✅。

🧪 验证 CUDA 安装是否成功

  1. 运行 nvidia-smi: 确认能看到 GPU 信息和驱动支持的最高 CUDA 版本。
  2. 运行 nvcc --version: 确认能看到你安装的 CUDA Toolkit 版本。
  3. 运行 deviceQuery.exe: 确认能看到 GPU 详细信息并显示 Result = PASS

📂 其他相关工具和位置

  • Nsight Systems (nsys): 系统级性能分析工具。命令通常也在 CUDA Toolkit 的 bin 目录下 (nsys.exe)。
  • Nsight Compute (ncu): 内核级性能分析工具。命令也在 bin 目录下 (ncu.exe)。
  • CUDA Visual Profiler (nvvp): 较旧的图形化分析工具(逐渐被 Nsight 工具取代)。通常有桌面快捷方式或在开始菜单中。
  • CUDA 安装目录 (C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\vX.Y): 包含 include (头文件), lib (库文件), doc (文档), extras (额外工具/样例) 等重要子目录。

❓ 常见问题

  • 'nvidia-smi' 不是内部或外部命令...
  • nvidia-smi 位于 NVIDIA 显卡驱动的安装目录(通常是 C:\Windows\System32C:\Windows\SysWOW64)。如果遇到此错误,说明你的显卡驱动安装可能有问题,或者该目录不在 PATH 中。重装显卡驱动通常能解决。
  • 'nvcc' 不是内部或外部命令...'deviceQuery' 不是内部或外部命令...
  • 这是最常见的问题!原因是包含这些可执行文件的目录(主要是 CUDA Toolkit 的 bin 目录)没有添加到系统的 PATH 环境变量中。请按照上面的 "重要提示:环境变量 (PATH)" 部分检查和设置。
  • nvidia-smi 显示的 CUDA 版本与 nvcc --version 显示的版本不同
  • 这是正常的! nvidia-smi 显示的是驱动支持的最高 CUDA 运行时版本nvcc --version 显示的是你实际安装的 CUDA Toolkit 开发环境版本。只要你的 Toolkit 版本小于或等于 nvidia-smi 报告的版本,通常就能正常工作。例如,nvidia-smi 显示 12.2nvcc 显示 12.111.8 都是兼容的;但如果 nvcc 显示 12.3nvidia-smi 只支持到 12.2,就可能需要更新显卡驱动。

希望这些命令详解能帮你顺利管理 CUDA 环境!如果遇到具体问题(如编译错误、版本冲突),欢迎提供详细信息,我会尽力帮你解决。😊