GPU监控指标说明
CCE AI套件(NVIDIA GPU)插件提供GPU监控指标,并集成了DCGM-Exporter组件(要求插件版本2.7.32+),引入更丰富的GPU可观测性场景。本文介绍CCE AI套件(NVIDIA GPU)插件指标的详细信息。
计费说明
GPU指标作为自定义指标,如果将该指标上报至AOM,将进行按需收费。为避免产生额外的费用,建议在启用此功能前仔细阅读价格详情,了解按需计费详细情况。
CCE提供的GPU监控指标
CCE AI套件(NVIDIA GPU)插件版本为2.1.24、2.7.40及以上时,GPU基础指标中增加了读取xgpu算力使用量、xgpu内存使用量和xgpu内存总量的能力。
- cce_gpu_memory_total支持采集xgpu_memory_total数据
- cce_gpu_memory_used支持采集xgpu_memory_used数据
- cce_gpu_utilization支持采集xgpu_core_percentage_used数据
CCE指标在显示xgpu指标数据时会同步将xgpu_index显示在gpu_index标签中,您可以使用该指标的gpu_index标签筛选xgpu指标。如:
cce_gpu_memory_used{gpu_index="0|1"} 16000
表示GPU0卡上xgpu_index为1的xgpu内存使用量为16000字节。
如您不需要查看xgpu指标,可以通过标签正则进行过滤,如:
cce_gpu_memory_used{gpu_index=~"[^|]"}
类型 |
指标 |
指标类型 |
单位 |
监控级别 |
说明 |
DCGM指标换算关系 |
---|---|---|---|---|---|---|
利用率指标 |
cce_gpu_utilization |
Gauge |
% |
GPU卡 |
GPU卡算力使用率
说明:
插件版本为2.1.24、2.7.40及以上时,该指标可以同时查询对应的xgpu指标(xgpu_core_percentage_used)。 您可以使用该指标的gpu_index标签筛选xgpu指标,例如gpu_index=0|0标签表示第0张GPU卡,第0个xgpu实例。 |
DCGM_FI_DEV_GPU_UTIL |
cce_gpu_memory_utilization |
Gauge |
% |
GPU卡 |
GPU卡显存使用率 |
DCGM_FI_DEV_FB_USED / (DCGM_FI_DEV_FB_USED+DCGM_FI_DEV_FB_FREE) |
|
cce_gpu_encoder_utilization |
Gauge |
% |
GPU卡 |
GPU卡编码使用率 |
DCGM_FI_DEV_ENC_UTIL |
|
cce_gpu_decoder_utilization |
Gauge |
% |
GPU卡 |
GPU卡解码使用率 |
DCGM_FI_DEV_DEC_UTIL |
|
cce_gpu_utilization_process |
Gauge |
% |
GPU进程 |
GPU各进程算力使用率 |
- |
|
cce_gpu_memory_utilization_process |
Gauge |
% |
GPU进程 |
GPU各进程显存使用率 |
- |
|
cce_gpu_encoder_utilization_process |
Gauge |
% |
GPU进程 |
GPU各进程编码使用率 |
- |
|
cce_gpu_decoder_utilization_process |
Gauge |
% |
GPU进程 |
GPU各进程解码使用率 |
- |
|
内存指标 |
cce_gpu_memory_used |
Gauge |
bytes |
GPU卡 |
GPU显存使用量
说明:
插件版本为2.1.24、2.7.40及以上时,该指标可以同时查询对应的xgpu指标(xgpu_memory_used)。 您可以使用该指标的gpu_index标签筛选xgpu指标,例如gpu_index=0|0标签表示第0张GPU卡,第0个xgpu实例。 |
(DCGM_FI_DEV_FB_USED) / 1000000 |
cce_gpu_memory_total |
Gauge |
bytes |
GPU卡 |
GPU显存总量
说明:
插件版本为2.1.24、2.7.40及以上时,该指标可以同时查询对应的xgpu指标(xgpu_memory_total)。 您可以使用该指标的gpu_index标签筛选xgpu指标,例如gpu_index=0|0标签表示第0张GPU卡,第0个xgpu实例。 |
(DCGM_FI_DEV_FB_USED+DCGM_FI_DEV_FB_FREE) / 1000000 |
|
cce_gpu_memory_free |
Gauge |
bytes |
GPU卡 |
GPU显存空闲量 |
(DCGM_FI_DEV_FB_FREE) / 1000000 |
|
cce_gpu_bar1_memory_used |
Gauge |
bytes |
GPU卡 |
GPU bar1 内存使用量 |
(DCGM_FI_DEV_BAR1_USED) / 1000000 |
|
cce_gpu_bar1_memory_total |
Gauge |
bytes |
GPU卡 |
GPU bar1 内存总量 |
(DCGM_FI_DEV_BAR1_USED+DCGM_FI_DEV_BAR1_FREE) / 1000000 |
|
频率 |
cce_gpu_clock |
Gauge |
Mhz |
GPU卡 |
GPU时钟频率 |
DCGM_FI_DEV_SM_CLOCK |
cce_gpu_memory_clock |
Gauge |
Mhz |
GPU卡 |
GPU显存频率 |
DCGM_FI_DEV_MEM_CLOCK |
|
cce_gpu_graphics_clock |
Gauge |
Mhz |
GPU卡 |
GPU图形处理器频率 |
- |
|
cce_gpu_video_clock |
Gauge |
Mhz |
GPU卡 |
GPU视频处理器频率 |
DCGM_FI_DEV_VIDEO_CLOCK |
|
物理状态数据 |
cce_gpu_temperature |
Gauge |
℃ |
GPU卡 |
GPU温度 |
DCGM_FI_DEV_MEMORY_TEMP |
cce_gpu_power_usage |
Gauge |
milliWatts |
GPU卡 |
GPU功率 |
DCGM_FI_DEV_POWER_USAGE * 1000000 |
|
cce_gpu_total_energy_consumption |
Gauge |
milliJoules |
GPU卡 |
GPU总能耗 |
DCGM_FI_DEV_TOTAL_ENERGY_CONSUMPTION |
|
带宽数据 |
cce_gpu_pcie_link_bandwidth |
Gauge |
Gb/s |
GPU卡 |
GPU PCIE 带宽 |
- |
cce_gpu_nvlink_bandwidth |
Gauge |
Gb/s |
GPU卡 |
GPU nvlink 带宽 |
DCGM_FI_DEV_NVLINK_BANDWIDTH_TOTAL |
|
cce_gpu_pcie_throughput_rx |
Gauge |
kB/s |
GPU卡 |
GPU PCIE 接收带宽 |
rate(DCGM_FI_PROF_PCIE_RX_BYTES[5m]) * 1000 |
|
cce_gpu_pcie_throughput_tx |
Gauge |
kB/s |
GPU卡 |
GPU PCIE 发送带宽 |
rate(DCGM_FI_PROF_PCIE_TX_BYTES[5m]) * 1000 |
|
cce_gpu_nvlink_utilization_counter_rx |
Gauge |
kB/s |
GPU卡 |
GPU nvlink 接收带宽 |
rate(DCGM_FI_PROF_NVLINK_RX_BYTES[5m]) * 1000 |
|
cce_gpu_nvlink_utilization_counter_tx |
Gauge |
kB/s |
GPU卡 |
GPU nvlink 发送带宽 |
rate(DCGM_FI_PROF_NVLINK_TX_BYTES[5m]) * 1000 |
|
隔离内存页面 |
cce_gpu_retired_pages_sbe |
Gauge |
- |
GPU卡 |
GPU单比特错误隔离页数量 |
DCGM_FI_DEV_RETIRED_SBE |
cce_gpu_retired_pages_dbe |
Gauge |
- |
GPU卡 |
GPU双比特错误隔离页数量 |
DCGM_FI_DEV_RETIRED_DBE |
指标 |
指标类型 |
单位 |
监控级别 |
说明 |
---|---|---|---|---|
xgpu_memory_total |
Gauge |
bytes |
GPU进程 |
GPU虚拟化显存总量。 |
xgpu_memory_used |
Gauge |
bytes |
GPU进程 |
GPU虚拟化显存使用量。 |
xgpu_core_percentage_total |
Gauge |
% |
GPU进程 |
GPU虚拟化算力总量。 |
xgpu_core_percentage_used |
Gauge |
% |
GPU进程 |
GPU虚拟化算力使用量。 |
gpu_schedule_policy |
Gauge |
- |
GPU卡 |
GPU虚拟化分三种模式:
|
xgpu_device_health |
Gauge |
- |
GPU卡 |
GPU虚拟化设备的健康情况。
|
DCGM提供的GPU监控指标
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_DEV_GPU_UTIL |
Gauge |
% |
表示GPU利用率,即在一个周期时间内(1s或1/6s,根据GPU产品而定),一个或多个核函数处于Active的时间。 该指标仅能够展示有核函数在用的GPU资源,但无法展示具体的使用情况。 |
DCGM_FI_DEV_MEM_COPY_UTIL |
Gauge |
% |
表示内存带宽利用率。 以英伟达GPU V100为例,其最大内存带宽为900 GB/sec,如果当前的内存带宽为450 GB/sec,则内存带宽利用率为50%。 |
DCGM_FI_DEV_ENC_UTIL |
Gauge |
% |
表示编码器利用率。 |
DCGM_FI_DEV_DEC_UTIL |
Gauge |
% |
表示解码器利用率。 |
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_DEV_FB_FREE |
Gauge |
MiB |
表示显存剩余数。 |
DCGM_FI_DEV_FB_USED |
Gauge |
MiB |
表示显存已使用数。 该值与nvidia-smi命令中Memory-Usage的已使用值对应。 |
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_PROF_GR_ENGINE_ACTIVE |
Gauge |
% |
表示在一个时间间隔内,Graphics或Compute引擎处于Active的时间占比。 该值表示所有Graphics和Compute引擎的平均值。 Graphics或Compute引擎处于Active是指Graphics或Compute Context绑定到线程,并且Graphics或Compute Context处于Busy状态。 |
DCGM_FI_PROF_SM_ACTIVE |
Gauge |
% |
表示在一个时间间隔内,至少一个线程束在一个SM(Streaming Multiprocessor)上处于Active的时间占比。 该值表示所有SM的平均值,且该值对每个块的线程数不敏感。 线程束处于Active是指一个线程束被调度且分配资源后的状态,可能是在Computing、也可能是非Computing状态(例如等待内存请求)。 该值小于0.5表示未高效利用GPU,大于0.8是必要的。 假设一个GPU有N个SM:
|
DCGM_FI_PROF_SM_OCCUPANCY |
Gauge |
% |
表示在一个时间间隔内,驻留在SM上的线程束与该SM最大可驻留线程束的比例。 该值表示一个时间间隔内的所有SM的平均值。 占用率越高不代表GPU使用率越高。只有在GPU内存带宽受限的工作负载(DCGM_FI_PROF_DRAM_ACTIVE)情况下,更高的占用率表示更有效的GPU使用率。 |
DCGM_FI_PROF_PIPE_TENSOR_ACTIVE |
Gauge |
% |
表示Tensor(HMMA/IMMA) Pipe处于Active状态的周期分数。 该值表示一个时间间隔内的平均值,而不是瞬时值。 较高的值表示Tensor Cores的利用率较高。 该值为1(100%)表示在整个时间间隔内每隔一个指令周期发出一个Tensor指令(两个周期完成一条指令)。 假设该值为0.2(20%),可能有如下情况:
|
DCGM_FI_PROF_PIPE_FP64_ACTIVE |
Gauge |
% |
表示FP64(双精度)Pipe处于Active状态的周期分数。 该值表示一个时间间隔内的平均值,而不是瞬时值。 较高的值代表FP64 Cores有较高的利用率。 该值为 1(100%)表示在整个时间间隔内上每四个周期(以Volta类型卡为例)执行一次FP64指令。 假设该值为0.2(20%),可能有如下情况:
|
DCGM_FI_PROF_PIPE_FP32_ACTIVE |
Gauge |
% |
表示乘加操作FMA(Fused Multiply-Add)管道处于Active的周期分数,乘加操作包括FP32(单精度)和整数。 该值表示一个时间间隔内的平均值,而不是瞬时值。 较高的值代表FP32 Cores有较高的利用率。 该值为1(100%)表示在整个时间间隔内上每两个周期(Volta类型卡为例)执行一次FP32指令。 假设该值为0.2(20%),可能有如下情况:
|
DCGM_FI_PROF_PIPE_FP16_ACTIVE |
Gauge |
% |
表示FP16(半精度)管道处于Active的周期分数。 该值表示一个时间间隔内的平均值,而不是瞬时值。 较高的值代表FP16 Cores有较高的利用率。 该值为 1 (100%) 表示在整个时间间隔内上每两个周期(Volta类型卡为例)执行一次FP16指令。 假设该值为0.2(20%),可能有如下情况:
|
DCGM_FI_PROF_DRAM_ACTIVE |
Gauge |
% |
表示内存带宽利用率(Memory BW Utilization)将数据发送到设备内存或从设备内存接收数据的周期分数。 该值表示时间间隔内的平均值,而不是瞬时值。 较高的值表示设备内存的利用率较高。 该值为1(100%)表示在整个时间间隔内的每个周期执行一条 DRAM 指令(实际上,峰值约为 0.8 (80%) 是可实现的最大值)。 假设该值为0.2(20%),表示20%的周期在时间间隔内读取或写入设备内存。 |
DCGM_FI_PROF_PCIE_TX_BYTES DCGM_FI_PROF_PCIE_RX_BYTES |
Counter |
B/s |
表示通过PCIe总线传输/接收的数据速率,包括协议标头和数据有效负载。 该值表示一个时间间隔内的平均值,而不是瞬时值。 该速率在时间间隔内平均。例如,在1秒内传输1 GB数据,则无论以恒定速率还是突发传输数据,速率都是1 GB/s。理论上的最大PCIe Gen3带宽为每通道985 MB/s。 |
DCGM_FI_PROF_NVLINK_RX_BYTES DCGM_FI_PROF_NVLINK_TX_BYTES |
Counter |
B/s |
表示通过NVLink传输/接收的数据速率,不包括协议标头。 该值表示一个时间间隔内的平均值,而不是瞬时值。 该速率在时间间隔内平均。例如,在1秒内传输1 GB数据,则无论以恒定速率还是突发传输数据,速率都是1 GB/s。理论上,最大NVLink Gen2带宽为每个方向每个链路25 GB/s。 |
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_DEV_SM_CLOCK |
Gauge |
MHz |
表示SM时钟频率。 |
DCGM_FI_DEV_MEM_CLOCK |
Gauge |
MHz |
表示内存时钟频率。 |
DCGM_FI_DEV_APP_SM_CLOCK |
Gauge |
MHz |
表示SM应用时钟频率。 |
DCGM_FI_DEV_APP_MEM_CLOCK |
Gauge |
MHz |
表示内存应用时钟频率。 |
DCGM_FI_DEV_CLOCK_THROTTLE_REASONS |
Gauge |
MHz |
表示时钟慢下来的原因。 |
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_DEV_XID_ERRORS |
Gauge |
- |
表示一段时间内,最后发生的XID错误号。 |
DCGM_FI_DEV_POWER_VIOLATION |
Counter |
μs(微秒) |
表示因功率上限而导致的违规,该值为违规的时间。 |
DCGM_FI_DEV_THERMAL_VIOLATION |
Counter |
μs(微秒) |
表示由于热限制导致的违规,该值为违规的时间。 |
DCGM_FI_DEV_SYNC_BOOST_VIOLATION |
Counter |
μs(微秒) |
表示由于同步提升限制而导致的违规,该值为违规的时间。 |
DCGM_FI_DEV_BOARD_LIMIT_VIOLATION |
Counter |
μs(微秒) |
表示由于电路板限制而导致的违规,该值为违规的时间。 |
DCGM_FI_DEV_LOW_UTIL_VIOLATION |
Counter |
μs(微秒) |
表示低利用率限制导致的违规,该值为违规的时间。 |
DCGM_FI_DEV_RELIABILITY_VIOLATION |
Counter |
μs(微秒) |
表示电路板可靠性限制导致违规,该值为违规的时间。 |
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_DEV_BAR1_USED |
Gauge |
MB |
表示已使用的BAR1。 |
DCGM_FI_DEV_BAR1_FREE |
Gauge |
MB |
表示剩余的BAR1。 |
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_DEV_MEMORY_TEMP |
Gauge |
C |
表示内存温度。 |
DCGM_FI_DEV_GPU_TEMP |
Gauge |
C |
表示GPU温度。 |
DCGM_FI_DEV_POWER_USAGE |
Gauge |
W |
表示功率。 |
DCGM_FI_DEV_TOTAL_ENERGY_CONSUMPTION |
Counter |
J |
表示从驱动加载开始,已消耗的能量。 |
指标名称 |
指标类型 |
单位 |
说明 |
---|---|---|---|
DCGM_FI_DEV_RETIRED_SBE |
Gauge |
- |
表示由单bit错误而停用的页面。 |
DCGM_FI_DEV_RETIRED_DBE |
Gauge |
- |
表示用双bit错误而停用的页面。 |