Intel Performance Counter Monitor (Intel PCM) 简介¶
Intel Performance Counter Monitor (Intel PCM) 是Intel公司开发的用于监控Intel处理器的性能和功耗的API以及基于这个API的一系列工具。PCM可以在Linux, Windows, Mac OS X, FreeBSD等操作系统工作 。
警告
根据 pcm
输出可以看到对CPU硬件以及操作系统配置有强要求,我的输出信息中有部分错误,待后续实践改进
PCM提供了一系列命令行工具用于实时监控:
pcm
:基础的处理器监控工具(每个cycle的指令,核心频率-包括 Intel Turbo Boost技术和intel_pstate ,内存,Intel快速路径内部连接带宽(Intel Quick Patch Interconnct bandwidth),本地和远程内存带宽,缓存未命中,core和CPU封装(CPU package)睡眠C-state定位(residency),core和CPU封装的热余量(thermal headroom),缓存使用,CPU和内存能耗(energy consumption)。
Processor Counter Monitor (202201-1)
Linux arch_perfmon flag : yes
Hybrid processor : no
IBRS and IBPB supported : yes
STIBP supported : yes
Spec arch caps supported : no
Number of physical cores: 24
Number of logical cores: 48
Number of online logical cores: 48
Threads (logical cores) per physical core: 2
Num sockets: 2
Physical cores per socket: 12
Last level cache slices per socket: 12
Core PMU (perfmon) version: 3
Number of core PMU generic (programmable) counters: 4
Width of generic (programmable) counters: 48 bits
Number of core PMU fixed counters: 3
Width of fixed counters: 48 bits
Nominal core frequency: 2300000000 Hz
IBRS enabled in the kernel : no
STIBP enabled in the kernel : no
Package thermal spec power: 120 Watt; Package minimum power: 61 Watt; Package maximum power: 240 Watt;
INFO: Linux perf interface to program uncore PMUs is present
ERROR: QPI LL monitoring device (0:7f:8:2) is missing. The QPI statistics will be incomplete or missing.
ERROR: QPI LL monitoring device (0:7f:9:2) is missing. The QPI statistics will be incomplete or missing.
Socket 0: 2 memory controllers detected with total number of 4 channels. 0 QPI ports detected. 0 M2M (mesh to memory) blocks detected. 2 Home Agents detected. 0 M3UPI blocks detected.
ERROR: QPI LL monitoring device (0:ff:8:2) is missing. The QPI statistics will be incomplete or missing.
ERROR: QPI LL monitoring device (0:ff:9:2) is missing. The QPI statistics will be incomplete or missing.
Socket 1: 2 memory controllers detected with total number of 4 channels. 0 QPI ports detected. 0 M2M (mesh to memory) blocks detected. 2 Home Agents detected. 0 M3UPI blocks detected.
INFO: using Linux resctrl driver for RDT metrics (L3OCC, LMB, RMB) because resctrl driver is mounted.
INFO: can't create directory /sys/fs/resctrl/mon_groups/pcm47 error: No space left on device
INFO: can't create directory /pcm/sys/fs/resctrl/mon_groups/pcm47 error: No such file or directory
ERROR: RDT metrics (L3OCC,LMB,RMB) will not be available
Disabling NMI watchdog since it consumes one hw-PMU counter.
Trying to use Linux perf events...
Successfully programmed on-core PMU using Linux perf
Detected Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz "Intel(r) microarchitecture codename Haswell-EP/EN/EX" stepping 2 microcode level 0x49
EXEC : instructions per nominal CPU cycle
IPC : instructions per CPU cycle
FREQ : relation to nominal CPU frequency='unhalted clock ticks'/'invariant timer ticks' (includes Intel Turbo Boost)
AFREQ : relation to nominal CPU frequency while in active state (not in power-saving C state)='unhalted clock ticks'/'invariant timer ticks while in C0-state' (includes Intel Turbo Boost)
L3MISS: L3 (read) cache misses
L2MISS: L2 (read) cache misses (including other core's L2 cache *hits*)
L3HIT : L3 (read) cache hit ratio (0.00-1.00)
L2HIT : L2 cache hit ratio (0.00-1.00)
L3MPI : number of L3 (read) cache misses per instruction
L2MPI : number of L2 (read) cache misses per instruction
READ : bytes read from main memory controller (in GBytes)
WRITE : bytes written to main memory controller (in GBytes)
LOCAL : ratio of local memory requests to memory controller in %
LLCRDMISSLAT: average latency of last level cache miss for reads and prefetches (in ns)
L3OCC : L3 occupancy (in KBytes)
TEMP : Temperature reading in 1 degree Celsius relative to the TjMax temperature (thermal headroom): 0 corresponds to the max temperature
energy: Energy in Joules
Core (SKT) | EXEC | IPC | FREQ | AFREQ | L3MISS | L2MISS | L3HIT | L2HIT | L3MPI | L2MPI | L3OCC | TEMP
0 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 2496 46
1 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 912 42
2 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 240 42
3 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 0 44
4 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 240 39
5 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 3696 43
6 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 96 43
7 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 144 45
8 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 336 44
9 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 384 44
10 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 240 44
11 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 192 43
12 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 2448 37
13 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1296 38
14 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 288 38
15 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 384 36
16 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 480 38
17 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 528 40
18 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 528 39
19 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1680 38
20 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 384 38
21 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 2496 38
22 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 2112 39
23 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 432 40
24 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1344 46
25 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1872 42
26 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 2160 42
27 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1248 44
28 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1584 39
29 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1248 43
30 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1440 43
31 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1872 45
32 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 720 44
33 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1200 44
34 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 528 44
35 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 3360 43
36 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 144 37
37 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1392 38
38 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 2880 38
39 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 336 36
40 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 336 38
41 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1632 40
42 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1008 39
43 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1680 38
44 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 336 38
45 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 1536 38
46 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 768 39
47 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 0 40
---------------------------------------------------------------------------------------------------------------
SKT 0 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 27552 36
SKT 1 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan 25104 29
---------------------------------------------------------------------------------------------------------------
TOTAL * 0.00 -1.00 0.00 -1.00 0 0 -nan -nan -nan -nan N/A N/A
Instructions retired: 0 ; Active cycles: 0 ; Time (TSC): 2301 Mticks ; C0 (active,non-halted) core residency: 0.00 %
C1 core residency: 100.00 %; C3 core residency: 0.00 %; C6 core residency: 0.00 %; C7 core residency: 0.00 %;
C0 package residency: 100.00 %; C2 package residency: 0.00 %; C3 package residency: 0.00 %; C6 package residency: 0.00 %; C7 package residency: 0.00 %;
┌────────────────────────────────────────────────────────────────────────────────┐
Core C-state distribution│11111111111111111111111111111111111111111111111111111111111111111111111111111111│
└────────────────────────────────────────────────────────────────────────────────┘
┌────────────────────────────────────────────────────────────────────────────────┐
Package C-state distribution│00000000000000000000000000000000000000000000000000000000000000000000000000000000│
└────────────────────────────────────────────────────────────────────────────────┘
PHYSICAL CORE IPC : -1.00 => corresponds to -25.00 % utilization for cores in active state
Instructions per nominal CPU cycle: 0.00 => corresponds to 0.00 % core utilization over time interval
SMI count: 384
---------------------------------------------------------------------------------------------------------------
MEM (GB)->| READ | WRITE | LOCAL | CPU energy | DIMM energy | LLCRDMISSLAT (ns) UncFREQ (Ghz)
---------------------------------------------------------------------------------------------------------------
SKT 0 0.11 0.07 55 % 38.63 13.18 171.31 1.30
SKT 1 0.23 0.09 42 % 41.56 13.15 155.01 2.09
---------------------------------------------------------------------------------------------------------------
* 0.34 0.16 46 % 80.19 26.33 158.78 1.70
...
pcm-sensor-server
: 通过http以JSON
或者 Prometheus监控 (基于文本的 pcm-exporter :Intel Performance Counter Monitor (Intel PCM) Prometheus exporter )格式输出pcm-memory
: 监控内存带宽(每个通道和每个DRAM DIMM rank):
|---------------------------------------||---------------------------------------|
|-- Socket 0 --||-- Socket 1 --|
|---------------------------------------||---------------------------------------|
|-- Memory Channel Monitoring --||-- Memory Channel Monitoring --|
|---------------------------------------||---------------------------------------|
|-- Mem Ch 0: Reads (MB/s): 15.17 --||-- Mem Ch 0: Reads (MB/s): 50.66 --|
|-- Writes(MB/s): 4.41 --||-- Writes(MB/s): 18.68 --|
|-- Mem Ch 1: Reads (MB/s): 31.52 --||-- Mem Ch 1: Reads (MB/s): 66.41 --|
|-- Writes(MB/s): 20.22 --||-- Writes(MB/s): 34.28 --|
|-- Mem Ch 2: Reads (MB/s): 12.01 --||-- Mem Ch 2: Reads (MB/s): 45.03 --|
|-- Writes(MB/s): 3.31 --||-- Writes(MB/s): 16.70 --|
|-- Mem Ch 3: Reads (MB/s): 19.72 --||-- Mem Ch 3: Reads (MB/s): 53.46 --|
|-- Writes(MB/s): 11.05 --||-- Writes(MB/s): 24.90 --|
|-- NODE 0 Mem Read (MB/s) : 78.43 --||-- NODE 1 Mem Read (MB/s) : 215.56 --|
|-- NODE 0 Mem Write(MB/s) : 39.00 --||-- NODE 1 Mem Write(MB/s) : 94.55 --|
|-- NODE 0 P. Write (T/s): 367273 --||-- NODE 1 P. Write (T/s): 367376 --|
|-- NODE 0 Memory (MB/s): 117.43 --||-- NODE 1 Memory (MB/s): 310.11 --|
|---------------------------------------||---------------------------------------|
|---------------------------------------||---------------------------------------|
|-- System Read Throughput(MB/s): 293.99 --|
|-- System Write Throughput(MB/s): 133.56 --|
|-- System Memory Throughput(MB/s): 427.54 --|
|---------------------------------------||---------------------------------------|
pcm-accel
: 监控Intel® In-Memory Analytics Accelerator (Intel® IAA), Intel® Data Streaming Accelerator (Intel® DSA) and Intel® QuickAssist Technology (Intel® QAT) accelerators (我没有这样的设备)pcm-latency
: 监控一级缓存未命中和DDR/PMM内存延迟
Linux arch_perfmon flag : yes
Hybrid processor : no
IBRS and IBPB supported : yes
STIBP supported : yes
Spec arch caps supported : no
Number of physical cores: 24
Number of logical cores: 48
Number of online logical cores: 48
Threads (logical cores) per physical core: 2
Num sockets: 2
Physical cores per socket: 12
Last level cache slices per socket: 12
Core PMU (perfmon) version: 3
Number of core PMU generic (programmable) counters: 4
Width of generic (programmable) counters: 48 bits
Number of core PMU fixed counters: 3
Width of fixed counters: 48 bits
Nominal core frequency: 2300000000 Hz
IBRS enabled in the kernel : no
STIBP enabled in the kernel : no
Package thermal spec power: 120 Watt; Package minimum power: 61 Watt; Package maximum power: 240 Watt;
INFO: Linux perf interface to program uncore PMUs is present
ERROR: QPI LL monitoring device (0:7f:8:2) is missing. The QPI statistics will be incomplete or missing.
ERROR: QPI LL monitoring device (0:7f:9:2) is missing. The QPI statistics will be incomplete or missing.
Socket 0: 2 memory controllers detected with total number of 4 channels. 0 QPI ports detected. 0 M2M (mesh to memory) blocks detected. 2 Home Agents detected. 0 M3UPI blocks detected.
ERROR: QPI LL monitoring device (0:ff:8:2) is missing. The QPI statistics will be incomplete or missing.
ERROR: QPI LL monitoring device (0:ff:9:2) is missing. The QPI statistics will be incomplete or missing.
Socket 1: 2 memory controllers detected with total number of 4 channels. 0 QPI ports detected. 0 M2M (mesh to memory) blocks detected. 2 Home Agents detected. 0 M3UPI blocks detected.
INFO: using Linux resctrl driver for RDT metrics (L3OCC, LMB, RMB) because resctrl driver is mounted.
INFO: can't create directory /sys/fs/resctrl/mon_groups/pcm47 error: No space left on device
INFO: can't create directory /pcm/sys/fs/resctrl/mon_groups/pcm47 error: No such file or directory
ERROR: RDT metrics (L3OCC,LMB,RMB) will not be available
Processor Counter Monitor (202201-1)
This utility measures Latency information
Zeroed PMU registers
Disabling NMI watchdog since it consumes one hw-PMU counter.
Trying to use Linux perf events...
Successfully programmed on-core PMU using Linux perf
Detected Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz "Intel(r) microarchitecture codename Haswell-EP/EN/EX" stepping 2 microcode level 0x49
L1 Cache Miss Latency(ns) [Adding 5 clocks for L1 Miss]
Socket0 Thread0 Socket0 Thread1 Socket1 Thread0 Socket1 Thread1
-----------------------------------------------------------------------------
Core0: 26.08 Core24: 30.57 Core12: 28.93 Core36: 26.99
Core1: 33.00 Core25: 29.26 Core13: 13.35 Core37: 20.50
Core2: 29.75 Core26: 56.78 Core14: 28.49 Core38: 27.29
Core3: 25.98 Core27: 34.38 Core15: 22.65 Core39: 19.47
Core4: 35.67 Core28: 22.83 Core16: 26.46 Core40: 24.02
Core5: 23.09 Core29: 33.36 Core17: 11.70 Core41: 10.86
Core6: 38.93 Core30: 28.42 Core18: 24.24 Core42: 23.72
Core7: 39.09 Core31: 32.63 Core19: 22.90 Core43: 25.60
Core8: 26.83 Core32: 32.83 Core20: 24.49 Core44: 26.04
Core9: 22.35 Core33: 31.06 Core21: 24.24 Core45: 24.95
Core10: 37.98 Core34: 46.32 Core22: 20.42 Core46: 26.92
Core11: 38.32 Core35: 29.63 Core23: 28.23 Core47: 24.63
Average latency per socket
L1 Cache Miss Latency(ns) [Adding 5 clocks for L1 Miss]
Socket0: 31.51
Socket1: 19.49
L1 Cache Miss Latency(ns) [Adding 5 clocks for L1 Miss]
Socket0 Thread0 Socket0 Thread1 Socket1 Thread0 Socket1 Thread1
-----------------------------------------------------------------------------
Core0: 30.63 Core24: 27.58 Core12: 24.57 Core36: 21.19
Core1: 36.94 Core25: 28.57 Core13: 12.89 Core37: 22.71
Core2: 30.51 Core26: 27.58 Core14: 23.16 Core38: 23.67
Core3: 28.05 Core27: 25.70 Core15: 23.72 Core39: 11.70
Core4: 24.67 Core28: 23.68 Core16: 30.68 Core40: 19.35
Core5: 24.89 Core29: 32.60 Core17: 10.92 Core41: 29.32
Core6: 27.62 Core30: 25.31 Core18: 24.47 Core42: 25.52
Core7: 25.39 Core31: 28.01 Core19: 18.23 Core43: 20.15
Core8: 31.38 Core32: 31.19 Core20: 22.05 Core44: 19.38
Core9: 21.41 Core33: 25.64 Core21: 21.48 Core45: 22.75
Core10: 32.58 Core34: 27.83 Core22: 23.87 Core46: 27.36
Core11: 37.08 Core35: 27.46 Core23: 22.85 Core47: 22.98
Average latency per socket
L1 Cache Miss Latency(ns) [Adding 5 clocks for L1 Miss]
Socket0: 27.38
Socket1: 18.51
....
pcm-pcie
: 监视每个socket的PCIe带宽
Processor Counter Monitor: PCIe Bandwidth Monitoring Utility
This utility measures PCIe bandwidth in real-time
PCIe event definitions (each event counts as a transfer):
PCIe read events (PCI devices reading from memory - application writes to disk/network/PCIe device):
PCIePRd - PCIe UC read transfer (partial cache line)
PCIeRdCur* - PCIe read current transfer (full cache line)
On Haswell Server PCIeRdCur counts both full/partial cache lines
RFO* - Demand Data RFO
CRd* - Demand Code Read
DRd - Demand Data Read
PCIeNSWr - PCIe Non-snoop write transfer (partial cache line)
PCIe write events (PCI devices writing to memory - application reads from disk/network/PCIe device):
PCIeWiLF - PCIe Write transfer (non-allocating) (full cache line)
PCIeItoM - PCIe Write transfer (allocating) (full cache line)
PCIeNSWr - PCIe Non-snoop write transfer (partial cache line)
PCIeNSWrF - PCIe Non-snoop write transfer (full cache line)
ItoM - PCIe write full cache line
RFO - PCIe partial Write
CPU MMIO events (CPU reading/writing to PCIe devices):
PRd - MMIO Read [Haswell Server only] (Partial Cache Line)
WiL - MMIO Write (Full/Partial)
* - NOTE: Depending on the configuration of your BIOS, this tool may report '0' if the message
has not been selected.
Linux arch_perfmon flag : yes
Hybrid processor : no
IBRS and IBPB supported : yes
STIBP supported : yes
Spec arch caps supported : no
Number of physical cores: 24
Number of logical cores: 48
Number of online logical cores: 48
Threads (logical cores) per physical core: 2
Num sockets: 2
Physical cores per socket: 12
Last level cache slices per socket: 12
Core PMU (perfmon) version: 3
Number of core PMU generic (programmable) counters: 4
Width of generic (programmable) counters: 48 bits
Number of core PMU fixed counters: 3
Width of fixed counters: 48 bits
Nominal core frequency: 2300000000 Hz
IBRS enabled in the kernel : no
STIBP enabled in the kernel : no
Package thermal spec power: 120 Watt; Package minimum power: 61 Watt; Package maximum power: 240 Watt;
INFO: Linux perf interface to program uncore PMUs is present
ERROR: QPI LL monitoring device (0:7f:8:2) is missing. The QPI statistics will be incomplete or missing.
ERROR: QPI LL monitoring device (0:7f:9:2) is missing. The QPI statistics will be incomplete or missing.
Socket 0: 2 memory controllers detected with total number of 4 channels. 0 QPI ports detected. 0 M2M (mesh to memory) blocks detected. 2 Home Agents detected. 0 M3UPI blocks detected.
ERROR: QPI LL monitoring device (0:ff:8:2) is missing. The QPI statistics will be incomplete or missing.
ERROR: QPI LL monitoring device (0:ff:9:2) is missing. The QPI statistics will be incomplete or missing.
Socket 1: 2 memory controllers detected with total number of 4 channels. 0 QPI ports detected. 0 M2M (mesh to memory) blocks detected. 2 Home Agents detected. 0 M3UPI blocks detected.
INFO: using Linux resctrl driver for RDT metrics (L3OCC, LMB, RMB) because resctrl driver is mounted.
INFO: can't create directory /sys/fs/resctrl/mon_groups/pcm47 error: No space left on device
INFO: can't create directory /pcm/sys/fs/resctrl/mon_groups/pcm47 error: No such file or directory
ERROR: RDT metrics (L3OCC,LMB,RMB) will not be available
Update every 1 seconds
Detected Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz "Intel(r) microarchitecture codename Haswell-EP/EN/EX" stepping 2 microcode level 0x49
Skt | PCIRdCur | RFO | CRd | DRd | ItoM | PRd | WiL
0 952 5516 60 M 10 M 14 350 280
1 0 42 26 M 15 M 14 0 490
------------------------------------------------------------------
* 952 5558 86 M 26 M 28 350 770
Skt | PCIRdCur | RFO | CRd | DRd | ItoM | PRd | WiL
0 1260 2296 42 M 13 M 0 364 196
1 0 56 25 M 9362 K 0 0 490
------------------------------------------------------------------
* 1260 2352 68 M 23 M 0 364 686
...
pcm-iio
: 监视每个PCIe设备的带宽(需要CPU支持 Intel Resource Director Technology(RDT) 我的E5-2670 v3 @ 2.30GHz
支持不完整,在这个命令直接退出,后续再研究一下 Intel Resource Director Technology(RDT) )pcm-numa
: 检查 NUMA架构 本地和远程内存访问pcm-power
: 监控处理器的睡眠和能源状态、Intel Quick Path Interconnect、DRAM 内存、CPU 频率限制的原因以及其他能源相关指标pcm-tsx
: 监控 Intel 事务同步扩展(Transactional Synchronization Extensions)的性能指标pcm-core
和pmu-query
:查询和监视任意处理器核心事件pcm-raw
:通过指定原始寄存器事件 ID 编码来编程任意核心和非核心事件pcm-bw-histogram
:收集内存带宽利用率直方图
和监控平台集成¶
通过 pcm-exporter :Intel Performance Counter Monitor (Intel PCM) Prometheus exporter 可以将 pcm
的监控指标输出到 Intel PCM Grafana
安装¶
主流发行版已经集成提供了 pcm
软件包,例如 Ubuntu Linux 安装非常方便:
sudo apt install pcm -y