NAME
pmc.dmc-620 – measure the Arm DMC-620 Dynamic Memory Controller performance counter events.
LIBRARY
library “libpmc”
SYNOPSIS
#include <pmc.h>
DESCRIPTION
DMC-620 PMU counters may be configured to count any one of a defined set of hardware events.
Arm CoreLink DMC-620 Dynamic Memory Controller performance counters are documented in “Revision: r0p0”, ARM CoreLink DMC-620 Dynamic Memory Controller Technical Reference Manual, ARM Limited, 2017.
PMC Capabilities
DMC-620 PMU counters support the following capabilities:
| Capability | Support |
| PMC_CAP_CASCADE | No |
| PMC_CAP_EDGE | No |
| PMC_CAP_INTERRUPT | Yes |
| PMC_CAP_INVERT | Yes |
| PMC_CAP_READ | Yes |
| PMC_CAP_PRECISE | No |
| PMC_CAP_SYSTEM | Yes |
| PMC_CAP_TAGGING | No |
| PMC_CAP_THRESHOLD | Yes |
| PMC_CAP_USER | No |
| PMC_CAP_WRITE | Yes |
Event Qualifiers
Event specifiers for these PMCs support the following common qualifiers:
- inc=value
-
Two-bit value that controls direction of count for PMC. Behavior depend on selected event.
- inv
-
Invert the sense of comparison.
- match=value
-
Count only events matched by value.
- mask=qualifier
-
Allow to apply qualifier mask to compared value.
Class Name Prefix
These PMCs use a class name prefix of “DMC620_CD2_” or “DMC620_C_”.
Event Specifiers
The following PMC events are available:
| clkdiv2_cycle_count |
| clkdiv2_allocate |
| clkdiv2_queue_depth |
| clkdiv2_waiting_for_wr_data |
| clkdiv2_read_backlog |
| clkdiv2_waiting_for_mi |
| clkdiv2_hazard_resolution |
| clkdiv2_enqueue |
| clkdiv2_arbitrate |
| clkdiv2_lrank_turnaround_activate |
| clkdiv2_prank_turnaround_activate |
| clkdiv2_read_depth |
| clkdiv2_write_depth |
| clkdiv2_highhigh_qos_depth |
| clkdiv2_high_qos_depth |
| clkdiv2_medium_qos_depth |
| clkdiv2_low_qos_depth |
| clkdiv2_activate |
| clkdiv2_rdwr |
| clkdiv2_refresh |
| clkdiv2_training_request |
| clkdiv2_t_mac_tracker |
| clkdiv2_bk_fsm_tracker |
| clkdiv2_bk_open_tracker |
| clkdiv2_ranks_in_pwr_down |
| clkdiv2_ranks_in_sref |
| clk_cycle_count |
| clk_request |
| clk_upload_stall |
SEE ALSO
pmc(3), pmc.amd(3), pmc.atom(3), pmc.core(3), pmc.core2(3), pmc.corei7(3), pmc.corei7uc(3), pmc.iaf(3), pmc.soft(3), pmc.tsc(3), pmc.westmere(3), pmc.westmereuc(3), pmc_cpuinfo(3), pmclog(3), hwpmc(4)
HISTORY
The pmc library first appeared in FreeBSD 6.0.
The pmc.dmc-620 driver was added in FreeBSD 14.0.
AUTHORS
The library “libpmc” library was written by Joseph Koshy ⟨[email protected]⟩. Oleksandr Rybalko ⟨[email protected]⟩.
The DMC-620 PMU driver was sponsored by Ampere Computing LLC. This manual page was written by Oleksandr Rybalko ⟨[email protected]⟩.