# # AMD Athlon(tm)64 and AMD Opteron(tm) processor unit masks # # Copyright OProfile authors # Copyright (c) Advanced Micro Devices, 2006-2008 # Contributed by Ray Bryant , and others. # # Source: BIOS and Kernel Developer's Guide for AMD NPT Family 0Fh Processors, # Publication# 32559, Revision 3.08, July 2007 # # This file was last updated on 10 January 2008: # # Unit mask (writtentosystem) was added for the # QUADWORD_WRITE_TRANSFERS event. # name:zero type:mandatory default:0x0 0x0 No unit mask name:moesi type:bitmask default:0x1f 0x01 (I)nvalid cache state 0x02 (S)hared cache state 0x04 (E)xclusive cache state 0x08 (O)wned cache state 0x10 (M)odified cache state 0x1f All cache states name:moess type:bitmask default:0x1e 0x01 refill from system 0x02 (S)hared cache state from L2 0x04 (E)xclusive cache state from L2 0x08 (O)wned cache state from L2 0x10 (M)odified cache state from L2 0x1e All cache states except Invalid name:fpu_ops type:bitmask default:0x3f 0x01 Add pipe ops 0x02 Multiply pipe 0x04 Store pipe ops 0x08 Add pipe load ops 0x10 Multiply pipe load ops 0x20 Store pipe load 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:ecc type:bitmask default:0x03 0x01 Scrubber error 0x02 Piggyback scrubber errors name:prefetch type:bitmask default:0x07 0x01 Load 0x02 Store 0x04 NTA name:fpu_instr type:bitmask default:0x0f 0x01 x87 instructions 0x02 Combined MMX & 3DNow instructions 0x04 Combined packed SSE & SSE2 instructions 0x08 Combined packed scalar SSE & SSE2 instructions name:fpu_fastpath type:bitmask default:0x07 0x01 With low op in position 0 0x02 With low op in position 1 0x04 With low op in position 2 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:0x07 0x01 Page hit 0x02 Page miss 0x04 Page conflict name:turnaround type:bitmask default:0x07 0x01 DIMM (chip select) turnaround 0x02 Read to write turnaround 0x04 Write to read turnaround name:saturation type:bitmask default:0x0f 0x01 Memory controller high priority bypass 0x02 Memory controller low priority bypass 0x04 DRAM controller interface bypass 0x08 DRAM controller queue bypass name:sizecmds type:bitmask default:0x7f 0x01 Non-posted write byte 0x02 Non-posted write dword 0x04 Posted write byte 0x08 Posted write dword 0x10 Read byte (4 bytes) 0x20 Read dword (1-16 dwords) 0x40 Read-modify-write name:probe type:bitmask default:0x0f 0x01 Probe miss 0x02 Probe hit clean 0x04 Probe hit dirty without memory cancel 0x08 Probe hit dirty with memory cancel 0x10 Upstream display refresh reads 0x20 Upstream non-display refresh reads 0x40 Upstream writes (RevD and later) name:ht type:bitmask default:0x7 0x01 Command sent 0x02 Data sent 0x04 Buffer release sent 0x08 NOP sent name:l2_internal type:bitmask default:0x1f 0x01 IC fill 0x02 DC fill 0x04 TLB fill (page table walk) 0x08 Tag snoop request 0x10 Cancelled request name:l2_req_miss type:bitmask default:0x07 0x01 IC fill 0x02 DC fill 0x04 TLB page table walk name:l2_fill type:bitmask default:0x03 0x01 L2 fills (victims from L1 caches, TLB page table walks and data prefetches) 0x02 L2 writebacks to system name:gart type:bitmask default:0x07 0x01 GART aperture hit on access from CPU 0x02 GART aperture hit on access from I/O 0x04 GART miss name:sizedblocks type:bitmask default:0x3c 0x04 32-byte Sized Writes (RevD and later) 0x08 64-byte Sized Writes (RevD and later) 0x10 32-byte Sized Reads (RevD and later) 0x20 64-byte Sized Reads (RevD and later) name:cpiorequests type:bitmask default:0xa2 0xa1 Requests Local I/O to Local I/O 0xa2 Requests Local I/O to Local Memory 0xa3 Requests Local I/O to Local (I/O or Mem) 0xa4 Requests Local CPU to Local I/O 0xa5 Requests Local (CPU or I/O) to Local I/O 0xa8 Requests Local CPU to Local Memory 0xaa Requests Local (CPU or I/O) to Local Memory 0xac Requests Local CPU to Local (I/O or Mem) 0xaf Requests Local (CPU or I/O) to Local (I/O or Mem) 0x91 Requests Local I/O to Remote I/O 0x92 Requests Local I/O to Remote Memory 0x93 Requests Local I/O to Remote (I/O or Mem) 0x94 Requests Local CPU to Remote I/O 0x95 Requests Local (CPU or I/O) to Remote I/O 0x98 Requests Local CPU to Remote Memory 0x9a Requests Local (CPU or I/O) to Remote Memory 0x9c Requests Local CPU to Remote (I/O or Mem) 0x9f Requests Local (CPU or I/O) to Remote (I/O or Mem) 0xb1 Requests Local I/O to Any I/O 0xb2 Requests Local I/O to Any Memory 0xb3 Requests Local I/O to Any (I/O or Mem) 0xb4 Requests Local CPU to Any I/O 0xb5 Requests Local (CPU or I/O) to Any I/O 0xb8 Requests Local CPU to Any Memory 0xba Requests Local (CPU or I/O) to Any Memory 0xbc Requests Local CPU to Any (I/O or Mem) 0xbf Requests Local (CPU or I/O) to Any (I/O or Mem) 0x61 Requests Remote I/O to Local I/O 0x64 Requests Remote CPU to Local I/O 0x65 Requests Remote (CPU or I/O) to Local I/O 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:dataprefetch type:bitmask default:0x03 0x01 Cancelled prefetches 0x02 Prefetch attempts name:memreqtype type:bitmask default:0x83 0x01 Requests to non-cacheable (UC) memory 0x02 Requests to write-combining (WC) memory or WC buffer flushes to WB memory 0x80 Streaming store (SS) requests name:systemreadresponse type:bitmask default:0x7 0x01 Exclusive 0x02 Modified 0x04 Shared name:writtentosystem type:bitmask default:0x1 0x01 Quadword write transfer # BKDG 3.28 does not include unit_mask of 0x01 for "accesses by Locked instructions" name:dcachemisslocked type:bitmask default:0x02 0x02 Data cache misses by locked instructions name:locked_ops type:bitmask default:0x04 0x01 The number of locked instructions executed 0x02 The number of cycles spent in speculative phase 0x04 The number of cycles spent in non-speculative phase (including cache miss penalty) name:thermalecc type:bitmask default:0x80 0x01 Number of clocks CPU is active when HTC is active (RevF) 0x02 Number of clocks CPU clock is inactive when HTC is active (RevF) 0x04 Number of clocks when die temperature is higher than the software high temperature threshold (RevF) 0x08 Number of clocks when high temperature threshold was exceeded (RevF) 0x80 Number of correctable and uncorrectable DRAM ECC errors (RevE)