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

# pmUnregisterDerived(3)

unregister a derived metric

## NAME

**pmUnregisterDerived**  - unregister a derived metric

## C SYNOPSIS

**#include \<pcp/pmapi.h\>**

**int pmUnregisterDerived(char \****name***);**

**cc ... -lpcp**

## DESCRIPTION

Derived metrics provide a way of extending the Performance Metrics Name Space (PMNS) with new metrics defined at the PCP client-side using expressions over the existing performance metrics.

Global derived metrics are created by calling [**pmRegisterDerived**(3)](/pmRegisterDerived/3.md), [**pmRegisterDerivedMetric**(3)](/pmRegisterDerivedMetric/3.md) or [**pmLoadDerivedConfig**(3)](/pmLoadDerivedConfig/3.md). Per-context derived metrics are created by calling [**pmAddDerived**(3)](/pmAddDerived/3.md) or [**pmAddDerivedMetric**(3)](/pmAddDerivedMetric/3.md).

**pmUnregisterDerived** removes the definition of the derived metric *name* from the set of glabal derived metrics and from every active PMAPI context.

## DIAGNOSTICS

On success, **pmUnregisterDerived** returns a value greater than or equal to zero being the number of contexts from which *name* was removed.

Othewise **pmUnregisterDerived** returns a PMAPI error and the application should call [**pmErrStr**(3)](/pmErrStr/3.md) to retrieve the corresponding error message.

## SEE ALSO

[**PCPIntro**(1)](/PCPIntro/1.md), [**PMAPI**(3)](/PMAPI/3.md), [**pmAddDerived**(3)](/pmAddDerived/3.md), [**pmAddDerivedMetric**(3)](/pmAddDerivedMetric/3.md), [**pmErrStr**(3)](/pmErrStr/3.md), [**pmLoadDerivedConfig**(3)](/pmLoadDerivedConfig/3.md), [**pmRegisterDerived**(3)](/pmRegisterDerived/3.md), [**pmRegisterDerivedMetric**(3)](/pmRegisterDerivedMetric/3.md) and [**PMNS**(5)](/PMNS/5.md).
