xref: /freebsd/lib/libpmc/pmc.cmn-600.3 (revision c7046f76c2c027b00c0e6ba57cfd28f1a78f5e23)
1.\" Copyright (c) 2021 ARM Ltd.  All rights reserved.
2.\"
3.\" Redistribution and use in source and binary forms, with or without
4.\" modification, are permitted provided that the following conditions
5.\" are met:
6.\" 1. Redistributions of source code must retain the above copyright
7.\"    notice, this list of conditions and the following disclaimer.
8.\" 2. Redistributions in binary form must reproduce the above copyright
9.\"    notice, this list of conditions and the following disclaimer in the
10.\"    documentation and/or other materials provided with the distribution.
11.\"
12.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
13.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
14.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
16.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
17.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
18.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
19.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
20.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
21.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
22.\" SUCH DAMAGE.
23.\"
24.\" $FreeBSD$
25.\"
26.Dd December 19, 2021
27.Dt PMC.CMN-600 3
28.Os
29.Sh NAME
30.Nm pmc.cmn-600
31.Nd Library for accessing the Arm CoreLink CMN-600 Coherent Mesh Network
32Controller performance counter events
33.Sh LIBRARY
34.Lb libpmc
35.Sh SYNOPSIS
36.In pmc.h
37.Sh DESCRIPTION
38CMN-600 PMU counters may be configured to count any one of a defined set of
39hardware events.
40Unlike other performance counters, counters for the CMN-600 require the
41node ID to set up.
42.Pp
43Node ID information currently can be obtained one of two ways.
44Using bootverbose, for example set sysctl debug.bootverbose=1 and then load the
45.Xr hwpmc 4
46KLD module.
47The cmn600 module will be loaded automatically as a dependency:
48.Dl $ sysctl debug.bootverbose=1
49.Dl $ kldload hwpmc
50Another way is to use sysctl to trigger
51dump of nodes tree to system console:
52.Dl $ sysctl dev.cmn600.0.dump_nodes=1
53.Pp
54Some BIOS versions of dual-socket machines have no NUMA domain information in
55ACPI.
56In such cases, to get more accurate events statistics, set the kernel
57environment variable hint.cmn600.{unit}.domain={value}.
58Where {unit} is a cmn600 device unit number and {value} is the NUMA domain of
59the CPU package containing that CMN-600 controller.
60Example:
61.Dl $ kenv hint.cmn600.0.domain=0
62.Dl $ kenv hint.cmn600.1.domain=1
63.Dl $ kldunload hwpmc cmn600
64.Dl $ kldload hwpmc
65.Pp
66Arm CoreLink CMN-600 Coherent Mesh Network Controller performance counters are
67documented in
68.Rs
69.%B "Arm CoreLink CMN-600 Coherent Mesh Network Technical Reference Manual"
70.%T "Revision: r3p2"
71.%D 2020
72.%Q "ARM Limited"
73.Re
74.Ss PMC Capabilities
75CMN-600 PMU counters support the following capabilities:
76.Bl -column "PMC_CAP_INTERRUPT" "Support"
77.It Sy Capability Ta Em Support
78.It PMC_CAP_CASCADE Ta \&No
79.It PMC_CAP_EDGE Ta \&No
80.It PMC_CAP_INTERRUPT Ta Yes
81.It PMC_CAP_INVERT Ta \&No
82.It PMC_CAP_READ Ta Yes
83.It PMC_CAP_PRECISE Ta \&No
84.It PMC_CAP_SYSTEM Ta Yes
85.It PMC_CAP_TAGGING Ta \&No
86.It PMC_CAP_THRESHOLD Ta Yes
87.It PMC_CAP_USER Ta \&No
88.It PMC_CAP_WRITE Ta Yes
89.El
90.Ss Event Qualifiers
91Event specifiers for these PMCs support the following common
92qualifiers:
93.Bl -tag -width indent
94.It Li nodeid= Ns Ar nodeid
95Request counting for specific event at node
96.Ar nodeid .
97.It Li occupancy= Ns Ar value
98Filtering by occupancy type.
99.It Li xpport= Ns Ar port
100Count only events matched by
101.Ar port .
102(East, West, North, South, devport0, devport1 or numeric 0 to 5)
103.It Li xpchannel= Ns Ar channel
104Filter events by XP node channel.
105(REQ, RSP, SNP, DAT or 0, 1, 2, 3)
106.El
107.Ss Class Name Prefix
108These PMCs are named using a class name prefix of
109.Dq Li CMN600_PMU_ .
110.Ss Event Specifiers
111The following list of PMC events are available:
112.Ss DVM node events
113.Bl -tag -width indent
114.It Sy dn_rxreq_dvmop
115Number of DVMOP requests received.
116This includes all the sub-types include TLB invalidate, Branch predictor
117invalidate, instruction cache (physical and virtual) invalidate.
118.It Sy dn_rxreq_dvmsync
119Number of DVM Sync requests received.
120.It Sy dn_rxreq_dvmop_vmid_filtered
121Number of incoming DVMOP requests that are subject to VMID based filtering.
122This is a measure of the effectiveness of VMID based filtering and potential
123reduction in DVM snoops.
124.It Sy dn_rxreq_retried
125Number of incoming requests that are retried.
126This is a measure of the retry rate.
127.It Sy dn_rxreq_trk_occupancy
128Counts the tracker occupancy in DN. "occupancy": All, dvmop, dvmsync
129.It Sy dn_rxreq_tlbi_dvmop
130Number of DVMOP TLB invalidate requests received.
131.It Sy dn_rxreq_bpi_dvmop
132Number of DVMOP Branch predictor invalidate requests received.
133.It Sy dn_rxreq_pici_dvmop
134Number of DVMOP physical instruction cache invalidate requests received.
135.It Sy dn_rxreq_vivi_dvmop
136Number of DVMOP virtual instruction cache invalidate requests received.
137.It Sy dn_rxreq_dvmop_other_filtered
138Number of DVM op requests to RNDs, BPI or PICI/VICI, that were filtered
139.It Sy dn_rxreq_snp_sent
140Number of SNPs sent to RNs
141.It Sy dn_rxreq_snp_stalled
142Number of SNPs stalled to RNs due to lack of Crds
143.It Sy dn_rxreq_trk_full
144DVM tracker full counter
145.El
146.Ss HN-F node events
147.Bl -tag -width indent
148.It Sy hnf_cache_miss
149Counts total cache misses in first lookup result (high priority)
150.It Sy hnf_slc_sf_cache_access
151Counts number of cache accesses in first access (high priority)
152.It Sy hnf_cache_fill
153Counts total allocations in HN SLC (all cache line allocations to SLC)
154.It Sy hnf_pocq_retry
155Counts number of retried requests
156.It Sy hnf_pocq_reqs_recvd
157Counts number of requests received by HN
158.It Sy hnf_sf_hit
159Counts number of SF hits
160.It Sy hnf_sf_evictions
161Counts number of SF eviction cache invalidations initiated
162.It Sy hnf_dir_snoops_sent
163Counts number of directed snoops sent (not including SF back invalidation)
164.It Sy hnf_brd_snoops_sent
165Counts number of multicast snoops sent (not including SF back invalidation)
166.It Sy hnf_slc_eviction
167Counts number of SLC evictions (dirty only)
168.It Sy hnf_slc_fill_invalid_way
169Counts number of SLC fills to an invalid way
170.It Sy hnf_mc_retries
171Counts number of retried transactions by the MC
172.It Sy hnf_mc_reqs
173Counts number of requests sent to MC
174.It Sy hnf_qos_hh_retry
175Counts number of times a HighHigh priority request is protocol-retried at the
176HN-F
177.It Sy hnf_qos_pocq
178Counts the POCQ occupancy in HN-F.
179Support argument "occupancy". Accept: All, Read, Write, Atomic, Stash.
180Default: All.
181.It Sy hnf_pocq_addrhaz
182Counts number of POCQ address hazards upon allocation
183.It Sy hnf_pocq_atomic_addrhaz
184Counts number of POCQ address hazards upon allocation for atomic operations
185.It Sy hnf_ld_st_swp_adq_full
186Counts number of times ADQ is full for Ld/St/SWP type atomic operations while
187POCQ has pending operations
188.It Sy hnf_cmp_adq_full
189Counts number of times ADQ is full for CMP type atomic operations while POCQ
190has pending operations
191.It Sy hnf_txdat_stall
192Counts number of times HN-F has a pending TXDAT flit but no credits to upload
193.It Sy hnf_txrsp_stall
194Counts number of times HN-F has a pending TXRSP flit but no credits to upload
195.It Sy hnf_seq_full
196Counts number of times requests are replayed in SLC pipe due to SEQ being full
197.It Sy hnf_seq_hit
198Counts number of times a request in SLC hit a pending SF eviction in SEQ
199.It Sy hnf_snp_sent
200Counts number of snoops sent including directed, multicast, and SF back
201invalidation
202.It Sy hnf_sfbi_dir_snp_sent
203Counts number of times directed snoops were sent due to SF back invalidation
204.It Sy hnf_sfbi_brd_snp_sent
205Counts number of times multicast snoops were sent due to SF back invalidation
206.It Sy hnf_snp_sent_untrk
207Counts number of times snooped were sent due to untracked RNF's
208.It Sy hnf_intv_dirty
209Counts number of times SF back invalidation resulted in dirty line intervention
210from the RN
211.It Sy hnf_stash_snp_sent
212Counts number of times stash snoops were sent
213.It Sy hnf_stash_data_pull
214Counts number of times stash snoops resulted in data pull from the RN
215.It Sy hnf_snp_fwded
216Counts number of times data forward snoops were sent
217.El
218.Ss HN-I node events
219.Bl -tag -width indent
220.It Sy hni_rrt_rd_occ_cnt_ovfl
221RRT read occupancy count overflow
222.It Sy hni_rrt_wr_occ_cnt_ovfl
223RRT write occupancy count overflow
224.It Sy hni_rdt_rd_occ_cnt_ovfl
225RDT read occupancy count overflow
226.It Sy hni_rdt_wr_occ_cnt_ovfl
227RDT write occupancy count overflow
228.It Sy hni_wdb_occ_cnt_ovfl
229WDB occupancy count overflow
230.It Sy hni_rrt_rd_alloc
231RRT read allocation
232.It Sy hni_rrt_wr_alloc
233RRT write allocation
234.It Sy hni_rdt_rd_alloc
235RDT read allocation
236.It Sy hni_rdt_wr_alloc
237RDT write allocation
238.It Sy hni_wdb_alloc
239WDB allocation
240.It Sy hni_txrsp_retryack
241RETRYACK TXRSP flit sent
242.It Sy hni_arvalid_no_arready
243ARVALID set without ARREADY event
244.It Sy hni_arready_no_arvalid
245ARREADY set without ARVALID event
246.It Sy hni_awvalid_no_awready
247AWVALID set without AWREADY event
248.It Sy hni_awready_no_awvalid
249AWREADY set without AWVALID event
250.It Sy hni_wvalid_no_wready
251WVALID set without WREADY event
252.It Sy hni_txdat_stall
253TXDAT stall (TXDAT valid but no link credit available)
254.It Sy hni_nonpcie_serialization
255Non-PCIe serialization event
256.It Sy hni_pcie_serialization
257PCIe serialization event
258.El
259.Ss XP node events
260.Bl -tag -width indent
261.It Sy xp_txflit_valid
262Number of flits transmitted on a specified port and CHI channel.
263This is a measure of the flit transfer bandwidth from an XP.
264Note: On device ports, this event also includes link flit transfers.
265.It Sy xp_txflit_stall
266Number of cycles when a flit is stalled at an XP waiting for link credits at a
267specified port and CHI channel.
268This is a measure of the flit traffic congestion on the mesh and at the flit
269download ports.
270.It Sy xp_partial_dat_flit
271Number of times when a partial DAT flit is uploaded onto the mesh from a
272RN-F_CHIA port.
273Partial DAT flit transmission occurs when XP is not able to combine two 128b
274DAT flits and send them over the 256b DAT channel.
275This can happen under 2 circumstances:
2761. Only one 128b DAT flit is received within a transmission time window.
2772. Two 128b DAT flits are received but they are not two halves of a
278   single 256b word.
279.El
280.Ss SBSX node events
281.Bl -tag -width indent
282.It Sy sbsx_rd_req
283Read request
284.It Sy sbsx_wr_req
285Write request
286.It Sy sbsx_cmo_req
287CMO request
288.It Sy sbsx_txrsp_retryack
289RETRYACK TXRSP flit sent
290.It Sy sbsx_txdat_flitv
291TXDAT flit seen
292.It Sy sbsx_txrsp_flitv
293TXRSP flit seen
294.It Sy sbsx_rd_req_trkr_occ_cnt_ovfl
295Read request tracker occupancy count overflow
296.It Sy sbsx_wr_req_trkr_occ_cnt_ovfl
297Write request tracker occupancy count overflow
298.It Sy sbsx_cmo_req_trkr_occ_cnt_ovfl
299CMO request tracker occupancy count overflow
300.It Sy sbsx_wdb_occ_cnt_ovfl
301WDB occupancy count overflow
302.It Sy sbsx_rd_axi_trkr_occ_cnt_ovfl
303Read AXI pending tracker occupancy count overflow
304.It Sy sbsx_cmo_axi_trkr_occ_cnt_ovfl
305CMO AXI pending tracker occupancy count overflow
306.It Sy sbsx_arvalid_no_arready
307ARVALID set without ARREADY
308.It Sy sbsx_awvalid_no_awready
309AWVALID set without AWREADY
310.It Sy sbsx_wvalid_no_wready
311WVALID set without WREADY
312.It Sy sbsx_txdat_stall
313TXDAT stall (TXDAT valid but no link credit available)
314.It Sy sbsx_txrsp_stall
315TXRSP stall (TXRSP valid but no link credit available)
316.El
317.Ss RN-D node events
318.Bl -tag -width indent
319.It Sy rnd_s0_rdata_beats
320Number of RData beats, RVALID and RREADY, dispatched on port 0.
321This is a measure of the read bandwidth, including CMO responses.
322.It Sy rnd_s1_rdata_beats
323Number of RData beats, RVALID and RREADY, dispatched on port 1.
324This is a measure of the read bandwidth, including CMO responses.
325.It Sy rnd_s2_rdata_beats
326Number of RData beats, RVALID and RREADY, dispatched on port 2.
327This is a measure of the read bandwidth, including CMO responses.
328.It Sy rnd_rxdat_flits
329Number of RXDAT flits received.
330This is a measure of the true read data bandwidth, excluding CMOs.
331.It Sy rnd_txdat_flits
332Number of TXDAT flits dispatched.
333This is a measure of the write bandwidth.
334.It Sy rnd_txreq_flits_total
335Number of TXREQ flits dispatched.
336This is a measure of the total request
337bandwidth.
338.It Sy rnd_txreq_flits_retried
339Number of retried TXREQ flits dispatched.
340This is a measure of the retry rate.
341.It Sy rnd_rrt_occ_ovfl
342All entries in the read request tracker are occupied.
343This is a measure of oversubscription in the read request tracker.
344.It Sy rnd_wrt_occ_ovfl
345All entries in the write request tracker are occupied.
346This is a measure of oversubscription in the write request tracker.
347.It Sy rnd_txreq_flits_replayed
348Number of replayed TXREQ flits.
349This is the measure of replay rate.
350.It Sy rnd_wrcancel_sent
351Number of write data cancels sent.
352This is the measure of write cancel rate.
353.It Sy rnd_s0_wdata_beats
354Number of WData beats, WVALID and WREADY, dispatched on port 0.
355This is a measure of write bandwidth on AXI port 0.
356.It Sy rnd_s1_wdata_beats
357Number of WData beats, WVALID and WREADY, dispatched on port 1.
358This is a measure of write bandwidth on AXI port 1.
359.It Sy rnd_s2_wdata_beats
360Number of WData beats, WVALID and WREADY, dispatched on port 2.
361This is a measure of write bandwidth on AXI port 2.
362.It Sy rnd_rrt_alloc
363Number of allocations in the read request tracker.
364This is a measure of read transaction count.
365.It Sy rnd_wrt_alloc
366Number of allocations in the write request tracker.
367This is a measure of write transaction count.
368.It Sy rnd_rdb_unord
369Number of cycles for which Read Data Buffer state machine is in Unordered Mode.
370.It Sy rnd_rdb_replay
371Number of cycles for which Read Data Buffer state machine is in Replay mode
372.It Sy rnd_rdb_hybrid
373Number of cycles for which Read Data Buffer state machine is in hybrid mode.
374Hybrid mode is where there is mix of ordered/unordered traffic.
375.It Sy rnd_rdb_ord
376Number of cycles for which Read Data Buffer state machine is in ordered Mode.
377.El
378.Ss RN-I node events
379.Bl -tag -width indent
380.It Sy rni_s0_rdata_beats
381Number of RData beats, RVALID and RREADY, dispatched on port 0.
382This is a measure of the read bandwidth, including CMO responses.
383.It Sy rni_s1_rdata_beats
384Number of RData beats, RVALID and RREADY, dispatched on port 1.
385This is a measure of the read bandwidth, including CMO responses.
386.It Sy rni_s2_rdata_beats
387Number of RData beats, RVALID and RREADY, dispatched on port 2.
388This is a measure of the read bandwidth, including CMO responses.
389.It Sy rni_rxdat_flits
390Number of RXDAT flits received.
391This is a measure of the true read data bandwidth, excluding CMOs.
392.It Sy rni_txdat_flits
393Number of TXDAT flits dispatched.
394This is a measure of the write bandwidth.
395.It Sy rni_txreq_flits_total
396Number of TXREQ flits dispatched.
397This is a measure of the total request bandwidth.
398.It Sy rni_txreq_flits_retried
399Number of retried TXREQ flits dispatched.
400This is a measure of the retry rate.
401.It Sy rni_rrt_occ_ovfl
402All entries in the read request tracker are occupied.
403This is a measure of oversubscription in the read request tracker.
404.It Sy rni_wrt_occ_ovfl
405All entries in the write request tracker are occupied.
406This is a measure of oversubscription in the write request tracker.
407.It Sy rni_txreq_flits_replayed
408Number of replayed TXREQ flits.
409This is the measure of replay rate.
410.It Sy rni_wrcancel_sent
411Number of write data cancels sent.
412This is the measure of write cancel rate
413.It Sy rni_s0_wdata_beats
414Number of WData beats, WVALID and WREADY, dispatched on port 0.
415This is a measure of write bandwidth on AXI port 0.
416.It Sy rni_s1_wdata_beats
417Number of WData beats, WVALID and WREADY, dispatched on port 1.
418This is a measure of write bandwidth on AXI port 1.
419.It Sy rni_s2_wdata_beats
420Number of WData beats, WVALID and WREADY, dispatched on port 2.
421This is a measure of write bandwidth on AXI port 2.
422.It Sy rni_rrt_alloc
423Number of allocations in the read request tracker.
424This is a measure of read transaction count.
425.It Sy rni_wrt_alloc
426Number of allocations in the write request tracker.
427This is a measure of write transaction count
428.It Sy rni_rdb_unord
429Number of cycles for which Read Data Buffer state machine is in Unordered Mode.
430.It Sy rni_rdb_replay
431Number of cycles for which Read Data Buffer state machine is in Replay mode
432.It Sy rni_rdb_hybrid
433Number of cycles for which Read Data Buffer state machine is in hybrid mode.
434Hybrid mode is where there is mix of ordered/unordered traffic.
435.It Sy rni_rdb_ord
436Number of cycles for which Read Data Buffer state machine is in ordered Mode.
437.El
438.Ss CXHA node events
439.Pq Note: CXHA events descriptions are guessed
440.Bl -tag -width indent
441.It Sy cxha_rddatbyp
442Number of Read DAT Bypass
443.It Sy cxha_chirsp_up_stall
444Number of CHI RSP up Stall
445.It Sy cxha_chidat_up_stall
446Number of CHI DAT up Stall
447.It Sy cxha_snppcrd_lnk0_stall
448Number of Snoop Pcrd Stall on Link 0
449.It Sy cxha_snppcrd_lnk1_stall
450Number of Snoop Pcrd Stall on Link 1
451.It Sy cxha_snppcrd_lnk2_stall
452Number of Snoop Pcrd Stall on Link 2
453.It Sy cxha_reqtrk_occ
454Request Tracker Occupancy
455.It Sy cxha_rdb_occ
456Read Data Buffer Occupancy
457.It Sy cxha_rdbbyp_occ
458Read Data Buffer Bypass Occupancy
459.It Sy cxha_wdb_occ
460Write Data Buffer Occupancy
461.It Sy cxha_snptrk_occ
462Snoop Tracker Occupancy
463.It Sy cxha_sdb_occ
464SDB Occupancy
465.It Sy cxha_snphaz_occ
466Snoop Hazard Occupancy
467.El
468.Ss CXRA node events
469.Bl -tag -width indent
470.It Sy cxra_req_trk_occ
471Request tracker occupancy
472.It Sy cxra_snp_trk_occ
473Snoop tracker occupancy
474.It Sy cxra_rd_dat_buf_occ
475Read data buffer occupancy
476.It Sy cxra_wr_dat_buf_occ
477Write data buffer occupancy
478.It Sy cxra_snp_sink_buf_occ
479Snoop sink buffer occupancy
480.It Sy cxra_snp_bcasts
481Snoop broadcasts
482.It Sy cxra_req_chains
483Number of request chains formed larger than one
484.It Sy cxra_req_chain_avg_len
485Average size of request chains, only for chain sizes larger than one
486.It Sy cxra_chi_rsp_upload_stalls
487Local RA upload stalls to CHI because of contention with HA
488.It Sy cxra_chi_dat_upload_stalls
489Local RA upload stalls to CHI because of contention with HA
490.It Sy cxra_dat_pcrd_stalls_lnk0
491Memory Data Request available, but no DAT Pcrd to send over CCIX per LinkEnd 0
492.It Sy cxra_dat_pcrd_stalls_lnk1
493Memory Data Request available, but no DAT Pcrd to send over CCIX per LinkEnd 1
494.It Sy cxra_dat_pcrd_stalls_lnk2
495Memory Data Request available, but no DAT Pcrd to send over CCIX per LinkEnd 2
496.It Sy cxra_req_pcrd_stalls_lnk0
497Memory Data Request available but no Req Pcrd to send over CCIX per LinkEnd 0
498.It Sy cxra_req_pcrd_stalls_lnk1
499Memory Data Request available but no Req Pcrd to send over CCIX per LinkEnd 1
500.It Sy cxra_req_pcrd_stalls_lnk2
501Memory Data Request available but no Req Pcrd to send over CCIX per LinkEnd 2
502.It Sy cxra_ext_rsp_stall
503CHI external RSP stall
504.It Sy cxra_ext_dat_stall
505CHI external DAT stall
506.El
507.Ss CXLA node events
508.Bl -tag -width indent
509.It Sy cxla_rx_tlp_link0
510RX TLP for Link 0
511.It Sy cxla_rx_tlp_link1
512RX TLP for Link 1
513.It Sy cxla_rx_tlp_link2
514RX TLP for Link 2
515.It Sy cxla_tx_tlp_link0
516TX TLP for Link 0
517.It Sy cxla_tx_tlp_link1
518TX TLP for Link 1
519.It Sy cxla_tx_tlp_link2
520TX TLP for Link 2
521.It Sy cxla_rx_cxs_link0
522RX CXS for Link 0
523.It Sy cxla_rx_cxs_link1
524RX CXS for Link 1
525.It Sy cxla_rx_cxs_link2
526RX CXS for Link 2
527.It Sy cxla_tx_cxs_link0
528TX CXS for Link 0
529.It Sy cxla_tx_cxs_link1
530TX CXS for Link 1
531.It Sy cxla_tx_cxs_link2
532TX CXS for Link 2
533.It Sy cxla_avg_rx_tlp_sz_dws
534Average RX TLP size in DWs
535.It Sy cxla_avg_tx_tlp_sz_dws
536Average TX TLP size in DWs
537.It Sy cxla_avg_rx_tlp_sz_ccix_msg
538Average RX TLP size in CCIX messages
539.It Sy cxla_avg_tx_tlp_sz_ccix_msg
540Average TX TLP size in CCIX messages
541.It Sy cxla_avg_sz_rx_cxs_dw_beat
542Average size of RX CXS in DWs within a beat
543.It Sy cxla_avg_sz_tx_cxs_dw_beat
544Average size of TX CXS in DWs within a beat
545.It Sy cxla_tx_cxs_link_credit_backpressure
546TX CXS link credit backpressure
547.It Sy cxla_rx_tlp_buffer_full
548RX TLP buffer full and backpressured
549.It Sy cxla_tx_tlp_buffer_full
550TX TLP buffer full and backpressured
551.It Sy cxla_avg_latency_process_rx_tlp
552Average latency to process an RX TLP
553.It Sy cxla_avg_latency_form_tx_tlp
554Average latency to form a TX TLP
555.El
556.Sh SEE ALSO
557.Xr pmc 3 ,
558.Xr pmc.atom 3 ,
559.Xr pmc.core 3 ,
560.Xr pmc.core2 3 ,
561.Xr pmc.corei7 3 ,
562.Xr pmc.corei7uc 3 ,
563.Xr pmc.iaf 3 ,
564.Xr pmc.iaf 3 ,
565.Xr pmc.k7 3 ,
566.Xr pmc.k8 3 ,
567.Xr pmc.p4 3 ,
568.Xr pmc.p5 3 ,
569.Xr pmc.p6 3 ,
570.Xr pmc.soft 3 ,
571.Xr pmc.tsc 3 ,
572.Xr pmc.westmere 3 ,
573.Xr pmc.westmereuc 3 ,
574.Xr pmc_cpuinfo 3 ,
575.Xr pmclog 3 ,
576.Xr hwpmc 4
577.Sh HISTORY
578The
579.Nm pmc
580library first appeared in
581.Fx 6.0 .
582.br
583The
584.Nm pmc.cmn-600
585driver was added in
586.Fx 14.0 .
587.Sh AUTHORS
588.An -nosplit
589The
590.Lb libpmc
591library was written by
592.An Joseph Koshy Aq Mt jkoshy@FreeBSD.org ,
593.An Oleksandr Rybalko Aq Mt ray@FreeBSD.org .
594.br
595The CMN-600 PMU driver was sponsored by ARM Ltd.
596This manual page was written by
597.An Oleksandr Rybalko Aq Mt ray@FreeBSD.org .
598