mnubergemm#
Purpose and availability#
mnubergemm combines pulsed single-precision (FP32) matrix multiplication,
GPU copy-engine work, and communication through the NVIDIA Collective
Communications Library (NCCL) in one MPI job across the participating hosts.
Use it to reproduce failures that appear only under combined compute and
communication load and are not yet isolated to one GPU pair. It is the
default multi-node diagnostic and is selected explicitly with:
$ dcgmi mndiag --hostList 'node01;node02' --run mnubergemm
It is available for GB200 NVL in DCGM 4.3 and later; GB300 NVL support was
added in DCGM 4.4. The built-in eligible devices are GB200 NVL (PCI device ID
2941) and GB300 NVL (PCI device ID 31c2). Every participating host
must have active GPUs, and all participating GPUs must use the same eligible
SKU.
DCGM packages mnubergemm binaries for CUDA 12 and CUDA 13 on x86-64 and
Arm64. It selects the CUDA 12 binary for a CUDA driver API major of 12 and the
CUDA 13 binary for a major of 13 or later. A driver API major below 12 has no
compatible packaged binary.
Resource and launch model#
mnubergemm is an active stress workload. The host list selects hosts and
transports; it does not select GPU subsets. DCGM derives one common
processes-per-node count from the active-GPU count visible to the head node.
Drain every active GPU on every participating host.
The run uses the common multi-node launch environment: reachable and
authorized host engines, Open MPI, noninteractive SSH for the caller-derived
execution account, accessible CUDA-specific workload binaries, and a
configured Multi-Node NVLink/IMEX environment. These operational prerequisites
and the distinction between the dcgmi process user, head host-engine
process user, and configured service account are described in
Whose identity launches the workload. The exact host, MPI, and environment
controls are in
dcgmi mndiag.
DCGM reserves the multi-node diagnostic resource on every host before launch. Other activity on the participating GPUs can prevent reservation or launch; that is an orchestration failure, not a hardware verdict.
Parameters#
Supported DCGM parameter#
Parameter |
|
Default |
Validation and effect |
|---|---|---|---|
|
Valued assignment |
|
A positive decimal integer from 1 through 2,147,483,647. It sets the
workload’s |
For example, use --parameters mnubergemm.time_to_run=600.
DCGM adds 60 seconds of startup allowance to the normal process-monitor
deadline. Thus time_to_run=600 produces a 660-second process-execution
deadline. Connection, authorization, reservation, and cleanup are separate
phases.
Examples#
Run the default one-hour diagnostic:
$ dcgmi mndiag --hostList 'node01;node02' --run mnubergemm
Run it for ten minutes and request JSON:
$ dcgmi mndiag --hostList 'node01;node02' --run mnubergemm \
--parameters mnubergemm.time_to_run=600 --json
Results#
Workload outcome |
Diagnostic result |
Meaning |
|---|---|---|
The workload completes, provides usable results for the participating hosts and GPUs, and reports no error. |
Overall and GPU results are |
The combined compute, copy-engine, and NCCL workload completed without reporting an error. This is not an exhaustive statement of system health. |
The workload reports an error for one or more GPUs. |
Affected GPUs and the overall result are |
DCGM associates the workload message with each affected GPU identified by the workload. The message is evidence for investigation; it does not by itself identify a defective component. |
The workload does not provide a usable result for the complete participating host and GPU inventory. |
Overall |
The run did not establish a result for the requested configuration; inspect the captured workload logs. |
The MPI workload exits unsuccessfully. |
Overall |
The command reports the MPI failure; inspect the captured stdout and stderr files. |
mnubergemm results use only Pass and Fail. The diagnostic does not
apply a separate bandwidth or error-rate threshold. A failure’s workload
message is the evidence to interpret.
Failures before or around a result#
Condition |
Status |
Effect |
|---|---|---|
A participating host has no active GPUs, the participating GPUs do not use one SKU, or the SKU is not supported. |
|
The workload is not launched. |
The head cannot connect to or authorize a participating host engine. |
Connection, SSH, or authorization status |
No diagnostic verdict is established. |
A participating node cannot reserve the required diagnostic resource because it is already in use. |
|
Wait for the conflicting activity to finish, or stop it, and retry. |
|
|
Correct the request. |
No readable, executable workload binary can be selected. |
|
Correct the package installation. |
MPI cannot be launched, the expected workload process cannot be detected, or another GPU process is detected after launch. |
Launch status such as |
Inspect MPI, SSH, service, and workload logs. |
The deadline expires or the client interrupts the run. |
Nonzero timeout or signal status |
The run is incomplete and does not establish a pass. |
A diagnostic Fail can accompany command status zero. The nonzero statuses
above are command failures. See
EXIT STATUS.
Executable and logs#
Item |
Behavior |
|---|---|
Default executable |
|
Captured stdout |
|
Captured stderr |
|
DCGM_HOME_DIR replaces /var/log/nvidia-dcgm as the log directory.
An empty-but-present value makes the filenames relative to the host engine’s
current working directory; leave the variable unset to use the default.
Set it in the head host-engine process environment.
See also#
Multi-Node Diagnostics, nvloom, mnnvbandwidth, dcgmi mndiag, Multi-Node Diagnostics