Scroll to navigation

PCPCOMPAT(1) General Commands Manual PCPCOMPAT(1)


PCPCompat, pcp-collectl, pmmgr, pmwebd - backward-compatibility in the Performance Co-Pilot (PCP)


The Performance Co-Pilot (PCP) is a toolkit designed for monitoring and managing system-level performance. These services are distributed and scalable to accommodate the most complex system configurations and performance problems.

In order to achieve these goals effectively, protocol and on-disk compatibility is provided between different versions of PCP. It is feasible (and indeed encouraged) to use current PCP tools to interrogate any remote, down-rev or up-rev pmcd(1) and also to replay any historical PCP archive (the PCP testsuite includes PCP archives created over 20 years ago!).

From time to time the PCP developers deprecate and remove PCP utilities, replacing them with new versions of utilities providing comparable features. This page describes replacement utilities for historical PCP tools.


Earlier versions of PCP (prior to v5.1.1) provided a shell script that was used internally by pmlogconf(1), located in the PCP_BINADM_DIR directory, named pmlogconf-setup. This script has been retired. The equivalent functionality remains available in the unlikely event it should be needed via the -s or --setup option to pmlogconf(1).

The version 1 pmlogconf-setup configuration file format (from IRIX) was also retired in this release, after more than 10 years of automatic transition to version 2 format by pmlogconf.


The standalone PCP daemon manager pmmgr has been retired from PCP v5.2.0 onward. It was phased out in favour of the simpler pmfind(1) service for setting up pmie(1) and pmlogger(1) ``farms'' of discovered PCP collector systems with pmfind_check(1). The new mechanisms, especially when integrated with systemd, require no additional daemons and are better integrated with the pmie and pmlogger service management used elsewhere in PCP.


The pcp-collectl utility has been superceded by pmrep(1) from PCP v5 onward.

The equivalent of pcp-collectl subsystem reporting is achieved as follows:

Processor subsystem view.
Memory subsystem view.
Aggregate disks view.
Per-disk-device view.
Device mapper view.
Network subsystem view.


The standalone web applications packaged with older PCP versions have been superceded by grafana-server(1) with the grafana-pcp plugin

This plugin provides an implementation of the Vector application, as well as data sources for pmdabpftrace(1) (bpftrace(8) scripts) and pmseries(1) (fast, scalable Redis-based time series analysis).


The pmwebd daemon has been superceded by pmproxy(1) from PCP v5 onward.

By default, pmproxy will now listen on both its original port (44322) and the PCP web API port (44323) when the time series support is built.

pmproxy provides a compatible implementation of the live PMWEBAPI(3) interfaces used traditionally by the Vector web application (see the ``PCP-WEBAPPS'' section). It also provides extensions to the original pmwebd REST APIs (such as derived metrics, namespace lookups and instance domain profiles), support for the HTTPS protocol, and fast, scalable time series querying using the pmseries(1) REST API and redis-server(1).

The partial Graphite API emulation provided by pmwebd has not been re-implemented - applications wishing to use similar services could use the scalable time series REST APIs described on PMWEBAPI(3).


pcp(1), pmcd(1), pmrep(1), pmfind(1), pmfind_check(1), pmlogconf(1), pmproxy(1), pmseries(1), pmdabpftrace(1), redis-server(1), grafana-server(1) and PMWEBAPI(3).

PCP Performance Co-Pilot