unit_masks revision 7a33c86eb98056ef0570c99e713214f8dc56b6ef
1#
2# AMD Family 10 processor unit masks
3#
4# Copyright OProfile authors
5# Copyright (c) 2006-2008 Advanced Micro Devices
6# Contributed by Ray Bryant <raybry at amd.com>,
7#		Jason Yeh <jason.yeh at amd.com>
8#		Suravee Suthikulpanit <suravee.suthikulpanit at amd.com>
9#
10# Sources: BIOS and Kernel Developer's Guide for AMD Family 10h Processors,
11#          Publication# 31116, Revision 3.34, September 2009
12#
13#          Software Optimization Guide for AMD Family 10h Processors,
14#          Publication# 40546, Revision 3.04, September 2007
15#
16# Revision: 1.3
17#
18# ChangeLog: 
19#	1.3: 22 October 2009.
20# 	- Update from BKDG Rev 3.28 to Rev 3.34 (no change)
21#	- Modify unitmasks l3_evict
22#
23#	1.2: 03 June 2009.
24# 	- Update from BKDG Rev 3.20 to Rev 3.28
25#	- Add Event 4EDh
26#	- Modify unitmasks for 4E0h-4E3h
27#
28#	1.1: 06 April 2009.
29# 	- Add IBS-derived events
30# 	- Update from BKDG Rev 3.00 to Rev 3.20
31# 	- Add Events 165h, 1c0h, 1cfh, 1d3h-1d5h
32#
33name:zero type:mandatory default:0x0
34	0x0 No unit mask
35name:moesi type:bitmask default:0x1f
36	0x01 (I)nvalid cache state
37	0x02 (S)hared cache state
38	0x04 (E)xclusive cache state
39	0x08 (O)wner cache state
40	0x10 (M)odified cache state
41	0x1f All cache states
42name:moess type:bitmask default:0x1e
43	0x01 Refill from northbridge
44	0x02 Shared-state line from L2
45	0x04 Exclusive-state line from L2
46	0x08 Owner-state line from L2
47	0x10 Modified-state line from L2
48	0x1e All cache states except refill from northbridge
49name:fpu_ops type:bitmask default:0x3f
50	0x01 Add pipe ops excluding load ops and SSE move ops
51	0x02 Multiply pipe ops excluding load ops and SSE move ops
52	0x04 Store pipe ops excluding load ops and SSE move ops 
53	0x08 Add pipe load ops and SSE move ops
54	0x10 Multiply pipe load ops and SSE move ops
55	0x20 Store pipe load ops and SSE move ops
56	0x3f All ops
57name:segregload type:bitmask default:0x7f
58	0x01 ES register
59	0x02 CS register
60	0x04 SS register
61	0x08 DS register
62	0x10 FS register
63	0x20 GS register
64	0x40 HS register
65name:fpu_instr type:bitmask default:0x07
66	0x01 x87 instructions
67	0x02 MMX & 3DNow instructions
68	0x04 SSE instructions (SSE, SSE2, SSE3, and SSE4A)
69name:fpu_fastpath type:bitmask default:0x07
70	0x01 With low op in position 0
71	0x02 With low op in position 1
72	0x04 With low op in position 2
73name:fpu_exceptions type:bitmask default:0x0f
74	0x01 x87 reclass microfaults
75	0x02 SSE retype microfaults
76	0x04 SSE reclass microfaults
77	0x08 SSE and x87 microtraps
78name:page_access type:bitmask default:0x3f
79	0x01 DCT0 Page hit
80	0x02 DCT0 Page miss
81	0x04 DCT0 Page conflict
82	0x08 DCT1 Page hit
83	0x10 DCT1 Page miss
84	0x20 DCT1 Page Conflict
85name:mem_page_overflow  type:bitmask default:0x03
86	0x01 DCT0 Page Table Overflow
87	0x02 DCT1 Page Table Overflow
88name:turnaround type:bitmask default:0x3f
89	0x01 DCT0 DIMM (chip select) turnaround
90	0x02 DCT0 Read to write turnaround
91	0x04 DCT0 Write to read turnaround
92	0x08 DCT1 DIMM (chip select) turnaround
93	0x10 DCT1 Read to write turnaround
94	0x20 DCT1 Write to read turnaround
95name:saturation type:bitmask default:0x0f
96	0x01 Memory controller high priority bypass
97	0x02 Memory controller medium priority bypass
98	0x04 DCT0 DCQ bypass
99	0x08 DCT1 DCQ bypass
100name:slot_missed  type:bitmask default:0x03
101	0x01 DCT0 Command slots missed
102	0x02 DCT2 Command slots missed
103name:sizecmds type:bitmask default:0x3f
104	0x01 Non-posted write byte (1-32 bytes)
105	0x02 Non-posted write DWORD (1-16 DWORDs)
106	0x04 Posted write byte (1-32 bytes)
107	0x08 Posted write DWORD (1-16 DWORDs)
108	0x10 Read byte (4 bytes)
109	0x20 Read DWORD (1-16 DWORDs)
110name:probe type:bitmask default:0xff
111	0x01 Probe miss
112	0x02 Probe hit clean
113	0x04 Probe hit dirty without memory cancel
114	0x08 Probe hit dirty with memory cancel
115	0x10 Upstream display refresh/ISOC reads
116	0x20 Upstream non-display refresh reads
117	0x40 Upstream ISOC writes
118	0x80 Upstream non-ISOC writes
119name:l2_internal type:bitmask default:0x3f
120	0x01 IC fill
121	0x02 DC fill
122	0x04 TLB fill (page table walks)
123	0x08 Tag snoop request
124	0x10 Canceled request
125	0x20 Hardware prefetch from data cache
126name:l2_req_miss type:bitmask default:0x0f
127	0x01 IC fill
128	0x02 DC fill (includes possible replays)
129	0x04 TLB page table walk
130	0x08 Hardware prefetch from data cache
131name:l2_fill type:bitmask default:0x03
132	0x01 L2 fills (victims from L1 caches, TLB page table walks and data prefetches)
133	0x02 L2 writebacks to system
134name:gart type:bitmask default:0xff
135	0x01 GART aperture hit on access from CPU
136	0x02 GART aperture hit on access from I/O
137	0x04 GART miss
138	0x08 GART/DEV request hit table walk in progress
139	0x10 DEV hit
140	0x20 DEV miss
141	0x40 DEV error
142	0x80 GART/DEV multiple table walk in progress
143name:cpiorequests type:bitmask default:0xa2
144	0xa1 Requests Local I/O to Local I/O
145	0xa2 Requests Local I/O to Local Memory
146	0xa3 Requests Local I/O to Local (I/O or Mem) 
147	0xa4 Requests Local CPU to Local I/O
148	0xa5 Requests Local (CPU or I/O) to Local I/O
149	0xa8 Requests Local CPU to Local Memory
150	0xaa Requests Local (CPU or I/O) to Local Memory
151	0xac Requests Local CPU to Local (I/O or Mem)
152	0xaf Requests Local (CPU or I/O) to Local (I/O or Mem)
153	0x91 Requests Local I/O to Remote I/O
154	0x92 Requests Local I/O to Remote Memory
155	0x93 Requests Local I/O to Remote (I/O or Mem)
156	0x94 Requests Local CPU to Remote I/O
157	0x95 Requests Local (CPU or I/O) to Remote I/O
158	0x98 Requests Local CPU to Remote Memory
159	0x9a Requests Local (CPU or I/O) to Remote Memory
160	0x9c Requests Local CPU to Remote (I/O or Mem)
161	0x9f Requests Local (CPU or I/O) to Remote (I/O or Mem)
162	0xb1 Requests Local I/O to Any I/O
163	0xb2 Requests Local I/O to Any Memory
164	0xb3 Requests Local I/O to Any (I/O or Mem)
165	0xb4 Requests Local CPU to Any I/O
166	0xb5 Requests Local (CPU or I/O) to Any I/O
167	0xb8 Requests Local CPU to Any Memory
168	0xba Requests Local (CPU or I/O) to Any Memory
169	0xbc Requests Local CPU to Any (I/O or Mem)
170	0xbf Requests Local (CPU or I/O) to Any (I/O or Mem)
171	0x61 Requests Remote I/O to Local I/O
172	0x64 Requests Remote CPU to Local I/O
173	0x65 Requests Remote (CPU or I/O) to Local I/O
174name:cacheblock type:bitmask default:0x3d
175	0x01 Victim Block (Writeback)
176	0x04 Read Block (Dcache load miss refill)
177	0x08 Read Block Shared (Icache refill)
178	0x10 Read Block Modified (Dcache store miss refill)
179	0x20 Change-to-Dirty (first store to clean block already in cache)
180name:dataprefetch type:bitmask default:0x03
181	0x01 Cancelled prefetches
182	0x02 Prefetch attempts
183name:memreqtype type:bitmask default:0x83
184	0x01 Requests to non-cacheable (UC) memory
185	0x02 Requests to write-combining (WC) memory or WC buffer flushes to WB memory
186	0x80 Streaming store (SS) requests
187name:systemreadresponse type:bitmask default:0x1f
188	0x01 Exclusive
189	0x02 Modified
190	0x04 Shared
191	0x08 Owned
192	0x10 Data Error
193name:l1_dtlb_miss_l2_hit type:bitmask default:0x07
194	0x01 L2 4K TLB hit
195	0x02 L2 2M TLB hit
196	0x04 L2 1G TLB hit (RevC)
197name:l1_l2_dtlb_miss type:bitmask default:0x07
198	0x01 4K TLB reload
199	0x02 2M TLB reload
200	0x04 1G TLB reload
201name:ecc type:bitmask default:0x0f
202	0x01 Scrubber error
203	0x02 Piggyback scrubber errors
204	0x04 Load pipe error
205	0x08 Store write pip error
206name:prefetch type:bitmask default:0x07
207	0x01 Load (Prefetch, PrefetchT0/T1/T2)
208	0x02 Store (PrefetchW)
209	0x04 NTA (PrefetchNTA)
210name:locked_instruction_dcache_miss type:bitmask default:0x02
211	0x02 Data cache misses by locked instructions
212name:octword_transfer type:bitmask  default:0x01
213	0x01 Octword write transfer
214name:thermal_status  type:bitmask default:0x7c
215	0x04 Number of times the HTC trip point is crossed
216	0x08 Number of clocks when STC trip point active
217	0x10 Number of times the STC trip point is crossed
218	0x20 Number of clocks HTC P-state is inactive
219	0x40 Number of clocks HTC P-state is active
220name:mem_control_request type:bitmask default:0x78
221	0x01 Write requests
222	0x02 Read Requests including Prefetch
223	0x04 Prefetch Request
224	0x08 32 Bytes Sized Writes
225	0x10 64 Bytes Sized Writes
226	0x20 32 Bytes Sized Reads
227	0x40 64 Byte Sized Reads
228	0x80 Read requests sent to the DCT while write requests are pending in the DCQ
229name:httransmit type:bitmask default:0xbf
230	0x01 Command DWORD sent
231	0x02 Data DWORD sent
232	0x04 Buffer release DWORD sent
233	0x08 Nop DW sent (idle)
234	0x10 Address DWORD sent
235	0x20 Per packet CRC sent
236	0x80 SubLink Mask
237name:lock_ops type:bitmask default:0x0f
238	0x01 Number of locked instructions executed
239	0x02 Cycles in speculative phase
240	0x04 Cycles in non-speculative phase (including cache miss penalty)
241	0x08 Cache miss penalty in cycles 
242name:sse_ops type:bitmask default:0x7f
243	0x01 Single Precision add/subtract ops
244	0x02 Single precision multiply ops
245	0x04 Single precision divide/square root ops
246	0x08 Double precision add/subtract ops
247	0x10 Double precision multiply ops
248	0x20 Double precision divide/square root ops
249	0x40 OP type: 0=uops 1=FLOPS
250name:move_ops type:bitmask default:0x0f
251	0x01 Merging low quadword move uops
252	0x02 Merging high quadword move uops
253	0x04 All other merging move uops
254	0x08 All other move uops
255name:serial_ops type:bitmask default:0x0f
256	0x01 SSE bottom-executing uops retired
257	0x02 SSE bottom-serializing uops retired
258	0x04 x87 bottom-executing uops retired
259	0x08 x87 bottom-serializing uops retired
260name:serial_ops_sched type:bitmask default:0x03
261	0x01 Number of cycles a bottom-execute uops in FP scheduler
262	0x02 Number of cycles a bottom-serializing uops in FP scheduler
263name:store_to_load type:bitmask default:0x07
264	0x01 Address mismatches (starting byte not the same)
265	0x02 Store is smaller than load
266	0x04 Misaligned
267name:moesi_gh type:bitmask default:0x1f
268	0x01 (I)nvalid cache state
269	0x02 (S)hared cache state
270	0x04 (E)xclusive cache state
271	0x08 (O)wner cache state
272	0x10 (M)odified cache state
273	0x20 Cache line evicted brought into the cache by PrefetchNTA
274	0x40 Cache line evicted not brought into the cache by PrefetchNTA
275name:l1_dtlb_hit type:bitmask default:0x07
276	0x01 L1 4K TLB hit
277	0x02 L1 2M TLB hit
278	0x04 L1 1G TLB hit
279name:soft_prefetch type:bitmask default:0x09
280	0x01 Software prefetch hit in L1
281	0x08 Software prefetch hit in L2
282name:l1_l2_itlb_miss type:bitmask default:0x03
283	0x01 Instruction fetches to a 4K page
284	0x02 Instruction fetches to a 2M page	
285name:cpu_dram_req type:bitmask default:0xff
286	0x01 From local node to node 0
287	0x02 From local node to node 1
288	0x04 From local node to node 2
289	0x08 From local node to node 3
290	0x10 From local node to node 4
291	0x20 From local node to node 5
292	0x40 From local node to node 6
293	0x80 From local node to node 7
294name:io_dram_req type:bitmask default:0xff
295	0x01 From local node to node 0
296	0x02 From local node to node 1
297	0x04 From local node to node 2
298	0x08 From local node to node 3
299	0x10 From local node to node 4
300	0x20 From local node to node 5
301	0x40 From local node to node 6
302	0x80 From local node to node 7
303name:cpu_read_lat_0_3 type:bitmask default:0xff
304	0x01 Read block 
305	0x02 Read block shared
306	0x04 Read block modified
307	0x08 Change-to-Dirty
308	0x10 From local node to node 0
309	0x20 From local node to node 1
310	0x40 From local node to node 2
311	0x80 From local node to node 3
312name:cpu_read_lat_4_7 type:bitmask default:0xff
313	0x01 Read block 
314	0x02 Read block shared
315	0x04 Read block modified
316	0x08 Change-to-Dirty
317	0x10 From local node to node 4
318	0x20 From local node to node 5
319	0x40 From local node to node 6
320	0x80 From local node to node 7
321name:cpu_comm_lat type:bitmask default:0xf7
322	0x01 Read sized
323	0x02 Write sized
324	0x04 Victim block
325	0x08 Node group select: 0=Nodes 0-3, 1=Nodes 4-7
326	0x10 From local node to node 0/4
327	0x20 From local node to node 1/5
328	0x40 From local node to node 2/6
329	0x80 From local node to node 3/7
330name:l3_cache type:bitmask default:0xf7
331	0x01 Read block Exclusive (Data cache read)
332	0x02 Read block Shared (Instruciton cache read)
333	0x04 Read block Modify
334	0x10 Reserved (Must be selected)
335	0x20 Reserved (Must be selected)
336	0x40 Reserved (Must be selected)
337	0x80 Reserved (Must be selected)
338name:l3_fill type:bitmask default:0xff
339	0x01 Shared
340	0x02 Exclusive
341	0x04 Owned
342	0x08 Modified
343	0x10 Reserved (Must be selected)
344	0x20 Reserved (Must be selected)
345	0x40 Reserved (Must be selected)
346	0x80 Reserved (Must be selected)
347name:l3_evict type:bitmask default:0x0f
348	0x01 Shared
349	0x02 Exclusive
350	0x04 Owned
351	0x08 Modified
352name:icache_invalidated type:bitmask default:0x03
353	0x01 Invalidating probe that did not hit any in-flight instructions
354	0x02 Invalidating probe that hit one or more in-flight instructions
355name:page_size_mismatches type:bitmask default:0x07
356	0x01 Guest page size is larger than the host page size
357	0x02 MTRR mismatch
358	0x04 Host page size is larger than the guest page size
359name:retired_x87_fp type:bitmask default:0x07
360	0x01 Add/subtract ops
361	0x02 Multiply ops
362	0x04 Divide ops
363name:ibs_op type:bitmask default:0x01
364	0x00 Using IBS OP cycle count mode
365	0x01 Using IBS OP dispatch count mode
366	0x02 Enable IBS OP Memory Access Log 
367name:non_cancelled_l3_read_requests type:bitmask default:0xf7
368	0x01 RbBlk
369	0x02 RbBlkS
370	0x04 RbBlkM
371	0x10 Reserved (Must be selected)
372	0x20 Reserved (Must be selected)
373	0x40 Reserved (Must be selected)
374	0x80 Reserved (Must be selected)
375