---
name: "pmdanvidia"
section: "1"
platform: "linux"
package: "pcp"
version: "7.2.2-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pmdanvidia"
---

# pmdanvidia(1)

nvidia gpu metrics domain agent (PMDA)

## NAME

**pmdanvidia** - nvidia gpu metrics domain agent (PMDA)

## SYNOPSIS

**$PCP\_PMDAS\_DIR/nvidia/pmdanvidia** \[**-D** *debug*\] \[**-d** *domain*\] \[**-l** *logfile*\] \[**-t** *interval*\]

## DESCRIPTION

**pmdanvidia** is a Performance Metrics Domain Agent (PMDA) which extracts performance metrics describing the metrics available on NVIDIA GPU cards via the NVML library.

The **nvidia** PMDA exports metrics that measure gpu activity, memory utilization, fan speed, etc on NVIDIA Tesla and Quadro cards.  Metrics are unlikely to be available for consumer class cards.

A brief description of the **pmdanvidia** command line options follows:

- **-d**

  It is absolutely crucial that the performance metrics *domain* number specified here is unique and consistent. That is, *domain* should be different for every PMDA on the one host, and the same *domain* number should be used for the same PMDA on all hosts.

- **-l**

  Location of the log file.  By default, a log file named *nvidia.log* is written in the current directory of [**pmcd**(1)](/pmcd/1.md) when **pmdanvidia** is started, i.e. **$PCP\_LOG\_DIR/pmcd**. If the log file cannot be created or is not writable, output is written to the standard error instead.

- **-t**

  Enables and sets a sampling *interval* for automatic refreshing of metric values. The functionality is disabled by default, however this option allows a time interval to be specified on which all values are sampled - this has the effect of constantly updating the accumulating metrics, with the goal of assisting client tools such as [**pcp-atop**(1)](/pcp-atop/1.md) and [**pmlogger**(1)](/pmlogger/1.md) to observe sub-sample time changes in GPU and process state. Typically these tools have longer sampling intervals, and can thus 'miss' activity happening during their sampling interval.

## INSTALLATION

The **nvidia** PMDA is not installed and available by default. If you want to undo the installation, do the following as root:

```
# cd $PCP_PMDAS_DIR/nvidia
# ./Remove
```

If you want to establish access to the names, help text and values for the nvidia performance metrics once more, after removal, do the following as root:

```
# cd $PCP_PMDAS_DIR/nvidia
# ./Install
```

**pmdanvidia** is launched by [**pmcd**(1)](/pmcd/1.md) and should never be executed directly. The Install and Remove scripts notify [**pmcd**(1)](/pmcd/1.md) when the agent is installed or removed.

## FILES

- **$PCP\_PMCDCONF\_PATH**

  command line options used to launch **pmdanvidia**

- **$PCP\_PMDAS\_DIR/nvidia/help**

  default help text file for the nvidia metrics

- **$PCP\_PMDAS\_DIR/nvidia/Install**

  installation script for the **pmdanvidia** agent

- **$PCP\_PMDAS\_DIR/nvidia/Remove**

  undo installation script for the **pmdanvidia** agent

- **$PCP\_LOG\_DIR/pmcd/nvidia.log**

  default log file for error messages and other information from **pmdanvidia**

## PCP ENVIRONMENT

Environment variables with the prefix **PCP\_** are used to parameterize the file and directory names used by PCP. On each installation, the file */etc/pcp.conf* contains the local values for these variables. The **$PCP\_CONF** variable may be used to specify an alternative configuration file, as described in [**pcp.conf**(5)](/pcp.conf/5.md).

## DEBUGGING OPTIONS

The **-D** or **--debug** option enables the output of additional diagnostics on *stderr* to help triage problems, although the information is sometimes cryptic and primarily intended to provide guidance for developers rather than for end-users. *debug* is a comma separated list of debugging options; use [**pmdbg**(1)](/pmdbg/1.md) with the **-l** option to obtain a list of the available debugging options and their meaning.

Debugging options specific to **pmdanvidia** are as follows:

| | |
| --- | --- |
| Option | Description |
| appl0 | interaction with [**pmcd**(1)](/pmcd/1.md) |
| appl1 | loading the *libnvidia-ml* DSO |
| appl2 | trace [**select**(2)](/select/2.md) calls |

## SEE ALSO

[**PCPIntro**(1)](/PCPIntro/1.md), [**pcp-atop**(1)](/pcp-atop/1.md), [**pmcd**(1)](/pmcd/1.md), [**pmlogger**(1)](/pmlogger/1.md), [**pcp.conf**(5)](/pcp.conf/5.md) and [**pcp.env**(5)](/pcp.env/5.md).
