| # AMD Family 14 processor performance unit masks |
| # |
| # Copyright OProfile authors |
| # Copyright (c) 2006-2011 Advanced Micro Devices |
| # Contributed by Ray Bryant <raybry at amd.com>, |
| # Jason Yeh <jason.yeh at amd.com> |
| # Suravee Suthikulpanit <suravee.suthikulpanit at amd.com> |
| # Paul Drongowski <paul.drongowski at amd.com> |
| # |
| # Sources: BIOS and Kernel Developer's Guide for AMD Family 14h Processors, |
| # Publication# 43170, Revision 3.04, Feb 16, 2011 |
| # |
| # Software Optimization Guide for AMD Family 10h and Family 12h Processors, |
| # Publication# 40546, Revision 3.13, February 2011 |
| # (Note: For IBS Derived Performance Events) |
| # |
| # Revision: 1.2 |
| # |
| # ChangeLog: |
| # 1.2: 11 March 2011 |
| # - Update to BKDG Rev.3.04 |
| # |
| # 1.1: 25 January 2011. |
| # - Update to BKDG Revision 3.00 |
| # - Update minimum value for RETIRED_UOPS |
| # |
| # 1.0: 29 November 2010. |
| # - Preliminary version |
| name:zero type:mandatory default:0x00 |
| 0x00 No unit mask |
| name:fpu_ops type:bitmask default:0x03 |
| 0x01 Pipe0 (fadd, imul, mmx) ops |
| 0x02 Pipe1 (fmul, store, mmx) ops |
| 0x03 All ops |
| name:sse_ops type:bitmask default:0x7f |
| 0x01 Single Precision add/subtract ops |
| 0x02 Single precision multiply ops |
| 0x04 Single precision divide/square root ops |
| 0x08 Double precision add/subtract ops |
| 0x10 Double precision multiply ops |
| 0x20 Double precision divide/square root ops |
| 0x40 OP type: 0=uops 1=FLOPS |
| name:move_ops type:bitmask default:0x0c |
| 0x04 All other merging move uops |
| 0x08 All other move uops |
| name:serial_ops type:bitmask default:0x0f |
| 0x01 SSE bottom-executing uops retired |
| 0x02 SSE bottom-serializing uops retired |
| 0x04 x87 bottom-executing uops retired |
| 0x08 x87 bottom-serializing uops retired |
| name:retired_x87_fp type:bitmask default:0x07 |
| 0x01 Add/subtract ops |
| 0x02 Multiply ops |
| 0x04 Divide and FSQRT ops |
| name:segregload type:bitmask default:0x7f |
| 0x01 ES register |
| 0x02 CS register |
| 0x04 SS register |
| 0x08 DS register |
| 0x10 FS register |
| 0x20 GS register |
| 0x40 HS register |
| name:lock_ops type:bitmask default:0x07 |
| 0x01 Number of locked instructions executed |
| 0x02 Number cycles to acquire bus lock |
| 0x04 Number of cycles to unlock cache line (not including cache miss) |
| name:store_to_load type:bitmask default:0x07 |
| 0x01 Address mismatches (starting byte not the same) |
| 0x02 Store is smaller than load |
| 0x04 Misaligned |
| name:moess type:bitmask default:0x1e |
| 0x01 Non-cacheable return of data |
| 0x02 Shared |
| 0x04 Exclusive |
| 0x08 Owned |
| 0x10 Modified |
| 0x1e All cache states except non-cacheable |
| name:moesi type:bitmask default:0x1f |
| 0x01 Non-cacheable read data |
| 0x02 Shared |
| 0x04 Exclusive |
| 0x08 Owned |
| 0x10 Modified |
| 0x1f All cache states |
| name:moesi_gh type:bitmask default:0x1f |
| 0x01 Evicted from probe |
| 0x02 Shared eviction |
| 0x04 Exclusive eviction |
| 0x08 Owned eviction |
| 0x10 Modified eviction |
| name:l1_l2_dtlb_miss type:bitmask default:0x0f |
| 0x01 Count stores that miss L1TLB |
| 0x02 Count loads that miss L1TLB |
| 0x04 Count stores that miss L2TLB |
| 0x08 Count loads that miss L2TLB |
| name:prefetch type:bitmask default:0x07 |
| 0x01 Load (Prefetch, PrefetchT0/T1/T2) |
| 0x02 Store (PrefetchW) |
| 0x04 NTA (PrefetchNTA) |
| name:l1_dtlb_hit type:bitmask default:0x03 |
| 0x01 L1 4K TLB hit |
| 0x02 L1 2M TLB hit |
| name:soft_prefetch type:bitmask default:0x0f |
| 0x01 Software prefetch hit in the data cache |
| 0x02 Software prefetch hit a pending fill |
| 0x04 Software prefetches that don't get a MAB |
| 0x08 Software prefetch hit in L2 |
| name:memreqtype type:bitmask default:0x83 |
| 0x01 Requests to non-cacheable (UC) memory |
| 0x02 Requests to write-combining (WC) memory |
| 0x80 Streaming store (SS) requests |
| name:mab_buffer type:bitmask default:0x00 |
| 0x00 DC miss buffer 0 |
| 0x01 DC miss buffer 1 |
| 0x02 DC miss buffer 2 |
| 0x03 DC miss buffer 3 |
| 0x04 DC miss buffer 4 |
| 0x05 DC miss buffer 5 |
| 0x06 DC miss buffer 6 |
| 0x07 DC miss buffer 7 |
| 0x08 IC miss buffer 0 |
| 0x09 IC miss buffer 1 |
| 0x0a Any DC miss buffer |
| 0x0b Any IC miss buffer |
| name:systemreadresponse type:bitmask default:0x1f |
| 0x01 Exclusive |
| 0x02 Modified |
| 0x04 Shared |
| 0x08 Owned |
| 0x10 Data Error |
| 0x20 Change-to-Dirty success |
| 0x40 Uncacheable |
| name:l2_internal type:bitmask default:0x0b |
| 0x01 IC fill |
| 0x02 DC fill |
| 0x08 Tag snoop request |
| name:l2_req_miss type:bitmask default:0x03 |
| 0x01 IC fill |
| 0x02 DC fill |
| name:l2_fill type:bitmask default:0x03 |
| 0x01 L2 fills (victims from L1 caches) |
| 0x02 L2 writebacks to system |
| 0x04 IC attribute writes which access the L2 |
| 0x08 IC attribute writes which store into the L2 |
| name:pdc_miss type:bitmask default:0x77 |
| 0x01 Host: PDE Level |
| 0x02 Host: PDPE Level |
| 0x04 Host: PML4E Level |
| 0x10 Guest: PDE Level |
| 0x20 Guest: PDPE Level |
| 0x40 Guest: PML4E Level |
| name:l1_l2_itlb_miss type:bitmask default:0x03 |
| 0x01 Instruction fetches to a 4K page |
| 0x02 Instruction fetches to a 2M page |
| name:icache_invalidated type:bitmask default:0x03 |
| 0x01 IC invalidate due to an LS probe |
| 0x02 IC invalidate due to a BU probe |
| name:fpu_instr type:bitmask default:0x03 |
| 0x01 x87 or MMX(tm) instruction was retired |
| 0x02 SSE floating point instruction was retired (SSE, SSE2, SSE3, MNI) |
| name:fpu_exceptions type:bitmask default:0x0f |
| 0x01 x87 reclass microfaults |
| 0x02 SSE retype microfaults |
| 0x04 SSE reclass microfaults |
| 0x08 SSE and x87 microtraps |
| name:page_access type:bitmask default:0xc7 |
| 0x01 DCT0 Page Hit |
| 0x02 DCT0 Page Miss |
| 0x04 DCT0 Page Conflict |
| 0x40 Write request |
| 0x80 Read request |
| name:mem_page_overflow type:bitmask default:0x01 |
| 0x01 DCT0 Page Table Overflow |
| 0x02 DCT0 Number of stale table entry hits |
| 0x04 DCT0 Page table idle cycle limit incremented |
| 0x08 DCT0 Page table idle cycle limit decremented |
| 0x10 DCT0 Page table is closed due to row inactivity |
| name:slot_missed type:bitmask default:0x50 |
| 0x10 DCT0 RBD |
| 0x40 DCT0 Prefetch |
| name:turnaround type:bitmask default:0x03 |
| 0x01 DCT0 read-to-write turnaround |
| 0x02 DCT0 write-to-read turnaround |
| name:saturation type:bitmask default:0x0c |
| 0x04 D18F2x94[DcqBypassMax] counter reached |
| 0x08 Bank closed due to conflict with outstanding request in RBD queue |
| name:thermal_status type:bitmask default:0xe5 |
| 0x01 MEMHOT_L assertions |
| 0x04 Number of times the HTC transitions from inactive to active |
| 0x20 Number of clocks HTC P-state is inactive |
| 0x40 Number of clocks HTC P-state is active |
| 0x80 PROCHOT_L asserted by external source and caused P-state change |
| name:cpiorequests type:bitmask default:0x08 |
| 0x01 IO to IO |
| 0x02 IO to Mem |
| 0x04 CPU to IO |
| 0x08 CPU to Mem |
| name:cacheblock type:bitmask default:0x3d |
| 0x01 Victim Block (Writeback) |
| 0x04 Read Block (Dcache load miss refill) |
| 0x08 Read Block Shared (Icache refill) |
| 0x10 Read Block Modified (Dcache store miss refill) |
| 0x20 Change-to-Dirty (first store to clean block already in cache) |
| name:sizecmds type:bitmask default:0x3f |
| 0x01 Non-Posted SzWr Byte (1-32 bytes) |
| 0x02 Non-Posted SzWr DW (1-16 doublewords) |
| 0x04 Posted SzWr Byte (1-32 bytes) |
| 0x08 Posted SzWr DW (1-16 doublewords) |
| 0x10 SzRd Byte (4 bytes) |
| 0x20 SzRd DW (1-16 doublewords) |
| name:probe type:bitmask default:0xbf |
| 0x01 Probe miss |
| 0x02 Probe hit clean |
| 0x04 Probe hit dirty without memory cancel |
| 0x08 Probe hit dirty with memory cancel |
| 0x10 Upstream high priority reads |
| 0x20 Upstream low priority reads |
| 0x80 Upstream low priority writes |
| name:gart type:bitmask default:0x70 |
| 0x10 DEV hit |
| 0x20 DEV miss |
| 0x40 DEV error |
| name:mem_control_request type:bitmask default:0x78 |
| 0x08 32 Bytes Sized Writes |
| 0x10 64 Bytes Sized Writes |
| 0x20 32 Bytes Sized Reads |
| 0x40 64 Byte Sized Reads |
| name:sideband_signals type:bitmask default:0x1e |
| 0x02 STOPGRANT |
| 0x04 SHUTDOWN |
| 0x08 WBINVD |
| 0x10 INVD |
| name:interrupt_events type:bitmask default:0xff |
| 0x01 Fixed and LPA |
| 0x02 LPA |
| 0x04 SMI |
| 0x08 NMI |
| 0x10 INIT |
| 0x20 STARTUP |
| 0x40 INT |
| 0x80 EOI |
| name:ibs_op type:bitmask default:0x01 |
| 0x00 Using IBS OP cycle count mode |
| 0x01 Using IBS OP dispatch count mode |
| 0x02 Enable IBS OP Memory Access Log |
| 0x04 Enable IBS OP Branch Target Address Log |