Software Deployment Checks#

The diagnostic framework reports its built-in deployment checks under the name software. They detect deployment and readiness problems that can prevent later GPU tests from running or make their results unreliable, including driver or library loading, device access, conflicting processes, and required GPU or fabric state; they do not apply a compute or stress workload.

Availability and prerequisites#

software is a result name, but DCGM does not accept it as a standalone --run value. Run the quick suite to execute the deployment checks alone. An explicitly named GPU test also runs the software checks before that test. The checks apply to the selected GPUs and the diagnostic process environment.

Behavior#

Software deployment checks#

Check

Condition identified

Principal result codes

Denylist

A conflicting kernel driver, notably nouveau, is present in the driver path or is not excluded as required by the NVIDIA driver stack.

DCGM_FR_DENYLISTED_DRIVER

NVML library

The NVML shared library cannot be loaded by the diagnostic process.

DCGM_FR_CANNOT_OPEN_LIB

CUDA main library

The CUDA driver library cannot be loaded by the diagnostic process.

DCGM_FR_CANNOT_OPEN_LIB

Permissions and OS-related blocks

NVIDIA device nodes are absent, inaccessible, or blocked by operating- system controls such as device cgroups.

DCGM_FR_NO_ACCESS_TO_FILE, DCGM_FR_DEVICE_COUNT_MISMATCH, or DCGM_FR_FILE_CREATE_PERMISSIONS

Persistence mode

Persistence mode is disabled when the active diagnostic configuration requires it. The check is skipped when persistence is not required.

DCGM_FR_PERSISTENCE_MODE

Environmental variables

CUDA debugger, injection, core-dump, wait-on-exception, or legacy profiling variables are present and could change test behavior.

DCGM_FR_BAD_CUDA_ENV

Page retirement and row remapping

Pending or excessive retired pages, pending row remaps, or failed and unrepairable row-remap state is reported by the GPU.

DCGM_FR_PENDING_PAGE_RETIREMENTS, DCGM_FR_DBE_PENDING_PAGE_RETIREMENTS, DCGM_FR_RETIRED_PAGES_LIMIT, DCGM_FR_PENDING_ROW_REMAP, DCGM_FR_ROW_REMAP_FAILURE, DCGM_FR_UNCORRECTABLE_ROW_REMAP, or DCGM_FR_UNCORRECTABLE_ROW_REMAP_LIMIT

Memory health and SRAM threshold

The device reports unrepairable memory or a nonzero SRAM threshold condition.

DCGM_FR_FAULTY_MEMORY or DCGM_FR_SRAM_THRESHOLD

GPU recovery action

The GPU reports that recovery requires a reset, reboot, or a drain operation before reset.

DCGM_FR_GPU_RECOVERY_RESET, DCGM_FR_GPU_RECOVERY_REBOOT, DCGM_FR_GPU_RECOVERY_DRAIN_P2P, or DCGM_FR_GPU_RECOVERY_DRAIN_RESET

Graphics processes

A graphics process is using a target GPU and can interfere with an invasive diagnostic.

DCGM_FR_GRAPHICS_PROCESSES

InfoROM

The GPU reports invalid or corrupt InfoROM configuration data.

DCGM_FR_CORRUPT_INFOROM

Fabric Manager

A target GPU that depends on Fabric Manager reports an unhealthy or incomplete fabric-management state.

DCGM_FR_FABRIC_MANAGER_TRAINING_ERROR

Parameters#

The built-in software checks expose no plugin parameters.

Examples#

Run the deployment checks alone on GPU 0:

$ dcgmi diag --run 1 --entity-id gpu:0

Request verbose output when isolating which deployment subcheck failed:

$ dcgmi diag --run 1 --entity-id gpu:0 --verbose

Use JSON when release-pinned automation needs individual result names, severities, and error codes. The output has no published stable schema; see JSON output.

$ dcgmi diag --run 1 --entity-id gpu:0 --json

Results and failure conditions#

The individual checks appear beneath the software result. Depending on the condition and availability of the underlying field, a check can pass, warn, fail, or be skipped. A skipped subcheck means that it did not establish health; it should not be interpreted as a pass.

DCGM_FR_FIELD_QUERY means that DCGM could not retrieve a field required by one of the checks. It is an inability to complete that check, not evidence that the condition being queried was healthy or unhealthy. The complete code catalog is in Diagnostic Errors.

The checks inspect the environment inherited by the diagnostic child process. When nv-hostengine launches diagnostics through a service account, that environment and its device permissions can differ from the interactive shell that invoked dcgmi.

See also#

dcgmi diag, Diagnostics, Diagnostic Errors