1、基本知识
驱动程序 和 普通软件
前者会和硬件打交道,代码上直观理解: 会用到底层系统调用,比如常见的 copy_to_user 等, 会和硬件处理打交道,中断、内存映射等。
后者就是常见的代码, 较为高级。
NVIDIA-SMI Driver Version CUDA Version关系
前者可以理解为一个命令,一个小程序,就是显示英伟达面板的那个命令。
中间就是驱动了,紧紧依赖于硬件, 1650Ti,3090这样子。
CUDA就是
- CUDA 的版本和显卡驱动 CUDA 的版本是软件,但它和显卡驱动强相关。驱动版本决定了支持哪些 CUDA 版本。 比如:
- Driver 522.25 支持 CUDA 11.8。 如果需要使用更高版本的 CUDA,比如 CUDA
12.0,则必须升级驱动到支持该版本的范围。
2、面板详细解释
这个界面是 NVIDIA 的 nvidia-smi
工具(NVIDIA System Management Interface)的输出,主要用于显示 GPU 的状态信息和运行的进程。以下是对各部分的详细解释:
顶部部分
Header
NVIDIA-SMI 522.25
:NVIDIA-SMI 的版本号。Driver Version: 522.25
:GPU 当前使用的驱动版本。CUDA Version: 11.8
:支持的 CUDA 版本。这个版本决定了可以使用的 CUDA 工具链和库。
GPU 信息
- GPU:设备编号,通常从
0
开始。 - Name:当前 GPU 的型号,这里是
NVIDIA GeForce ...
(具体被遮挡了)。 - TCC/WDDM:显示 GPU 模式:
WDDM
:Windows 显示模式,通常用来运行桌面应用程序。TCC
:Tesla 计算集群模式,主要用于计算任务。
- Bus-Id:GPU 的 PCI 总线 ID,表示 GPU 的物理连接位置。
- Disp.A:显示适配器的状态,这里显示
On
,表示 GPU 正在负责显示任务。 - Fan:风扇转速(通常是百分比)。如果没有显示,可能是硬件或驱动限制。
- Temp:GPU 当前的温度,这里是
36°C
。 - Perf:性能状态,
P8
表示低功耗模式,性能状态范围从P0
(最高性能)到P12
(最低性能)。 - Pwr:Usage/Cap:功耗信息,这里显示
3W / N/A
,表示 GPU 当前功耗为 3 瓦,N/A
表示最大功耗限制不可用。 - Memory-Usage:显存使用情况,
496MiB / 4096MiB
表示当前使用了 496 MB 的显存,总显存为 4096 MB(4 GB)。 - Volatile Uncorr. ECC:易失性纠错码错误(ECC)。对于 GeForce 系列,这里通常显示
N/A
。 - GPU-Util:GPU 利用率,这里为
1%
,表示 GPU 几乎处于空闲状态。 - Compute M.:计算模式,
Default
表示默认模式。 - MIG M.:多实例 GPU(MIG)模式,这里为
N/A
,表示此 GPU 不支持 MIG。
Processes 部分
列出了当前 GPU 正在运行的所有进程信息:
- GPU ID:进程使用的 GPU ID,这里全是
0
,表示所有进程都在 GPU 0 上运行。 - GI ID 和 CI ID:GPU 实例 ID 和计算实例 ID,这里显示为
N/A
,说明没有使用 MIG 模式。 - PID:进程的操作系统进程 ID。
- Type:
C+G
:表示该进程同时使用了计算资源(Compute)和图形资源(Graphics)。C
:仅使用计算资源。G
:仅使用图形资源。
- Process name:运行进程的名称及路径。
- GPU Memory Usage:每个进程使用的显存(以 MiB 为单位),这里显示为
N/A
,说明这些进程没有占用显存,可能仅仅调用了图形接口或计算接口。
关键信息分析
- 显存使用:当前总共使用了 496MiB 的显存,主要可能是由于桌面应用程序和后台运行的服务(如浏览器、QQ、WeChat)占用。
- GPU 利用率:GPU 利用率仅为
1%
,说明当前没有高负载的任务运行。 - 性能状态:
P8
性能状态表明 GPU 处于低功耗模式。
如果你对某些具体进程或 GPU 使用有疑问,可以进一步优化,比如:
- 检查是否有不必要的应用程序占用了 GPU 资源。
- 在需要时运行计算任务以充分利用 GPU 性能。
3、实时显示面板
- 在 NVIDIA-SMI 面板中,N/A 表示 “Not Available”(不可用或未适用)。
nvidia-smi -l 1
实现实时刷新, l是loop的意思, 1的单位是s(秒)。watch -n 1 nvidia-smi
n 是 “interval” 的缩写