14e411ee4SZhengjun Xing[
24e411ee4SZhengjun Xing    {
354f5de6fSIan Rogers        "BriefDescription": "Cycles - at UCLK",
454f5de6fSIan Rogers        "EventCode": "0x01",
554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_CLOCKTICKS",
654f5de6fSIan Rogers        "PerPkg": "1",
754f5de6fSIan Rogers        "Unit": "M2HBM"
854f5de6fSIan Rogers    },
954f5de6fSIan Rogers    {
1054f5de6fSIan Rogers        "BriefDescription": "CMS Clockticks",
1154f5de6fSIan Rogers        "EventCode": "0xc0",
1254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_CMS_CLOCKTICKS",
1354f5de6fSIan Rogers        "PerPkg": "1",
1454f5de6fSIan Rogers        "Unit": "M2HBM"
1554f5de6fSIan Rogers    },
1654f5de6fSIan Rogers    {
1754f5de6fSIan Rogers        "BriefDescription": "Cycles when direct to core mode (which bypasses the CHA) was disabled",
1854f5de6fSIan Rogers        "EventCode": "0x17",
1954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2CORE_NOT_TAKEN_DIRSTATE",
2054f5de6fSIan Rogers        "PerPkg": "1",
2154f5de6fSIan Rogers        "UMask": "0x7",
2254f5de6fSIan Rogers        "Unit": "M2HBM"
2354f5de6fSIan Rogers    },
2454f5de6fSIan Rogers    {
2554f5de6fSIan Rogers        "BriefDescription": "Cycles when direct to core mode, which bypasses the CHA, was disabled : Non Cisgress",
2654f5de6fSIan Rogers        "EventCode": "0x17",
2754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2CORE_NOT_TAKEN_DIRSTATE.NON_CISGRESS",
2854f5de6fSIan Rogers        "PerPkg": "1",
2954f5de6fSIan Rogers        "PublicDescription": "Counts the number of time non cisgress D2C was not honoured by egress due to directory state constraints",
3054f5de6fSIan Rogers        "UMask": "0x2",
3154f5de6fSIan Rogers        "Unit": "M2HBM"
3254f5de6fSIan Rogers    },
3354f5de6fSIan Rogers    {
3454f5de6fSIan Rogers        "BriefDescription": "Counts the time when FM didn't do d2c for fill reads (cross tile case)",
3554f5de6fSIan Rogers        "EventCode": "0x4a",
3654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2CORE_NOT_TAKEN_NOTFORKED",
3754f5de6fSIan Rogers        "PerPkg": "1",
3854f5de6fSIan Rogers        "Unit": "M2HBM"
3954f5de6fSIan Rogers    },
4054f5de6fSIan Rogers    {
4154f5de6fSIan Rogers        "BriefDescription": "Number of reads in which direct to core transaction were overridden",
4254f5de6fSIan Rogers        "EventCode": "0x18",
4354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2CORE_TXN_OVERRIDE",
4454f5de6fSIan Rogers        "PerPkg": "1",
4554f5de6fSIan Rogers        "UMask": "0x3",
4654f5de6fSIan Rogers        "Unit": "M2HBM"
4754f5de6fSIan Rogers    },
4854f5de6fSIan Rogers    {
4954f5de6fSIan Rogers        "BriefDescription": "Number of reads in which direct to core transaction was overridden : Cisgress",
5054f5de6fSIan Rogers        "EventCode": "0x18",
5154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2CORE_TXN_OVERRIDE.CISGRESS",
5254f5de6fSIan Rogers        "PerPkg": "1",
5354f5de6fSIan Rogers        "UMask": "0x2",
5454f5de6fSIan Rogers        "Unit": "M2HBM"
5554f5de6fSIan Rogers    },
5654f5de6fSIan Rogers    {
5754f5de6fSIan Rogers        "BriefDescription": "Number of reads in which direct to Intel UPI transactions were overridden",
5854f5de6fSIan Rogers        "EventCode": "0x1b",
5954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2UPI_NOT_TAKEN_CREDITS",
6054f5de6fSIan Rogers        "PerPkg": "1",
6154f5de6fSIan Rogers        "UMask": "0x7",
6254f5de6fSIan Rogers        "Unit": "M2HBM"
6354f5de6fSIan Rogers    },
6454f5de6fSIan Rogers    {
6554f5de6fSIan Rogers        "BriefDescription": "Cycles when direct to Intel UPI was disabled",
6654f5de6fSIan Rogers        "EventCode": "0x1a",
6754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2UPI_NOT_TAKEN_DIRSTATE",
6854f5de6fSIan Rogers        "PerPkg": "1",
6954f5de6fSIan Rogers        "UMask": "0x7",
7054f5de6fSIan Rogers        "Unit": "M2HBM"
7154f5de6fSIan Rogers    },
7254f5de6fSIan Rogers    {
7354f5de6fSIan Rogers        "BriefDescription": "Cycles when Direct2UPI was Disabled : Cisgress D2U Ignored",
7454f5de6fSIan Rogers        "EventCode": "0x1A",
7554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2UPI_NOT_TAKEN_DIRSTATE.CISGRESS",
7654f5de6fSIan Rogers        "FCMask": "0x00000000",
7754f5de6fSIan Rogers        "PerPkg": "1",
7854f5de6fSIan Rogers        "PortMask": "0x00000000",
7954f5de6fSIan Rogers        "PublicDescription": "Counts cisgress d2K that was not honored due to directory constraints",
8054f5de6fSIan Rogers        "UMask": "0x4",
8154f5de6fSIan Rogers        "Unit": "M2HBM"
8254f5de6fSIan Rogers    },
8354f5de6fSIan Rogers    {
8454f5de6fSIan Rogers        "BriefDescription": "Cycles when Direct2UPI was Disabled : Egress Ignored D2U",
8554f5de6fSIan Rogers        "EventCode": "0x1A",
8654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2UPI_NOT_TAKEN_DIRSTATE.EGRESS",
8754f5de6fSIan Rogers        "FCMask": "0x00000000",
8854f5de6fSIan Rogers        "PerPkg": "1",
8954f5de6fSIan Rogers        "PortMask": "0x00000000",
9054f5de6fSIan Rogers        "PublicDescription": "Counts the number of time D2K was not honoured by egress due to directory state constraints",
9154f5de6fSIan Rogers        "UMask": "0x1",
9254f5de6fSIan Rogers        "Unit": "M2HBM"
9354f5de6fSIan Rogers    },
9454f5de6fSIan Rogers    {
9554f5de6fSIan Rogers        "BriefDescription": "Cycles when Direct2UPI was Disabled : Non Cisgress D2U Ignored",
9654f5de6fSIan Rogers        "EventCode": "0x1A",
9754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2UPI_NOT_TAKEN_DIRSTATE.NON_CISGRESS",
9854f5de6fSIan Rogers        "FCMask": "0x00000000",
9954f5de6fSIan Rogers        "PerPkg": "1",
10054f5de6fSIan Rogers        "PortMask": "0x00000000",
10154f5de6fSIan Rogers        "PublicDescription": "Counts non cisgress d2K that was not honored due to directory constraints",
10254f5de6fSIan Rogers        "UMask": "0x2",
10354f5de6fSIan Rogers        "Unit": "M2HBM"
10454f5de6fSIan Rogers    },
10554f5de6fSIan Rogers    {
10654f5de6fSIan Rogers        "BriefDescription": "Number of reads that a message sent direct2 Intel UPI was overridden",
10754f5de6fSIan Rogers        "EventCode": "0x1c",
10854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2UPI_TXN_OVERRIDE",
10954f5de6fSIan Rogers        "PerPkg": "1",
11054f5de6fSIan Rogers        "UMask": "0x3",
11154f5de6fSIan Rogers        "Unit": "M2HBM"
11254f5de6fSIan Rogers    },
11354f5de6fSIan Rogers    {
11454f5de6fSIan Rogers        "BriefDescription": "Number of times a direct to UPI transaction was overridden.",
11554f5de6fSIan Rogers        "EventCode": "0x1c",
11654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECT2UPI_TXN_OVERRIDE.CISGRESS",
11754f5de6fSIan Rogers        "PerPkg": "1",
11854f5de6fSIan Rogers        "UMask": "0x2",
11954f5de6fSIan Rogers        "Unit": "M2HBM"
12054f5de6fSIan Rogers    },
12154f5de6fSIan Rogers    {
12254f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On NonDirty Line in A State",
12354f5de6fSIan Rogers        "EventCode": "0x1d",
12454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.CLEAN_A",
12554f5de6fSIan Rogers        "PerPkg": "1",
12654f5de6fSIan Rogers        "UMask": "0x80",
12754f5de6fSIan Rogers        "Unit": "M2HBM"
12854f5de6fSIan Rogers    },
12954f5de6fSIan Rogers    {
13054f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On NonDirty Line in I State",
13154f5de6fSIan Rogers        "EventCode": "0x1d",
13254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.CLEAN_I",
13354f5de6fSIan Rogers        "PerPkg": "1",
13454f5de6fSIan Rogers        "UMask": "0x10",
13554f5de6fSIan Rogers        "Unit": "M2HBM"
13654f5de6fSIan Rogers    },
13754f5de6fSIan Rogers    {
13854f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On NonDirty Line in L State",
13954f5de6fSIan Rogers        "EventCode": "0x1d",
14054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.CLEAN_P",
14154f5de6fSIan Rogers        "PerPkg": "1",
14254f5de6fSIan Rogers        "UMask": "0x40",
14354f5de6fSIan Rogers        "Unit": "M2HBM"
14454f5de6fSIan Rogers    },
14554f5de6fSIan Rogers    {
14654f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On NonDirty Line in S State",
14754f5de6fSIan Rogers        "EventCode": "0x1d",
14854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.CLEAN_S",
14954f5de6fSIan Rogers        "PerPkg": "1",
15054f5de6fSIan Rogers        "UMask": "0x20",
15154f5de6fSIan Rogers        "Unit": "M2HBM"
15254f5de6fSIan Rogers    },
15354f5de6fSIan Rogers    {
15454f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On Dirty Line in A State",
15554f5de6fSIan Rogers        "EventCode": "0x1d",
15654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.DIRTY_A",
15754f5de6fSIan Rogers        "PerPkg": "1",
15854f5de6fSIan Rogers        "UMask": "0x8",
15954f5de6fSIan Rogers        "Unit": "M2HBM"
16054f5de6fSIan Rogers    },
16154f5de6fSIan Rogers    {
16254f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On Dirty Line in I State",
16354f5de6fSIan Rogers        "EventCode": "0x1d",
16454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.DIRTY_I",
16554f5de6fSIan Rogers        "PerPkg": "1",
16654f5de6fSIan Rogers        "UMask": "0x1",
16754f5de6fSIan Rogers        "Unit": "M2HBM"
16854f5de6fSIan Rogers    },
16954f5de6fSIan Rogers    {
17054f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On Dirty Line in L State",
17154f5de6fSIan Rogers        "EventCode": "0x1d",
17254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.DIRTY_P",
17354f5de6fSIan Rogers        "PerPkg": "1",
17454f5de6fSIan Rogers        "UMask": "0x4",
17554f5de6fSIan Rogers        "Unit": "M2HBM"
17654f5de6fSIan Rogers    },
17754f5de6fSIan Rogers    {
17854f5de6fSIan Rogers        "BriefDescription": "Directory Hit : On Dirty Line in S State",
17954f5de6fSIan Rogers        "EventCode": "0x1d",
18054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_HIT.DIRTY_S",
18154f5de6fSIan Rogers        "PerPkg": "1",
18254f5de6fSIan Rogers        "UMask": "0x2",
18354f5de6fSIan Rogers        "Unit": "M2HBM"
18454f5de6fSIan Rogers    },
18554f5de6fSIan Rogers    {
18654f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory lookups (any state found)",
18754f5de6fSIan Rogers        "EventCode": "0x20",
18854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_LOOKUP.ANY",
18954f5de6fSIan Rogers        "PerPkg": "1",
19054f5de6fSIan Rogers        "PublicDescription": "Counts the number of hit data returns to egress with any directory to non persistent memory",
19154f5de6fSIan Rogers        "UMask": "0x1",
19254f5de6fSIan Rogers        "Unit": "M2HBM"
19354f5de6fSIan Rogers    },
19454f5de6fSIan Rogers    {
19554f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory lookups (cacheline found in A state)",
19654f5de6fSIan Rogers        "EventCode": "0x20",
19754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_LOOKUP.STATE_A",
19854f5de6fSIan Rogers        "PerPkg": "1",
19954f5de6fSIan Rogers        "PublicDescription": "Counts the number of hit data returns to egress with directory A to non persistent memory",
20054f5de6fSIan Rogers        "UMask": "0x8",
20154f5de6fSIan Rogers        "Unit": "M2HBM"
20254f5de6fSIan Rogers    },
20354f5de6fSIan Rogers    {
20454f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory lookup (cacheline found in I state)",
20554f5de6fSIan Rogers        "EventCode": "0x20",
20654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_LOOKUP.STATE_I",
20754f5de6fSIan Rogers        "PerPkg": "1",
20854f5de6fSIan Rogers        "PublicDescription": "Counts the number of hit data returns to egress with directory I to non persistent memory",
20954f5de6fSIan Rogers        "UMask": "0x2",
21054f5de6fSIan Rogers        "Unit": "M2HBM"
21154f5de6fSIan Rogers    },
21254f5de6fSIan Rogers    {
21354f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory lookup (cacheline found in S state)",
21454f5de6fSIan Rogers        "EventCode": "0x20",
21554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_LOOKUP.STATE_S",
21654f5de6fSIan Rogers        "PerPkg": "1",
21754f5de6fSIan Rogers        "PublicDescription": "Counts the number of hit data returns to egress with directory S to non persistent memory",
21854f5de6fSIan Rogers        "UMask": "0x4",
21954f5de6fSIan Rogers        "Unit": "M2HBM"
22054f5de6fSIan Rogers    },
22154f5de6fSIan Rogers    {
22254f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On NonDirty Line in A State",
22354f5de6fSIan Rogers        "EventCode": "0x1e",
22454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.CLEAN_A",
22554f5de6fSIan Rogers        "PerPkg": "1",
22654f5de6fSIan Rogers        "UMask": "0x80",
22754f5de6fSIan Rogers        "Unit": "M2HBM"
22854f5de6fSIan Rogers    },
22954f5de6fSIan Rogers    {
23054f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On NonDirty Line in I State",
23154f5de6fSIan Rogers        "EventCode": "0x1e",
23254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.CLEAN_I",
23354f5de6fSIan Rogers        "PerPkg": "1",
23454f5de6fSIan Rogers        "UMask": "0x10",
23554f5de6fSIan Rogers        "Unit": "M2HBM"
23654f5de6fSIan Rogers    },
23754f5de6fSIan Rogers    {
23854f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On NonDirty Line in L State",
23954f5de6fSIan Rogers        "EventCode": "0x1e",
24054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.CLEAN_P",
24154f5de6fSIan Rogers        "PerPkg": "1",
24254f5de6fSIan Rogers        "UMask": "0x40",
24354f5de6fSIan Rogers        "Unit": "M2HBM"
24454f5de6fSIan Rogers    },
24554f5de6fSIan Rogers    {
24654f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On NonDirty Line in S State",
24754f5de6fSIan Rogers        "EventCode": "0x1e",
24854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.CLEAN_S",
24954f5de6fSIan Rogers        "PerPkg": "1",
25054f5de6fSIan Rogers        "UMask": "0x20",
25154f5de6fSIan Rogers        "Unit": "M2HBM"
25254f5de6fSIan Rogers    },
25354f5de6fSIan Rogers    {
25454f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On Dirty Line in A State",
25554f5de6fSIan Rogers        "EventCode": "0x1e",
25654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.DIRTY_A",
25754f5de6fSIan Rogers        "PerPkg": "1",
25854f5de6fSIan Rogers        "UMask": "0x8",
25954f5de6fSIan Rogers        "Unit": "M2HBM"
26054f5de6fSIan Rogers    },
26154f5de6fSIan Rogers    {
26254f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On Dirty Line in I State",
26354f5de6fSIan Rogers        "EventCode": "0x1e",
26454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.DIRTY_I",
26554f5de6fSIan Rogers        "PerPkg": "1",
26654f5de6fSIan Rogers        "UMask": "0x1",
26754f5de6fSIan Rogers        "Unit": "M2HBM"
26854f5de6fSIan Rogers    },
26954f5de6fSIan Rogers    {
27054f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On Dirty Line in L State",
27154f5de6fSIan Rogers        "EventCode": "0x1e",
27254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.DIRTY_P",
27354f5de6fSIan Rogers        "PerPkg": "1",
27454f5de6fSIan Rogers        "UMask": "0x4",
27554f5de6fSIan Rogers        "Unit": "M2HBM"
27654f5de6fSIan Rogers    },
27754f5de6fSIan Rogers    {
27854f5de6fSIan Rogers        "BriefDescription": "Directory Miss : On Dirty Line in S State",
27954f5de6fSIan Rogers        "EventCode": "0x1e",
28054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_MISS.DIRTY_S",
28154f5de6fSIan Rogers        "PerPkg": "1",
28254f5de6fSIan Rogers        "UMask": "0x2",
28354f5de6fSIan Rogers        "Unit": "M2HBM"
28454f5de6fSIan Rogers    },
28554f5de6fSIan Rogers    {
28654f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory update from A to I",
28754f5de6fSIan Rogers        "EventCode": "0x21",
28854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.A2I",
28954f5de6fSIan Rogers        "PerPkg": "1",
29054f5de6fSIan Rogers        "UMask": "0x320",
29154f5de6fSIan Rogers        "Unit": "M2HBM"
29254f5de6fSIan Rogers    },
29354f5de6fSIan Rogers    {
29454f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory update from A to S",
29554f5de6fSIan Rogers        "EventCode": "0x21",
29654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.A2S",
29754f5de6fSIan Rogers        "PerPkg": "1",
29854f5de6fSIan Rogers        "UMask": "0x340",
29954f5de6fSIan Rogers        "Unit": "M2HBM"
30054f5de6fSIan Rogers    },
30154f5de6fSIan Rogers    {
30254f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory update from/to Any state",
30354f5de6fSIan Rogers        "EventCode": "0x21",
30454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.ANY",
30554f5de6fSIan Rogers        "PerPkg": "1",
30654f5de6fSIan Rogers        "UMask": "0x301",
30754f5de6fSIan Rogers        "Unit": "M2HBM"
30854f5de6fSIan Rogers    },
30954f5de6fSIan Rogers    {
31054f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
31154f5de6fSIan Rogers        "EventCode": "0x21",
31254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.A_TO_I_HIT_NON_PMM",
31354f5de6fSIan Rogers        "FCMask": "0x00000000",
31454f5de6fSIan Rogers        "PerPkg": "1",
31554f5de6fSIan Rogers        "PortMask": "0x00000000",
31654f5de6fSIan Rogers        "PublicDescription": "Counts 1lm or 2lm hit  data returns that would result in directory update from A to I to non persistent memory",
31754f5de6fSIan Rogers        "UMask": "0x120",
31854f5de6fSIan Rogers        "Unit": "M2HBM"
31954f5de6fSIan Rogers    },
32054f5de6fSIan Rogers    {
32154f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
32254f5de6fSIan Rogers        "EventCode": "0x21",
32354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.A_TO_I_MISS_NON_PMM",
32454f5de6fSIan Rogers        "FCMask": "0x00000000",
32554f5de6fSIan Rogers        "PerPkg": "1",
32654f5de6fSIan Rogers        "PortMask": "0x00000000",
32754f5de6fSIan Rogers        "PublicDescription": "Counts 2lm miss  data returns that would result in directory update from A to I to non persistent memory",
32854f5de6fSIan Rogers        "UMask": "0x220",
32954f5de6fSIan Rogers        "Unit": "M2HBM"
33054f5de6fSIan Rogers    },
33154f5de6fSIan Rogers    {
33254f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
33354f5de6fSIan Rogers        "EventCode": "0x21",
33454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.A_TO_S_HIT_NON_PMM",
33554f5de6fSIan Rogers        "FCMask": "0x00000000",
33654f5de6fSIan Rogers        "PerPkg": "1",
33754f5de6fSIan Rogers        "PortMask": "0x00000000",
33854f5de6fSIan Rogers        "PublicDescription": "Counts 1lm or 2lm hit  data returns that would result in directory update from A to S to non persistent memory",
33954f5de6fSIan Rogers        "UMask": "0x140",
34054f5de6fSIan Rogers        "Unit": "M2HBM"
34154f5de6fSIan Rogers    },
34254f5de6fSIan Rogers    {
34354f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
34454f5de6fSIan Rogers        "EventCode": "0x21",
34554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.A_TO_S_MISS_NON_PMM",
34654f5de6fSIan Rogers        "FCMask": "0x00000000",
34754f5de6fSIan Rogers        "PerPkg": "1",
34854f5de6fSIan Rogers        "PortMask": "0x00000000",
34954f5de6fSIan Rogers        "PublicDescription": "Counts 2lm miss  data returns that would result in directory update from A to S to non persistent memory",
35054f5de6fSIan Rogers        "UMask": "0x240",
35154f5de6fSIan Rogers        "Unit": "M2HBM"
35254f5de6fSIan Rogers    },
35354f5de6fSIan Rogers    {
35454f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
35554f5de6fSIan Rogers        "EventCode": "0x21",
35654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.HIT_NON_PMM",
35754f5de6fSIan Rogers        "FCMask": "0x00000000",
35854f5de6fSIan Rogers        "PerPkg": "1",
35954f5de6fSIan Rogers        "PortMask": "0x00000000",
36054f5de6fSIan Rogers        "PublicDescription": "Counts any 1lm or 2lm hit data return that would result in directory update to non persistent memory",
36154f5de6fSIan Rogers        "UMask": "0x101",
36254f5de6fSIan Rogers        "Unit": "M2HBM"
36354f5de6fSIan Rogers    },
36454f5de6fSIan Rogers    {
36554f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory update from I to A",
36654f5de6fSIan Rogers        "EventCode": "0x21",
36754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.I2A",
36854f5de6fSIan Rogers        "PerPkg": "1",
36954f5de6fSIan Rogers        "UMask": "0x304",
37054f5de6fSIan Rogers        "Unit": "M2HBM"
37154f5de6fSIan Rogers    },
37254f5de6fSIan Rogers    {
37354f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory update from I to S",
37454f5de6fSIan Rogers        "EventCode": "0x21",
37554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.I2S",
37654f5de6fSIan Rogers        "PerPkg": "1",
37754f5de6fSIan Rogers        "UMask": "0x302",
37854f5de6fSIan Rogers        "Unit": "M2HBM"
37954f5de6fSIan Rogers    },
38054f5de6fSIan Rogers    {
38154f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
38254f5de6fSIan Rogers        "EventCode": "0x21",
38354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.I_TO_A_HIT_NON_PMM",
38454f5de6fSIan Rogers        "FCMask": "0x00000000",
38554f5de6fSIan Rogers        "PerPkg": "1",
38654f5de6fSIan Rogers        "PortMask": "0x00000000",
38754f5de6fSIan Rogers        "PublicDescription": "Counts 1lm or 2lm hit  data returns that would result in directory update from I to A to non persistent memory",
38854f5de6fSIan Rogers        "UMask": "0x104",
38954f5de6fSIan Rogers        "Unit": "M2HBM"
39054f5de6fSIan Rogers    },
39154f5de6fSIan Rogers    {
39254f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
39354f5de6fSIan Rogers        "EventCode": "0x21",
39454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.I_TO_A_MISS_NON_PMM",
39554f5de6fSIan Rogers        "FCMask": "0x00000000",
39654f5de6fSIan Rogers        "PerPkg": "1",
39754f5de6fSIan Rogers        "PortMask": "0x00000000",
39854f5de6fSIan Rogers        "PublicDescription": "Counts 2lm miss  data returns that would result in directory update from I to A to non persistent memory",
39954f5de6fSIan Rogers        "UMask": "0x204",
40054f5de6fSIan Rogers        "Unit": "M2HBM"
40154f5de6fSIan Rogers    },
40254f5de6fSIan Rogers    {
40354f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
40454f5de6fSIan Rogers        "EventCode": "0x21",
40554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.I_TO_S_HIT_NON_PMM",
40654f5de6fSIan Rogers        "FCMask": "0x00000000",
40754f5de6fSIan Rogers        "PerPkg": "1",
40854f5de6fSIan Rogers        "PortMask": "0x00000000",
40954f5de6fSIan Rogers        "PublicDescription": "Counts 1lm or 2lm hit  data returns that would result in directory update from I to S to non persistent memory",
41054f5de6fSIan Rogers        "UMask": "0x102",
41154f5de6fSIan Rogers        "Unit": "M2HBM"
41254f5de6fSIan Rogers    },
41354f5de6fSIan Rogers    {
41454f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
41554f5de6fSIan Rogers        "EventCode": "0x21",
41654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.I_TO_S_MISS_NON_PMM",
41754f5de6fSIan Rogers        "FCMask": "0x00000000",
41854f5de6fSIan Rogers        "PerPkg": "1",
41954f5de6fSIan Rogers        "PortMask": "0x00000000",
42054f5de6fSIan Rogers        "PublicDescription": "Counts  2lm miss  data returns that would result in directory update from I to S to non persistent memory",
42154f5de6fSIan Rogers        "UMask": "0x202",
42254f5de6fSIan Rogers        "Unit": "M2HBM"
42354f5de6fSIan Rogers    },
42454f5de6fSIan Rogers    {
42554f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
42654f5de6fSIan Rogers        "EventCode": "0x21",
42754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.MISS_NON_PMM",
42854f5de6fSIan Rogers        "FCMask": "0x00000000",
42954f5de6fSIan Rogers        "PerPkg": "1",
43054f5de6fSIan Rogers        "PortMask": "0x00000000",
43154f5de6fSIan Rogers        "PublicDescription": "Counts any 2lm miss data return that would result in directory update to non persistent memory",
43254f5de6fSIan Rogers        "UMask": "0x201",
43354f5de6fSIan Rogers        "Unit": "M2HBM"
43454f5de6fSIan Rogers    },
43554f5de6fSIan Rogers    {
43654f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory update from S to A",
43754f5de6fSIan Rogers        "EventCode": "0x21",
43854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.S2A",
43954f5de6fSIan Rogers        "PerPkg": "1",
44054f5de6fSIan Rogers        "UMask": "0x310",
44154f5de6fSIan Rogers        "Unit": "M2HBM"
44254f5de6fSIan Rogers    },
44354f5de6fSIan Rogers    {
44454f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory update from S to I",
44554f5de6fSIan Rogers        "EventCode": "0x21",
44654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.S2I",
44754f5de6fSIan Rogers        "PerPkg": "1",
44854f5de6fSIan Rogers        "UMask": "0x308",
44954f5de6fSIan Rogers        "Unit": "M2HBM"
45054f5de6fSIan Rogers    },
45154f5de6fSIan Rogers    {
45254f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
45354f5de6fSIan Rogers        "EventCode": "0x21",
45454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.S_TO_A_HIT_NON_PMM",
45554f5de6fSIan Rogers        "FCMask": "0x00000000",
45654f5de6fSIan Rogers        "PerPkg": "1",
45754f5de6fSIan Rogers        "PortMask": "0x00000000",
45854f5de6fSIan Rogers        "PublicDescription": "Counts 1lm or 2lm hit  data returns that would result in directory update from S to A to non persistent memory",
45954f5de6fSIan Rogers        "UMask": "0x110",
46054f5de6fSIan Rogers        "Unit": "M2HBM"
46154f5de6fSIan Rogers    },
46254f5de6fSIan Rogers    {
46354f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
46454f5de6fSIan Rogers        "EventCode": "0x21",
46554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.S_TO_A_MISS_NON_PMM",
46654f5de6fSIan Rogers        "FCMask": "0x00000000",
46754f5de6fSIan Rogers        "PerPkg": "1",
46854f5de6fSIan Rogers        "PortMask": "0x00000000",
46954f5de6fSIan Rogers        "PublicDescription": "Counts 2lm miss  data returns that would result in directory update from S to A to non persistent memory",
47054f5de6fSIan Rogers        "UMask": "0x210",
47154f5de6fSIan Rogers        "Unit": "M2HBM"
47254f5de6fSIan Rogers    },
47354f5de6fSIan Rogers    {
47454f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
47554f5de6fSIan Rogers        "EventCode": "0x21",
47654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.S_TO_I_HIT_NON_PMM",
47754f5de6fSIan Rogers        "FCMask": "0x00000000",
47854f5de6fSIan Rogers        "PerPkg": "1",
47954f5de6fSIan Rogers        "PortMask": "0x00000000",
48054f5de6fSIan Rogers        "PublicDescription": "Counts 1lm or 2lm hit  data returns that would result in directory update from S to I to non persistent memory",
48154f5de6fSIan Rogers        "UMask": "0x108",
48254f5de6fSIan Rogers        "Unit": "M2HBM"
48354f5de6fSIan Rogers    },
48454f5de6fSIan Rogers    {
48554f5de6fSIan Rogers        "BriefDescription": "Multi-socket cacheline Directory Updates",
48654f5de6fSIan Rogers        "EventCode": "0x21",
48754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DIRECTORY_UPDATE.S_TO_I_MISS_NON_PMM",
48854f5de6fSIan Rogers        "FCMask": "0x00000000",
48954f5de6fSIan Rogers        "PerPkg": "1",
49054f5de6fSIan Rogers        "PortMask": "0x00000000",
49154f5de6fSIan Rogers        "PublicDescription": "Counts 2lm miss  data returns that would result in directory update from S to I to non persistent memory",
49254f5de6fSIan Rogers        "UMask": "0x208",
49354f5de6fSIan Rogers        "Unit": "M2HBM"
49454f5de6fSIan Rogers    },
49554f5de6fSIan Rogers    {
49654f5de6fSIan Rogers        "BriefDescription": "Count distress signalled on AkAd cmp message",
49754f5de6fSIan Rogers        "EventCode": "0x67",
49854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DISTRESS.AD",
49954f5de6fSIan Rogers        "PerPkg": "1",
50054f5de6fSIan Rogers        "UMask": "0x20",
50154f5de6fSIan Rogers        "Unit": "M2HBM"
50254f5de6fSIan Rogers    },
50354f5de6fSIan Rogers    {
50454f5de6fSIan Rogers        "BriefDescription": "Count distress signalled on any packet type",
50554f5de6fSIan Rogers        "EventCode": "0x67",
50654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DISTRESS.ALL",
50754f5de6fSIan Rogers        "PerPkg": "1",
50854f5de6fSIan Rogers        "UMask": "0x1",
50954f5de6fSIan Rogers        "Unit": "M2HBM"
51054f5de6fSIan Rogers    },
51154f5de6fSIan Rogers    {
51254f5de6fSIan Rogers        "BriefDescription": "Count distress signalled on Bl Cmp message",
51354f5de6fSIan Rogers        "EventCode": "0x67",
51454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DISTRESS.BL_CMP",
51554f5de6fSIan Rogers        "PerPkg": "1",
51654f5de6fSIan Rogers        "UMask": "0x40",
51754f5de6fSIan Rogers        "Unit": "M2HBM"
51854f5de6fSIan Rogers    },
51954f5de6fSIan Rogers    {
52054f5de6fSIan Rogers        "BriefDescription": "Count distress signalled on NM fill write message",
52154f5de6fSIan Rogers        "EventCode": "0x67",
52254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DISTRESS.CROSSTILE_NMWR",
52354f5de6fSIan Rogers        "PerPkg": "1",
52454f5de6fSIan Rogers        "UMask": "0x10",
52554f5de6fSIan Rogers        "Unit": "M2HBM"
52654f5de6fSIan Rogers    },
52754f5de6fSIan Rogers    {
52854f5de6fSIan Rogers        "BriefDescription": "Count distress signalled on D2Cha message",
52954f5de6fSIan Rogers        "EventCode": "0x67",
53054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DISTRESS.D2CHA",
53154f5de6fSIan Rogers        "PerPkg": "1",
53254f5de6fSIan Rogers        "UMask": "0x8",
53354f5de6fSIan Rogers        "Unit": "M2HBM"
53454f5de6fSIan Rogers    },
53554f5de6fSIan Rogers    {
53654f5de6fSIan Rogers        "BriefDescription": "Count distress signalled on D2c message",
53754f5de6fSIan Rogers        "EventCode": "0x67",
53854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DISTRESS.D2CORE",
53954f5de6fSIan Rogers        "PerPkg": "1",
54054f5de6fSIan Rogers        "UMask": "0x2",
54154f5de6fSIan Rogers        "Unit": "M2HBM"
54254f5de6fSIan Rogers    },
54354f5de6fSIan Rogers    {
54454f5de6fSIan Rogers        "BriefDescription": "Count distress signalled on D2k message",
54554f5de6fSIan Rogers        "EventCode": "0x67",
54654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_DISTRESS.D2UPI",
54754f5de6fSIan Rogers        "PerPkg": "1",
54854f5de6fSIan Rogers        "UMask": "0x4",
54954f5de6fSIan Rogers        "Unit": "M2HBM"
55054f5de6fSIan Rogers    },
55154f5de6fSIan Rogers    {
55254f5de6fSIan Rogers        "BriefDescription": "Egress Blocking due to Ordering requirements : Down",
55354f5de6fSIan Rogers        "EventCode": "0xba",
55454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_EGRESS_ORDERING.IV_SNOOPGO_DN",
55554f5de6fSIan Rogers        "PerPkg": "1",
55654f5de6fSIan Rogers        "PublicDescription": "Egress Blocking due to Ordering requirements : Down : Counts number of cycles IV was blocked in the TGR Egress due to SNP/GO Ordering requirements",
55754f5de6fSIan Rogers        "UMask": "0x80000004",
55854f5de6fSIan Rogers        "Unit": "M2HBM"
55954f5de6fSIan Rogers    },
56054f5de6fSIan Rogers    {
56154f5de6fSIan Rogers        "BriefDescription": "Egress Blocking due to Ordering requirements : Up",
56254f5de6fSIan Rogers        "EventCode": "0xba",
56354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_EGRESS_ORDERING.IV_SNOOPGO_UP",
56454f5de6fSIan Rogers        "PerPkg": "1",
56554f5de6fSIan Rogers        "PublicDescription": "Egress Blocking due to Ordering requirements : Up : Counts number of cycles IV was blocked in the TGR Egress due to SNP/GO Ordering requirements",
56654f5de6fSIan Rogers        "UMask": "0x80000001",
56754f5de6fSIan Rogers        "Unit": "M2HBM"
56854f5de6fSIan Rogers    },
56954f5de6fSIan Rogers    {
57054f5de6fSIan Rogers        "BriefDescription": "Count when Starve Glocab counter is at 7",
57154f5de6fSIan Rogers        "EventCode": "0x44",
57254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IGR_STARVE_WINNER.MASK7",
57354f5de6fSIan Rogers        "FCMask": "0x00000000",
57454f5de6fSIan Rogers        "PerPkg": "1",
57554f5de6fSIan Rogers        "PortMask": "0x00000000",
57654f5de6fSIan Rogers        "UMask": "0x80",
57754f5de6fSIan Rogers        "Unit": "M2HBM"
57854f5de6fSIan Rogers    },
57954f5de6fSIan Rogers    {
58054f5de6fSIan Rogers        "BriefDescription": "Reads to iMC issued",
58154f5de6fSIan Rogers        "EventCode": "0x24",
58254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.ALL",
58354f5de6fSIan Rogers        "PerPkg": "1",
58454f5de6fSIan Rogers        "UMask": "0x304",
58554f5de6fSIan Rogers        "Unit": "M2HBM"
58654f5de6fSIan Rogers    },
58754f5de6fSIan Rogers    {
58854f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH0.ALL",
58954f5de6fSIan Rogers        "EventCode": "0x24",
59054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH0.ALL",
59154f5de6fSIan Rogers        "PerPkg": "1",
59254f5de6fSIan Rogers        "UMask": "0x104",
59354f5de6fSIan Rogers        "Unit": "M2HBM"
59454f5de6fSIan Rogers    },
59554f5de6fSIan Rogers    {
59654f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH0.NORMAL",
59754f5de6fSIan Rogers        "EventCode": "0x24",
59854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH0.NORMAL",
59954f5de6fSIan Rogers        "PerPkg": "1",
60054f5de6fSIan Rogers        "UMask": "0x101",
60154f5de6fSIan Rogers        "Unit": "M2HBM"
60254f5de6fSIan Rogers    },
60354f5de6fSIan Rogers    {
60454f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH0_ALL",
60554f5de6fSIan Rogers        "EventCode": "0x24",
60654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH0_ALL",
60754f5de6fSIan Rogers        "FCMask": "0x00000000",
60854f5de6fSIan Rogers        "PerPkg": "1",
60954f5de6fSIan Rogers        "PortMask": "0x00000000",
61054f5de6fSIan Rogers        "UMask": "0x104",
61154f5de6fSIan Rogers        "Unit": "M2HBM"
61254f5de6fSIan Rogers    },
61354f5de6fSIan Rogers    {
61454f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH0_FROM_TGR",
61554f5de6fSIan Rogers        "EventCode": "0x24",
61654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH0_FROM_TGR",
61754f5de6fSIan Rogers        "PerPkg": "1",
61854f5de6fSIan Rogers        "UMask": "0x140",
61954f5de6fSIan Rogers        "Unit": "M2HBM"
62054f5de6fSIan Rogers    },
62154f5de6fSIan Rogers    {
62254f5de6fSIan Rogers        "BriefDescription": "Critical Priority - Ch0",
62354f5de6fSIan Rogers        "EventCode": "0x24",
62454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH0_ISOCH",
62554f5de6fSIan Rogers        "PerPkg": "1",
62654f5de6fSIan Rogers        "UMask": "0x102",
62754f5de6fSIan Rogers        "Unit": "M2HBM"
62854f5de6fSIan Rogers    },
62954f5de6fSIan Rogers    {
63054f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH0_NORMAL",
63154f5de6fSIan Rogers        "EventCode": "0x24",
63254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH0_NORMAL",
63354f5de6fSIan Rogers        "FCMask": "0x00000000",
63454f5de6fSIan Rogers        "PerPkg": "1",
63554f5de6fSIan Rogers        "PortMask": "0x00000000",
63654f5de6fSIan Rogers        "UMask": "0x101",
63754f5de6fSIan Rogers        "Unit": "M2HBM"
63854f5de6fSIan Rogers    },
63954f5de6fSIan Rogers    {
64054f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH1.ALL",
64154f5de6fSIan Rogers        "EventCode": "0x24",
64254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH1.ALL",
64354f5de6fSIan Rogers        "PerPkg": "1",
64454f5de6fSIan Rogers        "UMask": "0x204",
64554f5de6fSIan Rogers        "Unit": "M2HBM"
64654f5de6fSIan Rogers    },
64754f5de6fSIan Rogers    {
64854f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH1.NORMAL",
64954f5de6fSIan Rogers        "EventCode": "0x24",
65054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH1.NORMAL",
65154f5de6fSIan Rogers        "PerPkg": "1",
65254f5de6fSIan Rogers        "UMask": "0x201",
65354f5de6fSIan Rogers        "Unit": "M2HBM"
65454f5de6fSIan Rogers    },
65554f5de6fSIan Rogers    {
65654f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH1_ALL",
65754f5de6fSIan Rogers        "EventCode": "0x24",
65854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH1_ALL",
65954f5de6fSIan Rogers        "FCMask": "0x00000000",
66054f5de6fSIan Rogers        "PerPkg": "1",
66154f5de6fSIan Rogers        "PortMask": "0x00000000",
66254f5de6fSIan Rogers        "UMask": "0x204",
66354f5de6fSIan Rogers        "Unit": "M2HBM"
66454f5de6fSIan Rogers    },
66554f5de6fSIan Rogers    {
66654f5de6fSIan Rogers        "BriefDescription": "From TGR - Ch1",
66754f5de6fSIan Rogers        "EventCode": "0x24",
66854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH1_FROM_TGR",
66954f5de6fSIan Rogers        "PerPkg": "1",
67054f5de6fSIan Rogers        "UMask": "0x240",
67154f5de6fSIan Rogers        "Unit": "M2HBM"
67254f5de6fSIan Rogers    },
67354f5de6fSIan Rogers    {
67454f5de6fSIan Rogers        "BriefDescription": "Critical Priority - Ch1",
67554f5de6fSIan Rogers        "EventCode": "0x24",
67654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH1_ISOCH",
67754f5de6fSIan Rogers        "PerPkg": "1",
67854f5de6fSIan Rogers        "UMask": "0x202",
67954f5de6fSIan Rogers        "Unit": "M2HBM"
68054f5de6fSIan Rogers    },
68154f5de6fSIan Rogers    {
68254f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.CH1_NORMAL",
68354f5de6fSIan Rogers        "EventCode": "0x24",
68454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.CH1_NORMAL",
68554f5de6fSIan Rogers        "FCMask": "0x00000000",
68654f5de6fSIan Rogers        "PerPkg": "1",
68754f5de6fSIan Rogers        "PortMask": "0x00000000",
68854f5de6fSIan Rogers        "UMask": "0x201",
68954f5de6fSIan Rogers        "Unit": "M2HBM"
69054f5de6fSIan Rogers    },
69154f5de6fSIan Rogers    {
69254f5de6fSIan Rogers        "BriefDescription": "From TGR - All Channels",
69354f5de6fSIan Rogers        "EventCode": "0x24",
69454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.FROM_TGR",
69554f5de6fSIan Rogers        "PerPkg": "1",
69654f5de6fSIan Rogers        "UMask": "0x340",
69754f5de6fSIan Rogers        "Unit": "M2HBM"
69854f5de6fSIan Rogers    },
69954f5de6fSIan Rogers    {
70054f5de6fSIan Rogers        "BriefDescription": "Critical Priority - All Channels",
70154f5de6fSIan Rogers        "EventCode": "0x24",
70254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.ISOCH",
70354f5de6fSIan Rogers        "PerPkg": "1",
70454f5de6fSIan Rogers        "UMask": "0x302",
70554f5de6fSIan Rogers        "Unit": "M2HBM"
70654f5de6fSIan Rogers    },
70754f5de6fSIan Rogers    {
70854f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_READS.NORMAL",
70954f5de6fSIan Rogers        "EventCode": "0x24",
71054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_READS.NORMAL",
71154f5de6fSIan Rogers        "PerPkg": "1",
71254f5de6fSIan Rogers        "UMask": "0x301",
71354f5de6fSIan Rogers        "Unit": "M2HBM"
71454f5de6fSIan Rogers    },
71554f5de6fSIan Rogers    {
71654f5de6fSIan Rogers        "BriefDescription": "All Writes - All Channels",
71754f5de6fSIan Rogers        "EventCode": "0x25",
71854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.ALL",
71954f5de6fSIan Rogers        "PerPkg": "1",
72054f5de6fSIan Rogers        "UMask": "0x1810",
72154f5de6fSIan Rogers        "Unit": "M2HBM"
72254f5de6fSIan Rogers    },
72354f5de6fSIan Rogers    {
72454f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_WRITES.CH0.ALL",
72554f5de6fSIan Rogers        "EventCode": "0x25",
72654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0.ALL",
72754f5de6fSIan Rogers        "PerPkg": "1",
72854f5de6fSIan Rogers        "UMask": "0x810",
72954f5de6fSIan Rogers        "Unit": "M2HBM"
73054f5de6fSIan Rogers    },
73154f5de6fSIan Rogers    {
73254f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_WRITES.CH0.FULL",
73354f5de6fSIan Rogers        "EventCode": "0x25",
73454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0.FULL",
73554f5de6fSIan Rogers        "PerPkg": "1",
73654f5de6fSIan Rogers        "UMask": "0x801",
73754f5de6fSIan Rogers        "Unit": "M2HBM"
73854f5de6fSIan Rogers    },
73954f5de6fSIan Rogers    {
74054f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_WRITES.CH0.PARTIAL",
74154f5de6fSIan Rogers        "EventCode": "0x25",
74254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0.PARTIAL",
74354f5de6fSIan Rogers        "PerPkg": "1",
74454f5de6fSIan Rogers        "UMask": "0x802",
74554f5de6fSIan Rogers        "Unit": "M2HBM"
74654f5de6fSIan Rogers    },
74754f5de6fSIan Rogers    {
74854f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_WRITES.CH0_ALL",
74954f5de6fSIan Rogers        "EventCode": "0x25",
75054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_ALL",
75154f5de6fSIan Rogers        "FCMask": "0x00000000",
75254f5de6fSIan Rogers        "PerPkg": "1",
75354f5de6fSIan Rogers        "PortMask": "0x00000000",
75454f5de6fSIan Rogers        "UMask": "0x810",
75554f5de6fSIan Rogers        "Unit": "M2HBM"
75654f5de6fSIan Rogers    },
75754f5de6fSIan Rogers    {
75854f5de6fSIan Rogers        "BriefDescription": "From TGR - Ch0",
75954f5de6fSIan Rogers        "EventCode": "0x25",
76054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_FROM_TGR",
76154f5de6fSIan Rogers        "PerPkg": "1",
76254f5de6fSIan Rogers        "Unit": "M2HBM"
76354f5de6fSIan Rogers    },
76454f5de6fSIan Rogers    {
76554f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_WRITES.CH0_FULL",
76654f5de6fSIan Rogers        "EventCode": "0x25",
76754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_FULL",
76854f5de6fSIan Rogers        "FCMask": "0x00000000",
76954f5de6fSIan Rogers        "PerPkg": "1",
77054f5de6fSIan Rogers        "PortMask": "0x00000000",
77154f5de6fSIan Rogers        "UMask": "0x801",
77254f5de6fSIan Rogers        "Unit": "M2HBM"
77354f5de6fSIan Rogers    },
77454f5de6fSIan Rogers    {
77554f5de6fSIan Rogers        "BriefDescription": "ISOCH Full Line - Ch0",
77654f5de6fSIan Rogers        "EventCode": "0x25",
77754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_FULL_ISOCH",
77854f5de6fSIan Rogers        "PerPkg": "1",
77954f5de6fSIan Rogers        "UMask": "0x804",
78054f5de6fSIan Rogers        "Unit": "M2HBM"
78154f5de6fSIan Rogers    },
78254f5de6fSIan Rogers    {
78354f5de6fSIan Rogers        "BriefDescription": "Non-Inclusive - Ch0",
78454f5de6fSIan Rogers        "EventCode": "0x25",
78554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_NI",
78654f5de6fSIan Rogers        "FCMask": "0x00000000",
78754f5de6fSIan Rogers        "PerPkg": "1",
78854f5de6fSIan Rogers        "PortMask": "0x00000000",
78954f5de6fSIan Rogers        "Unit": "M2HBM"
79054f5de6fSIan Rogers    },
79154f5de6fSIan Rogers    {
79254f5de6fSIan Rogers        "BriefDescription": "Non-Inclusive Miss - Ch0",
79354f5de6fSIan Rogers        "EventCode": "0x25",
79454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_NI_MISS",
79554f5de6fSIan Rogers        "FCMask": "0x00000000",
79654f5de6fSIan Rogers        "PerPkg": "1",
79754f5de6fSIan Rogers        "PortMask": "0x00000000",
79854f5de6fSIan Rogers        "Unit": "M2HBM"
79954f5de6fSIan Rogers    },
80054f5de6fSIan Rogers    {
80154f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_IMC_WRITES.CH0_PARTIAL",
80254f5de6fSIan Rogers        "EventCode": "0x25",
80354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_PARTIAL",
80454f5de6fSIan Rogers        "FCMask": "0x00000000",
80554f5de6fSIan Rogers        "PerPkg": "1",
80654f5de6fSIan Rogers        "PortMask": "0x00000000",
80754f5de6fSIan Rogers        "UMask": "0x802",
80854f5de6fSIan Rogers        "Unit": "M2HBM"
80954f5de6fSIan Rogers    },
81054f5de6fSIan Rogers    {
81154f5de6fSIan Rogers        "BriefDescription": "ISOCH Partial - Ch0",
81254f5de6fSIan Rogers        "EventCode": "0x25",
81354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH0_PARTIAL_ISOCH",
81454f5de6fSIan Rogers        "PerPkg": "1",
81554f5de6fSIan Rogers        "UMask": "0x808",
81654f5de6fSIan Rogers        "Unit": "M2HBM"
81754f5de6fSIan Rogers    },
81854f5de6fSIan Rogers    {
81954f5de6fSIan Rogers        "BriefDescription": "All Writes - Ch1",
82054f5de6fSIan Rogers        "EventCode": "0x25",
82154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1.ALL",
82254f5de6fSIan Rogers        "PerPkg": "1",
82354f5de6fSIan Rogers        "UMask": "0x1010",
82454f5de6fSIan Rogers        "Unit": "M2HBM"
82554f5de6fSIan Rogers    },
82654f5de6fSIan Rogers    {
82754f5de6fSIan Rogers        "BriefDescription": "Full Line Non-ISOCH - Ch1",
82854f5de6fSIan Rogers        "EventCode": "0x25",
82954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1.FULL",
83054f5de6fSIan Rogers        "PerPkg": "1",
83154f5de6fSIan Rogers        "UMask": "0x1001",
83254f5de6fSIan Rogers        "Unit": "M2HBM"
83354f5de6fSIan Rogers    },
83454f5de6fSIan Rogers    {
83554f5de6fSIan Rogers        "BriefDescription": "Partial Non-ISOCH - Ch1",
83654f5de6fSIan Rogers        "EventCode": "0x25",
83754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1.PARTIAL",
83854f5de6fSIan Rogers        "PerPkg": "1",
83954f5de6fSIan Rogers        "UMask": "0x1002",
84054f5de6fSIan Rogers        "Unit": "M2HBM"
84154f5de6fSIan Rogers    },
84254f5de6fSIan Rogers    {
84354f5de6fSIan Rogers        "BriefDescription": "All Writes - Ch1",
84454f5de6fSIan Rogers        "EventCode": "0x25",
84554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_ALL",
84654f5de6fSIan Rogers        "FCMask": "0x00000000",
84754f5de6fSIan Rogers        "PerPkg": "1",
84854f5de6fSIan Rogers        "PortMask": "0x00000000",
84954f5de6fSIan Rogers        "UMask": "0x1010",
85054f5de6fSIan Rogers        "Unit": "M2HBM"
85154f5de6fSIan Rogers    },
85254f5de6fSIan Rogers    {
85354f5de6fSIan Rogers        "BriefDescription": "From TGR - Ch1",
85454f5de6fSIan Rogers        "EventCode": "0x25",
85554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_FROM_TGR",
85654f5de6fSIan Rogers        "PerPkg": "1",
85754f5de6fSIan Rogers        "Unit": "M2HBM"
85854f5de6fSIan Rogers    },
85954f5de6fSIan Rogers    {
86054f5de6fSIan Rogers        "BriefDescription": "Full Line Non-ISOCH - Ch1",
86154f5de6fSIan Rogers        "EventCode": "0x25",
86254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_FULL",
86354f5de6fSIan Rogers        "FCMask": "0x00000000",
86454f5de6fSIan Rogers        "PerPkg": "1",
86554f5de6fSIan Rogers        "PortMask": "0x00000000",
86654f5de6fSIan Rogers        "UMask": "0x1001",
86754f5de6fSIan Rogers        "Unit": "M2HBM"
86854f5de6fSIan Rogers    },
86954f5de6fSIan Rogers    {
87054f5de6fSIan Rogers        "BriefDescription": "ISOCH Full Line - Ch1",
87154f5de6fSIan Rogers        "EventCode": "0x25",
87254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_FULL_ISOCH",
87354f5de6fSIan Rogers        "PerPkg": "1",
87454f5de6fSIan Rogers        "UMask": "0x1004",
87554f5de6fSIan Rogers        "Unit": "M2HBM"
87654f5de6fSIan Rogers    },
87754f5de6fSIan Rogers    {
87854f5de6fSIan Rogers        "BriefDescription": "Non-Inclusive - Ch1",
87954f5de6fSIan Rogers        "EventCode": "0x25",
88054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_NI",
88154f5de6fSIan Rogers        "FCMask": "0x00000000",
88254f5de6fSIan Rogers        "PerPkg": "1",
88354f5de6fSIan Rogers        "PortMask": "0x00000000",
88454f5de6fSIan Rogers        "Unit": "M2HBM"
88554f5de6fSIan Rogers    },
88654f5de6fSIan Rogers    {
88754f5de6fSIan Rogers        "BriefDescription": "Non-Inclusive Miss - Ch1",
88854f5de6fSIan Rogers        "EventCode": "0x25",
88954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_NI_MISS",
89054f5de6fSIan Rogers        "FCMask": "0x00000000",
89154f5de6fSIan Rogers        "PerPkg": "1",
89254f5de6fSIan Rogers        "PortMask": "0x00000000",
89354f5de6fSIan Rogers        "Unit": "M2HBM"
89454f5de6fSIan Rogers    },
89554f5de6fSIan Rogers    {
89654f5de6fSIan Rogers        "BriefDescription": "Partial Non-ISOCH - Ch1",
89754f5de6fSIan Rogers        "EventCode": "0x25",
89854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_PARTIAL",
89954f5de6fSIan Rogers        "FCMask": "0x00000000",
90054f5de6fSIan Rogers        "PerPkg": "1",
90154f5de6fSIan Rogers        "PortMask": "0x00000000",
90254f5de6fSIan Rogers        "UMask": "0x1002",
90354f5de6fSIan Rogers        "Unit": "M2HBM"
90454f5de6fSIan Rogers    },
90554f5de6fSIan Rogers    {
90654f5de6fSIan Rogers        "BriefDescription": "ISOCH Partial - Ch1",
90754f5de6fSIan Rogers        "EventCode": "0x25",
90854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.CH1_PARTIAL_ISOCH",
90954f5de6fSIan Rogers        "PerPkg": "1",
91054f5de6fSIan Rogers        "UMask": "0x1008",
91154f5de6fSIan Rogers        "Unit": "M2HBM"
91254f5de6fSIan Rogers    },
91354f5de6fSIan Rogers    {
91454f5de6fSIan Rogers        "BriefDescription": "From TGR - All Channels",
91554f5de6fSIan Rogers        "EventCode": "0x25",
91654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.FROM_TGR",
91754f5de6fSIan Rogers        "PerPkg": "1",
91854f5de6fSIan Rogers        "Unit": "M2HBM"
91954f5de6fSIan Rogers    },
92054f5de6fSIan Rogers    {
92154f5de6fSIan Rogers        "BriefDescription": "Full Non-ISOCH - All Channels",
92254f5de6fSIan Rogers        "EventCode": "0x25",
92354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.FULL",
92454f5de6fSIan Rogers        "PerPkg": "1",
92554f5de6fSIan Rogers        "UMask": "0x1801",
92654f5de6fSIan Rogers        "Unit": "M2HBM"
92754f5de6fSIan Rogers    },
92854f5de6fSIan Rogers    {
92954f5de6fSIan Rogers        "BriefDescription": "ISOCH Full Line - All Channels",
93054f5de6fSIan Rogers        "EventCode": "0x25",
93154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.FULL_ISOCH",
93254f5de6fSIan Rogers        "PerPkg": "1",
93354f5de6fSIan Rogers        "UMask": "0x1804",
93454f5de6fSIan Rogers        "Unit": "M2HBM"
93554f5de6fSIan Rogers    },
93654f5de6fSIan Rogers    {
93754f5de6fSIan Rogers        "BriefDescription": "Non-Inclusive - All Channels",
93854f5de6fSIan Rogers        "EventCode": "0x25",
93954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.NI",
94054f5de6fSIan Rogers        "FCMask": "0x00000000",
94154f5de6fSIan Rogers        "PerPkg": "1",
94254f5de6fSIan Rogers        "PortMask": "0x00000000",
94354f5de6fSIan Rogers        "Unit": "M2HBM"
94454f5de6fSIan Rogers    },
94554f5de6fSIan Rogers    {
94654f5de6fSIan Rogers        "BriefDescription": "Non-Inclusive Miss - All Channels",
94754f5de6fSIan Rogers        "EventCode": "0x25",
94854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.NI_MISS",
94954f5de6fSIan Rogers        "FCMask": "0x00000000",
95054f5de6fSIan Rogers        "PerPkg": "1",
95154f5de6fSIan Rogers        "PortMask": "0x00000000",
95254f5de6fSIan Rogers        "Unit": "M2HBM"
95354f5de6fSIan Rogers    },
95454f5de6fSIan Rogers    {
95554f5de6fSIan Rogers        "BriefDescription": "Partial Non-ISOCH - All Channels",
95654f5de6fSIan Rogers        "EventCode": "0x25",
95754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.PARTIAL",
95854f5de6fSIan Rogers        "PerPkg": "1",
95954f5de6fSIan Rogers        "UMask": "0x1802",
96054f5de6fSIan Rogers        "Unit": "M2HBM"
96154f5de6fSIan Rogers    },
96254f5de6fSIan Rogers    {
96354f5de6fSIan Rogers        "BriefDescription": "ISOCH Partial - All Channels",
96454f5de6fSIan Rogers        "EventCode": "0x25",
96554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_IMC_WRITES.PARTIAL_ISOCH",
96654f5de6fSIan Rogers        "PerPkg": "1",
96754f5de6fSIan Rogers        "UMask": "0x1808",
96854f5de6fSIan Rogers        "Unit": "M2HBM"
96954f5de6fSIan Rogers    },
97054f5de6fSIan Rogers    {
97154f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_PREFCAM_CIS_DROPS",
97254f5de6fSIan Rogers        "EventCode": "0x5c",
97354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_CIS_DROPS",
97454f5de6fSIan Rogers        "PerPkg": "1",
97554f5de6fSIan Rogers        "Unit": "M2HBM"
97654f5de6fSIan Rogers    },
97754f5de6fSIan Rogers    {
97854f5de6fSIan Rogers        "BriefDescription": "Data Prefetches Dropped",
97954f5de6fSIan Rogers        "EventCode": "0x58",
98054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_DROPS.CH0_UPI",
98154f5de6fSIan Rogers        "PerPkg": "1",
98254f5de6fSIan Rogers        "UMask": "0x2",
98354f5de6fSIan Rogers        "Unit": "M2HBM"
98454f5de6fSIan Rogers    },
98554f5de6fSIan Rogers    {
98654f5de6fSIan Rogers        "BriefDescription": "Data Prefetches Dropped",
98754f5de6fSIan Rogers        "EventCode": "0x58",
98854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_DROPS.CH0_XPT",
98954f5de6fSIan Rogers        "PerPkg": "1",
99054f5de6fSIan Rogers        "UMask": "0x1",
99154f5de6fSIan Rogers        "Unit": "M2HBM"
99254f5de6fSIan Rogers    },
99354f5de6fSIan Rogers    {
99454f5de6fSIan Rogers        "BriefDescription": "Data Prefetches Dropped",
99554f5de6fSIan Rogers        "EventCode": "0x58",
99654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_DROPS.CH1_UPI",
99754f5de6fSIan Rogers        "PerPkg": "1",
99854f5de6fSIan Rogers        "UMask": "0x8",
99954f5de6fSIan Rogers        "Unit": "M2HBM"
100054f5de6fSIan Rogers    },
100154f5de6fSIan Rogers    {
100254f5de6fSIan Rogers        "BriefDescription": "Data Prefetches Dropped",
100354f5de6fSIan Rogers        "EventCode": "0x58",
100454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_DROPS.CH1_XPT",
100554f5de6fSIan Rogers        "PerPkg": "1",
100654f5de6fSIan Rogers        "UMask": "0x4",
100754f5de6fSIan Rogers        "Unit": "M2HBM"
100854f5de6fSIan Rogers    },
100954f5de6fSIan Rogers    {
101054f5de6fSIan Rogers        "BriefDescription": "Data Prefetches Dropped : UPI - All Channels",
101154f5de6fSIan Rogers        "EventCode": "0x58",
101254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_DROPS.UPI_ALLCH",
101354f5de6fSIan Rogers        "PerPkg": "1",
101454f5de6fSIan Rogers        "UMask": "0xa",
101554f5de6fSIan Rogers        "Unit": "M2HBM"
101654f5de6fSIan Rogers    },
101754f5de6fSIan Rogers    {
101854f5de6fSIan Rogers        "BriefDescription": "Data Prefetches Dropped",
101954f5de6fSIan Rogers        "EventCode": "0x58",
102054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_DROPS.XPT_ALLCH",
102154f5de6fSIan Rogers        "PerPkg": "1",
102254f5de6fSIan Rogers        "UMask": "0x5",
102354f5de6fSIan Rogers        "Unit": "M2HBM"
102454f5de6fSIan Rogers    },
102554f5de6fSIan Rogers    {
102654f5de6fSIan Rogers        "BriefDescription": ": UPI - All Channels",
102754f5de6fSIan Rogers        "EventCode": "0x5d",
102854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_MERGE.UPI_ALLCH",
102954f5de6fSIan Rogers        "PerPkg": "1",
103054f5de6fSIan Rogers        "UMask": "0xa",
103154f5de6fSIan Rogers        "Unit": "M2HBM"
103254f5de6fSIan Rogers    },
103354f5de6fSIan Rogers    {
103454f5de6fSIan Rogers        "BriefDescription": ": XPT - All Channels",
103554f5de6fSIan Rogers        "EventCode": "0x5d",
103654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_MERGE.XPT_ALLCH",
103754f5de6fSIan Rogers        "PerPkg": "1",
103854f5de6fSIan Rogers        "UMask": "0x5",
103954f5de6fSIan Rogers        "Unit": "M2HBM"
104054f5de6fSIan Rogers    },
104154f5de6fSIan Rogers    {
104254f5de6fSIan Rogers        "BriefDescription": "Demands Not Merged with CAMed Prefetches",
104354f5de6fSIan Rogers        "EventCode": "0x5e",
104454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_NO_MERGE.RD_MERGED",
104554f5de6fSIan Rogers        "PerPkg": "1",
104654f5de6fSIan Rogers        "UMask": "0x40",
104754f5de6fSIan Rogers        "Unit": "M2HBM"
104854f5de6fSIan Rogers    },
104954f5de6fSIan Rogers    {
105054f5de6fSIan Rogers        "BriefDescription": "Demands Not Merged with CAMed Prefetches",
105154f5de6fSIan Rogers        "EventCode": "0x5e",
105254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_NO_MERGE.WR_MERGED",
105354f5de6fSIan Rogers        "PerPkg": "1",
105454f5de6fSIan Rogers        "UMask": "0x20",
105554f5de6fSIan Rogers        "Unit": "M2HBM"
105654f5de6fSIan Rogers    },
105754f5de6fSIan Rogers    {
105854f5de6fSIan Rogers        "BriefDescription": "Demands Not Merged with CAMed Prefetches",
105954f5de6fSIan Rogers        "EventCode": "0x5e",
106054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_DEMAND_NO_MERGE.WR_SQUASHED",
106154f5de6fSIan Rogers        "PerPkg": "1",
106254f5de6fSIan Rogers        "UMask": "0x10",
106354f5de6fSIan Rogers        "Unit": "M2HBM"
106454f5de6fSIan Rogers    },
106554f5de6fSIan Rogers    {
106654f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Inserts : UPI - Ch 0",
106754f5de6fSIan Rogers        "EventCode": "0x56",
106854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_INSERTS.CH0_UPI",
106954f5de6fSIan Rogers        "PerPkg": "1",
107054f5de6fSIan Rogers        "UMask": "0x2",
107154f5de6fSIan Rogers        "Unit": "M2HBM"
107254f5de6fSIan Rogers    },
107354f5de6fSIan Rogers    {
107454f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Inserts : XPT - Ch 0",
107554f5de6fSIan Rogers        "EventCode": "0x56",
107654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_INSERTS.CH0_XPT",
107754f5de6fSIan Rogers        "PerPkg": "1",
107854f5de6fSIan Rogers        "UMask": "0x1",
107954f5de6fSIan Rogers        "Unit": "M2HBM"
108054f5de6fSIan Rogers    },
108154f5de6fSIan Rogers    {
108254f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Inserts : UPI - Ch 1",
108354f5de6fSIan Rogers        "EventCode": "0x56",
108454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_INSERTS.CH1_UPI",
108554f5de6fSIan Rogers        "PerPkg": "1",
108654f5de6fSIan Rogers        "UMask": "0x8",
108754f5de6fSIan Rogers        "Unit": "M2HBM"
108854f5de6fSIan Rogers    },
108954f5de6fSIan Rogers    {
109054f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Inserts : XPT - Ch 1",
109154f5de6fSIan Rogers        "EventCode": "0x56",
109254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_INSERTS.CH1_XPT",
109354f5de6fSIan Rogers        "PerPkg": "1",
109454f5de6fSIan Rogers        "UMask": "0x4",
109554f5de6fSIan Rogers        "Unit": "M2HBM"
109654f5de6fSIan Rogers    },
109754f5de6fSIan Rogers    {
109854f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Inserts : UPI - All Channels",
109954f5de6fSIan Rogers        "EventCode": "0x56",
110054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_INSERTS.UPI_ALLCH",
110154f5de6fSIan Rogers        "PerPkg": "1",
110254f5de6fSIan Rogers        "UMask": "0xa",
110354f5de6fSIan Rogers        "Unit": "M2HBM"
110454f5de6fSIan Rogers    },
110554f5de6fSIan Rogers    {
110654f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Inserts : XPT - All Channels",
110754f5de6fSIan Rogers        "EventCode": "0x56",
110854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_INSERTS.XPT_ALLCH",
110954f5de6fSIan Rogers        "PerPkg": "1",
111054f5de6fSIan Rogers        "PublicDescription": "Prefetch CAM Inserts : XPT -All Channels",
111154f5de6fSIan Rogers        "UMask": "0x5",
111254f5de6fSIan Rogers        "Unit": "M2HBM"
111354f5de6fSIan Rogers    },
111454f5de6fSIan Rogers    {
111554f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Occupancy : All Channels",
111654f5de6fSIan Rogers        "EventCode": "0x54",
111754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_OCCUPANCY.ALLCH",
111854f5de6fSIan Rogers        "PerPkg": "1",
111954f5de6fSIan Rogers        "UMask": "0x3",
112054f5de6fSIan Rogers        "Unit": "M2HBM"
112154f5de6fSIan Rogers    },
112254f5de6fSIan Rogers    {
112354f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Occupancy : Channel 0",
112454f5de6fSIan Rogers        "EventCode": "0x54",
112554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_OCCUPANCY.CH0",
112654f5de6fSIan Rogers        "PerPkg": "1",
112754f5de6fSIan Rogers        "UMask": "0x1",
112854f5de6fSIan Rogers        "Unit": "M2HBM"
112954f5de6fSIan Rogers    },
113054f5de6fSIan Rogers    {
113154f5de6fSIan Rogers        "BriefDescription": "Prefetch CAM Occupancy : Channel 1",
113254f5de6fSIan Rogers        "EventCode": "0x54",
113354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_OCCUPANCY.CH1",
113454f5de6fSIan Rogers        "PerPkg": "1",
113554f5de6fSIan Rogers        "UMask": "0x2",
113654f5de6fSIan Rogers        "Unit": "M2HBM"
113754f5de6fSIan Rogers    },
113854f5de6fSIan Rogers    {
113954f5de6fSIan Rogers        "BriefDescription": "All Channels",
114054f5de6fSIan Rogers        "EventCode": "0x5f",
114154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_RESP_MISS.ALLCH",
114254f5de6fSIan Rogers        "PerPkg": "1",
114354f5de6fSIan Rogers        "UMask": "0x3",
114454f5de6fSIan Rogers        "Unit": "M2HBM"
114554f5de6fSIan Rogers    },
114654f5de6fSIan Rogers    {
114754f5de6fSIan Rogers        "BriefDescription": ": Channel 0",
114854f5de6fSIan Rogers        "EventCode": "0x5f",
114954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_RESP_MISS.CH0",
115054f5de6fSIan Rogers        "PerPkg": "1",
115154f5de6fSIan Rogers        "UMask": "0x1",
115254f5de6fSIan Rogers        "Unit": "M2HBM"
115354f5de6fSIan Rogers    },
115454f5de6fSIan Rogers    {
115554f5de6fSIan Rogers        "BriefDescription": ": Channel 1",
115654f5de6fSIan Rogers        "EventCode": "0x5f",
115754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_RESP_MISS.CH1",
115854f5de6fSIan Rogers        "PerPkg": "1",
115954f5de6fSIan Rogers        "UMask": "0x2",
116054f5de6fSIan Rogers        "Unit": "M2HBM"
116154f5de6fSIan Rogers    },
116254f5de6fSIan Rogers    {
116354f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_PREFCAM_RxC_DEALLOCS.1LM_POSTED",
116454f5de6fSIan Rogers        "EventCode": "0x62",
116554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_RxC_DEALLOCS.1LM_POSTED",
116654f5de6fSIan Rogers        "PerPkg": "1",
116754f5de6fSIan Rogers        "UMask": "0x2",
116854f5de6fSIan Rogers        "Unit": "M2HBM"
116954f5de6fSIan Rogers    },
117054f5de6fSIan Rogers    {
117154f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_PREFCAM_RxC_DEALLOCS.CIS",
117254f5de6fSIan Rogers        "EventCode": "0x62",
117354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_RxC_DEALLOCS.CIS",
117454f5de6fSIan Rogers        "PerPkg": "1",
117554f5de6fSIan Rogers        "UMask": "0x8",
117654f5de6fSIan Rogers        "Unit": "M2HBM"
117754f5de6fSIan Rogers    },
117854f5de6fSIan Rogers    {
117954f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_PREFCAM_RxC_DEALLOCS.SQUASHED",
118054f5de6fSIan Rogers        "EventCode": "0x62",
118154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_RxC_DEALLOCS.SQUASHED",
118254f5de6fSIan Rogers        "PerPkg": "1",
118354f5de6fSIan Rogers        "UMask": "0x1",
118454f5de6fSIan Rogers        "Unit": "M2HBM"
118554f5de6fSIan Rogers    },
118654f5de6fSIan Rogers    {
118754f5de6fSIan Rogers        "BriefDescription": "UNC_M2HBM_PREFCAM_RxC_OCCUPANCY",
118854f5de6fSIan Rogers        "EventCode": "0x60",
118954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_PREFCAM_RxC_OCCUPANCY",
119054f5de6fSIan Rogers        "FCMask": "0x00000000",
119154f5de6fSIan Rogers        "PerPkg": "1",
119254f5de6fSIan Rogers        "PortMask": "0x00000000",
119354f5de6fSIan Rogers        "Unit": "M2HBM"
119454f5de6fSIan Rogers    },
119554f5de6fSIan Rogers    {
119654f5de6fSIan Rogers        "BriefDescription": "AD Ingress (from CMS) : AD Ingress (from CMS) Allocations",
119754f5de6fSIan Rogers        "EventCode": "0x02",
119854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_RxC_AD.INSERTS",
119954f5de6fSIan Rogers        "FCMask": "0x00000000",
120054f5de6fSIan Rogers        "PerPkg": "1",
120154f5de6fSIan Rogers        "PortMask": "0x00000000",
120254f5de6fSIan Rogers        "UMask": "0x1",
120354f5de6fSIan Rogers        "Unit": "M2HBM"
120454f5de6fSIan Rogers    },
120554f5de6fSIan Rogers    {
120654f5de6fSIan Rogers        "BriefDescription": "AD Ingress (from CMS) : AD Ingress (from CMS) Allocations",
120754f5de6fSIan Rogers        "EventCode": "0x02",
120854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_RxC_AD_INSERTS",
120954f5de6fSIan Rogers        "PerPkg": "1",
121054f5de6fSIan Rogers        "UMask": "0x1",
121154f5de6fSIan Rogers        "Unit": "M2HBM"
121254f5de6fSIan Rogers    },
121354f5de6fSIan Rogers    {
121454f5de6fSIan Rogers        "BriefDescription": "AD Ingress (from CMS) Occupancy",
121554f5de6fSIan Rogers        "EventCode": "0x03",
121654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_RxC_AD_OCCUPANCY",
121754f5de6fSIan Rogers        "PerPkg": "1",
121854f5de6fSIan Rogers        "Unit": "M2HBM"
121954f5de6fSIan Rogers    },
122054f5de6fSIan Rogers    {
122154f5de6fSIan Rogers        "BriefDescription": "BL Ingress (from CMS) : BL Ingress (from CMS) Allocations",
122254f5de6fSIan Rogers        "EventCode": "0x04",
122354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_RxC_BL.INSERTS",
122454f5de6fSIan Rogers        "FCMask": "0x00000000",
122554f5de6fSIan Rogers        "PerPkg": "1",
122654f5de6fSIan Rogers        "PortMask": "0x00000000",
122754f5de6fSIan Rogers        "PublicDescription": "Counts anytime a BL packet is added to Ingress",
122854f5de6fSIan Rogers        "UMask": "0x1",
122954f5de6fSIan Rogers        "Unit": "M2HBM"
123054f5de6fSIan Rogers    },
123154f5de6fSIan Rogers    {
123254f5de6fSIan Rogers        "BriefDescription": "BL Ingress (from CMS) : BL Ingress (from CMS) Allocations",
123354f5de6fSIan Rogers        "EventCode": "0x04",
123454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_RxC_BL_INSERTS",
123554f5de6fSIan Rogers        "PerPkg": "1",
123654f5de6fSIan Rogers        "PublicDescription": "Counts anytime a BL packet is added to Ingress",
123754f5de6fSIan Rogers        "UMask": "0x1",
123854f5de6fSIan Rogers        "Unit": "M2HBM"
123954f5de6fSIan Rogers    },
124054f5de6fSIan Rogers    {
124154f5de6fSIan Rogers        "BriefDescription": "BL Ingress (from CMS) Occupancy",
124254f5de6fSIan Rogers        "EventCode": "0x05",
124354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_RxC_BL_OCCUPANCY",
124454f5de6fSIan Rogers        "PerPkg": "1",
124554f5de6fSIan Rogers        "Unit": "M2HBM"
124654f5de6fSIan Rogers    },
124754f5de6fSIan Rogers    {
124854f5de6fSIan Rogers        "BriefDescription": "Number AD Ingress Credits",
124954f5de6fSIan Rogers        "EventCode": "0x2e",
125054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TGR_AD_CREDITS",
125154f5de6fSIan Rogers        "PerPkg": "1",
125254f5de6fSIan Rogers        "Unit": "M2HBM"
125354f5de6fSIan Rogers    },
125454f5de6fSIan Rogers    {
125554f5de6fSIan Rogers        "BriefDescription": "Number BL Ingress Credits",
125654f5de6fSIan Rogers        "EventCode": "0x2f",
125754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TGR_BL_CREDITS",
125854f5de6fSIan Rogers        "PerPkg": "1",
125954f5de6fSIan Rogers        "Unit": "M2HBM"
126054f5de6fSIan Rogers    },
126154f5de6fSIan Rogers    {
126254f5de6fSIan Rogers        "BriefDescription": "Tracker Inserts : Channel 0",
126354f5de6fSIan Rogers        "EventCode": "0x32",
126454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TRACKER_INSERTS.CH0",
126554f5de6fSIan Rogers        "PerPkg": "1",
126654f5de6fSIan Rogers        "UMask": "0x104",
126754f5de6fSIan Rogers        "Unit": "M2HBM"
126854f5de6fSIan Rogers    },
126954f5de6fSIan Rogers    {
127054f5de6fSIan Rogers        "BriefDescription": "Tracker Inserts : Channel 1",
127154f5de6fSIan Rogers        "EventCode": "0x32",
127254f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TRACKER_INSERTS.CH1",
127354f5de6fSIan Rogers        "PerPkg": "1",
127454f5de6fSIan Rogers        "UMask": "0x204",
127554f5de6fSIan Rogers        "Unit": "M2HBM"
127654f5de6fSIan Rogers    },
127754f5de6fSIan Rogers    {
127854f5de6fSIan Rogers        "BriefDescription": "Tracker Occupancy : Channel 0",
127954f5de6fSIan Rogers        "EventCode": "0x33",
128054f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TRACKER_OCCUPANCY.CH0",
128154f5de6fSIan Rogers        "PerPkg": "1",
128254f5de6fSIan Rogers        "UMask": "0x1",
128354f5de6fSIan Rogers        "Unit": "M2HBM"
128454f5de6fSIan Rogers    },
128554f5de6fSIan Rogers    {
128654f5de6fSIan Rogers        "BriefDescription": "Tracker Occupancy : Channel 1",
128754f5de6fSIan Rogers        "EventCode": "0x33",
128854f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TRACKER_OCCUPANCY.CH1",
128954f5de6fSIan Rogers        "PerPkg": "1",
129054f5de6fSIan Rogers        "UMask": "0x2",
129154f5de6fSIan Rogers        "Unit": "M2HBM"
129254f5de6fSIan Rogers    },
129354f5de6fSIan Rogers    {
129454f5de6fSIan Rogers        "BriefDescription": "AD Egress (to CMS) : AD Egress (to CMS) Allocations",
129554f5de6fSIan Rogers        "EventCode": "0x06",
129654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_AD.INSERTS",
129754f5de6fSIan Rogers        "FCMask": "0x00000000",
129854f5de6fSIan Rogers        "PerPkg": "1",
129954f5de6fSIan Rogers        "PortMask": "0x00000000",
130054f5de6fSIan Rogers        "PublicDescription": "Counts anytime a AD packet is added to Egress",
130154f5de6fSIan Rogers        "UMask": "0x1",
130254f5de6fSIan Rogers        "Unit": "M2HBM"
130354f5de6fSIan Rogers    },
130454f5de6fSIan Rogers    {
130554f5de6fSIan Rogers        "BriefDescription": "AD Egress (to CMS) : AD Egress (to CMS) Allocations",
130654f5de6fSIan Rogers        "EventCode": "0x06",
130754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_AD_INSERTS",
130854f5de6fSIan Rogers        "PerPkg": "1",
130954f5de6fSIan Rogers        "PublicDescription": "Counts anytime a AD packet is added to Egress",
131054f5de6fSIan Rogers        "UMask": "0x1",
131154f5de6fSIan Rogers        "Unit": "M2HBM"
131254f5de6fSIan Rogers    },
131354f5de6fSIan Rogers    {
131454f5de6fSIan Rogers        "BriefDescription": "AD Egress (to CMS) Occupancy",
131554f5de6fSIan Rogers        "EventCode": "0x07",
131654f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_AD_OCCUPANCY",
131754f5de6fSIan Rogers        "PerPkg": "1",
131854f5de6fSIan Rogers        "Unit": "M2HBM"
131954f5de6fSIan Rogers    },
132054f5de6fSIan Rogers    {
132154f5de6fSIan Rogers        "BriefDescription": "BL Egress (to CMS) : Inserts - CMS0 - Near Side",
132254f5de6fSIan Rogers        "EventCode": "0x0E",
132354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_BL.INSERTS_CMS0",
132454f5de6fSIan Rogers        "FCMask": "0x00000000",
132554f5de6fSIan Rogers        "PerPkg": "1",
132654f5de6fSIan Rogers        "PortMask": "0x00000000",
132754f5de6fSIan Rogers        "PublicDescription": "Counts the number of BL transactions to CMS add port 0",
132854f5de6fSIan Rogers        "UMask": "0x101",
132954f5de6fSIan Rogers        "Unit": "M2HBM"
133054f5de6fSIan Rogers    },
133154f5de6fSIan Rogers    {
133254f5de6fSIan Rogers        "BriefDescription": "BL Egress (to CMS) : Inserts - CMS1 - Far Side",
133354f5de6fSIan Rogers        "EventCode": "0x0E",
133454f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_BL.INSERTS_CMS1",
133554f5de6fSIan Rogers        "FCMask": "0x00000000",
133654f5de6fSIan Rogers        "PerPkg": "1",
133754f5de6fSIan Rogers        "PortMask": "0x00000000",
133854f5de6fSIan Rogers        "PublicDescription": "Counts the number of BL transactions to CMS add port 1",
133954f5de6fSIan Rogers        "UMask": "0x201",
134054f5de6fSIan Rogers        "Unit": "M2HBM"
134154f5de6fSIan Rogers    },
134254f5de6fSIan Rogers    {
134354f5de6fSIan Rogers        "BriefDescription": "BL Egress (to CMS) Occupancy : All",
134454f5de6fSIan Rogers        "EventCode": "0x0f",
134554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_BL_OCCUPANCY.ALL",
134654f5de6fSIan Rogers        "PerPkg": "1",
134754f5de6fSIan Rogers        "UMask": "0x3",
134854f5de6fSIan Rogers        "Unit": "M2HBM"
134954f5de6fSIan Rogers    },
135054f5de6fSIan Rogers    {
135154f5de6fSIan Rogers        "BriefDescription": "BL Egress (to CMS) Occupancy : Common Mesh Stop - Near Side",
135254f5de6fSIan Rogers        "EventCode": "0x0f",
135354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_BL_OCCUPANCY.CMS0",
135454f5de6fSIan Rogers        "PerPkg": "1",
135554f5de6fSIan Rogers        "UMask": "0x1",
135654f5de6fSIan Rogers        "Unit": "M2HBM"
135754f5de6fSIan Rogers    },
135854f5de6fSIan Rogers    {
135954f5de6fSIan Rogers        "BriefDescription": "BL Egress (to CMS) Occupancy : Common Mesh Stop - Far Side",
136054f5de6fSIan Rogers        "EventCode": "0x0f",
136154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_TxC_BL_OCCUPANCY.CMS1",
136254f5de6fSIan Rogers        "PerPkg": "1",
136354f5de6fSIan Rogers        "UMask": "0x2",
136454f5de6fSIan Rogers        "Unit": "M2HBM"
136554f5de6fSIan Rogers    },
136654f5de6fSIan Rogers    {
136754f5de6fSIan Rogers        "BriefDescription": "WPQ Flush : Channel 0",
136854f5de6fSIan Rogers        "EventCode": "0x42",
136954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WPQ_FLUSH.CH0",
137054f5de6fSIan Rogers        "PerPkg": "1",
137154f5de6fSIan Rogers        "UMask": "0x1",
137254f5de6fSIan Rogers        "Unit": "M2HBM"
137354f5de6fSIan Rogers    },
137454f5de6fSIan Rogers    {
137554f5de6fSIan Rogers        "BriefDescription": "WPQ Flush : Channel 1",
137654f5de6fSIan Rogers        "EventCode": "0x42",
137754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WPQ_FLUSH.CH1",
137854f5de6fSIan Rogers        "PerPkg": "1",
137954f5de6fSIan Rogers        "UMask": "0x2",
138054f5de6fSIan Rogers        "Unit": "M2HBM"
138154f5de6fSIan Rogers    },
138254f5de6fSIan Rogers    {
138354f5de6fSIan Rogers        "BriefDescription": "M2M and iMC WPQ Cycles w/Credits - Regular : Channel 0",
138454f5de6fSIan Rogers        "EventCode": "0x37",
138554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WPQ_NO_REG_CRD.CHN0",
138654f5de6fSIan Rogers        "PerPkg": "1",
138754f5de6fSIan Rogers        "UMask": "0x1",
138854f5de6fSIan Rogers        "Unit": "M2HBM"
138954f5de6fSIan Rogers    },
139054f5de6fSIan Rogers    {
139154f5de6fSIan Rogers        "BriefDescription": "M2M and iMC WPQ Cycles w/Credits - Regular : Channel 1",
139254f5de6fSIan Rogers        "EventCode": "0x37",
139354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WPQ_NO_REG_CRD.CHN1",
139454f5de6fSIan Rogers        "PerPkg": "1",
139554f5de6fSIan Rogers        "UMask": "0x2",
139654f5de6fSIan Rogers        "Unit": "M2HBM"
139754f5de6fSIan Rogers    },
139854f5de6fSIan Rogers    {
139954f5de6fSIan Rogers        "BriefDescription": "M2M and iMC WPQ Cycles w/Credits - Special : Channel 0",
140054f5de6fSIan Rogers        "EventCode": "0x38",
140154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WPQ_NO_SPEC_CRD.CHN0",
140254f5de6fSIan Rogers        "PerPkg": "1",
140354f5de6fSIan Rogers        "UMask": "0x1",
140454f5de6fSIan Rogers        "Unit": "M2HBM"
140554f5de6fSIan Rogers    },
140654f5de6fSIan Rogers    {
140754f5de6fSIan Rogers        "BriefDescription": "M2M and iMC WPQ Cycles w/Credits - Special : Channel 1",
140854f5de6fSIan Rogers        "EventCode": "0x38",
140954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WPQ_NO_SPEC_CRD.CHN1",
141054f5de6fSIan Rogers        "PerPkg": "1",
141154f5de6fSIan Rogers        "UMask": "0x2",
141254f5de6fSIan Rogers        "Unit": "M2HBM"
141354f5de6fSIan Rogers    },
141454f5de6fSIan Rogers    {
141554f5de6fSIan Rogers        "BriefDescription": "Write Tracker Inserts : Channel 0",
141654f5de6fSIan Rogers        "EventCode": "0x40",
141754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_INSERTS.CH0",
141854f5de6fSIan Rogers        "PerPkg": "1",
141954f5de6fSIan Rogers        "UMask": "0x1",
142054f5de6fSIan Rogers        "Unit": "M2HBM"
142154f5de6fSIan Rogers    },
142254f5de6fSIan Rogers    {
142354f5de6fSIan Rogers        "BriefDescription": "Write Tracker Inserts : Channel 1",
142454f5de6fSIan Rogers        "EventCode": "0x40",
142554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_INSERTS.CH1",
142654f5de6fSIan Rogers        "PerPkg": "1",
142754f5de6fSIan Rogers        "UMask": "0x2",
142854f5de6fSIan Rogers        "Unit": "M2HBM"
142954f5de6fSIan Rogers    },
143054f5de6fSIan Rogers    {
143154f5de6fSIan Rogers        "BriefDescription": "Write Tracker Non-Posted Inserts : Channel 0",
143254f5de6fSIan Rogers        "EventCode": "0x4d",
143354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_NONPOSTED_INSERTS.CH0",
143454f5de6fSIan Rogers        "PerPkg": "1",
143554f5de6fSIan Rogers        "UMask": "0x1",
143654f5de6fSIan Rogers        "Unit": "M2HBM"
143754f5de6fSIan Rogers    },
143854f5de6fSIan Rogers    {
143954f5de6fSIan Rogers        "BriefDescription": "Write Tracker Non-Posted Inserts : Channel 1",
144054f5de6fSIan Rogers        "EventCode": "0x4d",
144154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_NONPOSTED_INSERTS.CH1",
144254f5de6fSIan Rogers        "PerPkg": "1",
144354f5de6fSIan Rogers        "UMask": "0x2",
144454f5de6fSIan Rogers        "Unit": "M2HBM"
144554f5de6fSIan Rogers    },
144654f5de6fSIan Rogers    {
144754f5de6fSIan Rogers        "BriefDescription": "Write Tracker Non-Posted Occupancy : Channel 0",
144854f5de6fSIan Rogers        "EventCode": "0x4c",
144954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_NONPOSTED_OCCUPANCY.CH0",
145054f5de6fSIan Rogers        "PerPkg": "1",
145154f5de6fSIan Rogers        "UMask": "0x1",
145254f5de6fSIan Rogers        "Unit": "M2HBM"
145354f5de6fSIan Rogers    },
145454f5de6fSIan Rogers    {
145554f5de6fSIan Rogers        "BriefDescription": "Write Tracker Non-Posted Occupancy : Channel 1",
145654f5de6fSIan Rogers        "EventCode": "0x4c",
145754f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_NONPOSTED_OCCUPANCY.CH1",
145854f5de6fSIan Rogers        "PerPkg": "1",
145954f5de6fSIan Rogers        "UMask": "0x2",
146054f5de6fSIan Rogers        "Unit": "M2HBM"
146154f5de6fSIan Rogers    },
146254f5de6fSIan Rogers    {
146354f5de6fSIan Rogers        "BriefDescription": "Write Tracker Posted Inserts : Channel 0",
146454f5de6fSIan Rogers        "EventCode": "0x48",
146554f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_POSTED_INSERTS.CH0",
146654f5de6fSIan Rogers        "PerPkg": "1",
146754f5de6fSIan Rogers        "UMask": "0x1",
146854f5de6fSIan Rogers        "Unit": "M2HBM"
146954f5de6fSIan Rogers    },
147054f5de6fSIan Rogers    {
147154f5de6fSIan Rogers        "BriefDescription": "Write Tracker Posted Inserts : Channel 1",
147254f5de6fSIan Rogers        "EventCode": "0x48",
147354f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_POSTED_INSERTS.CH1",
147454f5de6fSIan Rogers        "PerPkg": "1",
147554f5de6fSIan Rogers        "UMask": "0x2",
147654f5de6fSIan Rogers        "Unit": "M2HBM"
147754f5de6fSIan Rogers    },
147854f5de6fSIan Rogers    {
147954f5de6fSIan Rogers        "BriefDescription": "Write Tracker Posted Occupancy : Channel 0",
148054f5de6fSIan Rogers        "EventCode": "0x47",
148154f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_POSTED_OCCUPANCY.CH0",
148254f5de6fSIan Rogers        "PerPkg": "1",
148354f5de6fSIan Rogers        "UMask": "0x1",
148454f5de6fSIan Rogers        "Unit": "M2HBM"
148554f5de6fSIan Rogers    },
148654f5de6fSIan Rogers    {
148754f5de6fSIan Rogers        "BriefDescription": "Write Tracker Posted Occupancy : Channel 1",
148854f5de6fSIan Rogers        "EventCode": "0x47",
148954f5de6fSIan Rogers        "EventName": "UNC_M2HBM_WR_TRACKER_POSTED_OCCUPANCY.CH1",
149054f5de6fSIan Rogers        "PerPkg": "1",
149154f5de6fSIan Rogers        "UMask": "0x2",
149254f5de6fSIan Rogers        "Unit": "M2HBM"
149354f5de6fSIan Rogers    },
149454f5de6fSIan Rogers    {
149554f5de6fSIan Rogers        "BriefDescription": "Activate due to read, write, underfill, or bypass",
149654f5de6fSIan Rogers        "EventCode": "0x02",
149754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.ALL",
149854f5de6fSIan Rogers        "PerPkg": "1",
149954f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
150054f5de6fSIan Rogers        "UMask": "0xff",
150154f5de6fSIan Rogers        "Unit": "MCHBM"
150254f5de6fSIan Rogers    },
150354f5de6fSIan Rogers    {
150454f5de6fSIan Rogers        "BriefDescription": "Activate due to read",
150554f5de6fSIan Rogers        "EventCode": "0x02",
150654f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.RD",
150754f5de6fSIan Rogers        "PerPkg": "1",
150854f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
150954f5de6fSIan Rogers        "UMask": "0x11",
151054f5de6fSIan Rogers        "Unit": "MCHBM"
151154f5de6fSIan Rogers    },
151254f5de6fSIan Rogers    {
151354f5de6fSIan Rogers        "BriefDescription": "HBM Activate Count : Activate due to Read in PCH0",
151454f5de6fSIan Rogers        "EventCode": "0x02",
151554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.RD_PCH0",
151654f5de6fSIan Rogers        "PerPkg": "1",
151754f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
151854f5de6fSIan Rogers        "UMask": "0x1",
151954f5de6fSIan Rogers        "Unit": "MCHBM"
152054f5de6fSIan Rogers    },
152154f5de6fSIan Rogers    {
152254f5de6fSIan Rogers        "BriefDescription": "HBM Activate Count : Activate due to Read in PCH1",
152354f5de6fSIan Rogers        "EventCode": "0x02",
152454f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.RD_PCH1",
152554f5de6fSIan Rogers        "PerPkg": "1",
152654f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
152754f5de6fSIan Rogers        "UMask": "0x10",
152854f5de6fSIan Rogers        "Unit": "MCHBM"
152954f5de6fSIan Rogers    },
153054f5de6fSIan Rogers    {
153154f5de6fSIan Rogers        "BriefDescription": "HBM Activate Count : Underfill Read transaction on Page Empty or Page Miss",
153254f5de6fSIan Rogers        "EventCode": "0x02",
153354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.UFILL",
153454f5de6fSIan Rogers        "PerPkg": "1",
153554f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
153654f5de6fSIan Rogers        "UMask": "0x44",
153754f5de6fSIan Rogers        "Unit": "MCHBM"
153854f5de6fSIan Rogers    },
153954f5de6fSIan Rogers    {
154054f5de6fSIan Rogers        "BriefDescription": "HBM Activate Count",
154154f5de6fSIan Rogers        "EventCode": "0x02",
154254f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.UFILL_PCH0",
154354f5de6fSIan Rogers        "PerPkg": "1",
154454f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
154554f5de6fSIan Rogers        "UMask": "0x4",
154654f5de6fSIan Rogers        "Unit": "MCHBM"
154754f5de6fSIan Rogers    },
154854f5de6fSIan Rogers    {
154954f5de6fSIan Rogers        "BriefDescription": "HBM Activate Count",
155054f5de6fSIan Rogers        "EventCode": "0x02",
155154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.UFILL_PCH1",
155254f5de6fSIan Rogers        "PerPkg": "1",
155354f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
155454f5de6fSIan Rogers        "UMask": "0x40",
155554f5de6fSIan Rogers        "Unit": "MCHBM"
155654f5de6fSIan Rogers    },
155754f5de6fSIan Rogers    {
155854f5de6fSIan Rogers        "BriefDescription": "Activate due to write",
155954f5de6fSIan Rogers        "EventCode": "0x02",
156054f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.WR",
156154f5de6fSIan Rogers        "PerPkg": "1",
156254f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
156354f5de6fSIan Rogers        "UMask": "0x22",
156454f5de6fSIan Rogers        "Unit": "MCHBM"
156554f5de6fSIan Rogers    },
156654f5de6fSIan Rogers    {
156754f5de6fSIan Rogers        "BriefDescription": "HBM Activate Count : Activate due to Write in PCH0",
156854f5de6fSIan Rogers        "EventCode": "0x02",
156954f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.WR_PCH0",
157054f5de6fSIan Rogers        "PerPkg": "1",
157154f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
157254f5de6fSIan Rogers        "UMask": "0x2",
157354f5de6fSIan Rogers        "Unit": "MCHBM"
157454f5de6fSIan Rogers    },
157554f5de6fSIan Rogers    {
157654f5de6fSIan Rogers        "BriefDescription": "HBM Activate Count : Activate due to Write in PCH1",
157754f5de6fSIan Rogers        "EventCode": "0x02",
157854f5de6fSIan Rogers        "EventName": "UNC_MCHBM_ACT_COUNT.WR_PCH1",
157954f5de6fSIan Rogers        "PerPkg": "1",
158054f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Activate commands sent on this channel.  Activate commands are issued to open up a page on the HBM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
158154f5de6fSIan Rogers        "UMask": "0x20",
158254f5de6fSIan Rogers        "Unit": "MCHBM"
158354f5de6fSIan Rogers    },
158454f5de6fSIan Rogers    {
158554f5de6fSIan Rogers        "BriefDescription": "All CAS commands issued",
158654f5de6fSIan Rogers        "EventCode": "0x05",
158754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.ALL",
158854f5de6fSIan Rogers        "PerPkg": "1",
158954f5de6fSIan Rogers        "UMask": "0xff",
159054f5de6fSIan Rogers        "Unit": "MCHBM"
159154f5de6fSIan Rogers    },
159254f5de6fSIan Rogers    {
159354f5de6fSIan Rogers        "BriefDescription": "Pseudo Channel 0",
159454f5de6fSIan Rogers        "EventCode": "0x05",
159554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.PCH0",
159654f5de6fSIan Rogers        "PerPkg": "1",
159754f5de6fSIan Rogers        "PublicDescription": "HBM RD_CAS and WR_CAS Commands",
159854f5de6fSIan Rogers        "UMask": "0x40",
159954f5de6fSIan Rogers        "Unit": "MCHBM"
160054f5de6fSIan Rogers    },
160154f5de6fSIan Rogers    {
160254f5de6fSIan Rogers        "BriefDescription": "Pseudo Channel 1",
160354f5de6fSIan Rogers        "EventCode": "0x05",
160454f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.PCH1",
160554f5de6fSIan Rogers        "PerPkg": "1",
160654f5de6fSIan Rogers        "PublicDescription": "HBM RD_CAS and WR_CAS Commands",
160754f5de6fSIan Rogers        "UMask": "0x80",
160854f5de6fSIan Rogers        "Unit": "MCHBM"
160954f5de6fSIan Rogers    },
161054f5de6fSIan Rogers    {
161154f5de6fSIan Rogers        "BriefDescription": "Read CAS commands issued (regular and underfill)",
161254f5de6fSIan Rogers        "EventCode": "0x05",
161354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.RD",
161454f5de6fSIan Rogers        "PerPkg": "1",
161554f5de6fSIan Rogers        "UMask": "0xcf",
161654f5de6fSIan Rogers        "Unit": "MCHBM"
161754f5de6fSIan Rogers    },
161854f5de6fSIan Rogers    {
161954f5de6fSIan Rogers        "BriefDescription": "Regular read CAS commands with precharge",
162054f5de6fSIan Rogers        "EventCode": "0x05",
162154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.RD_PRE_REG",
162254f5de6fSIan Rogers        "PerPkg": "1",
162354f5de6fSIan Rogers        "UMask": "0xc2",
162454f5de6fSIan Rogers        "Unit": "MCHBM"
162554f5de6fSIan Rogers    },
162654f5de6fSIan Rogers    {
162754f5de6fSIan Rogers        "BriefDescription": "Underfill read CAS commands with precharge",
162854f5de6fSIan Rogers        "EventCode": "0x05",
162954f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.RD_PRE_UNDERFILL",
163054f5de6fSIan Rogers        "PerPkg": "1",
163154f5de6fSIan Rogers        "UMask": "0xc8",
163254f5de6fSIan Rogers        "Unit": "MCHBM"
163354f5de6fSIan Rogers    },
163454f5de6fSIan Rogers    {
163554f5de6fSIan Rogers        "BriefDescription": "Regular read CAS commands issued (does not include underfills)",
163654f5de6fSIan Rogers        "EventCode": "0x05",
163754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.RD_REG",
163854f5de6fSIan Rogers        "PerPkg": "1",
163954f5de6fSIan Rogers        "UMask": "0xc1",
164054f5de6fSIan Rogers        "Unit": "MCHBM"
164154f5de6fSIan Rogers    },
164254f5de6fSIan Rogers    {
164354f5de6fSIan Rogers        "BriefDescription": "Underfill read CAS commands issued",
164454f5de6fSIan Rogers        "EventCode": "0x05",
164554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.RD_UNDERFILL",
164654f5de6fSIan Rogers        "PerPkg": "1",
164754f5de6fSIan Rogers        "UMask": "0xc4",
164854f5de6fSIan Rogers        "Unit": "MCHBM"
164954f5de6fSIan Rogers    },
165054f5de6fSIan Rogers    {
165154f5de6fSIan Rogers        "BriefDescription": "Write CAS commands issued",
165254f5de6fSIan Rogers        "EventCode": "0x05",
165354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.WR",
165454f5de6fSIan Rogers        "PerPkg": "1",
165554f5de6fSIan Rogers        "UMask": "0xf0",
165654f5de6fSIan Rogers        "Unit": "MCHBM"
165754f5de6fSIan Rogers    },
165854f5de6fSIan Rogers    {
165954f5de6fSIan Rogers        "BriefDescription": "HBM RD_CAS and WR_CAS Commands. : HBM WR_CAS commands w/o auto-pre",
166054f5de6fSIan Rogers        "EventCode": "0x05",
166154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.WR_NONPRE",
166254f5de6fSIan Rogers        "PerPkg": "1",
166354f5de6fSIan Rogers        "UMask": "0xd0",
166454f5de6fSIan Rogers        "Unit": "MCHBM"
166554f5de6fSIan Rogers    },
166654f5de6fSIan Rogers    {
166754f5de6fSIan Rogers        "BriefDescription": "Write CAS commands with precharge",
166854f5de6fSIan Rogers        "EventCode": "0x05",
166954f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_COUNT.WR_PRE",
167054f5de6fSIan Rogers        "PerPkg": "1",
167154f5de6fSIan Rogers        "UMask": "0xe0",
167254f5de6fSIan Rogers        "Unit": "MCHBM"
167354f5de6fSIan Rogers    },
167454f5de6fSIan Rogers    {
167554f5de6fSIan Rogers        "BriefDescription": "Pseudo Channel 0",
167654f5de6fSIan Rogers        "EventCode": "0x06",
167754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.PCH0",
167854f5de6fSIan Rogers        "PerPkg": "1",
167954f5de6fSIan Rogers        "UMask": "0x40",
168054f5de6fSIan Rogers        "Unit": "MCHBM"
168154f5de6fSIan Rogers    },
168254f5de6fSIan Rogers    {
168354f5de6fSIan Rogers        "BriefDescription": "Pseudo Channel 1",
168454f5de6fSIan Rogers        "EventCode": "0x06",
168554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.PCH1",
168654f5de6fSIan Rogers        "PerPkg": "1",
168754f5de6fSIan Rogers        "UMask": "0x80",
168854f5de6fSIan Rogers        "Unit": "MCHBM"
168954f5de6fSIan Rogers    },
169054f5de6fSIan Rogers    {
169154f5de6fSIan Rogers        "BriefDescription": "Read CAS Command in Interleaved Mode (32B)",
169254f5de6fSIan Rogers        "EventCode": "0x06",
169354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.RD_32B",
169454f5de6fSIan Rogers        "PerPkg": "1",
169554f5de6fSIan Rogers        "UMask": "0xc8",
169654f5de6fSIan Rogers        "Unit": "MCHBM"
169754f5de6fSIan Rogers    },
169854f5de6fSIan Rogers    {
169954f5de6fSIan Rogers        "BriefDescription": "Read CAS Command in Regular Mode (64B) in Pseudochannel 0",
170054f5de6fSIan Rogers        "EventCode": "0x06",
170154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.RD_64B",
170254f5de6fSIan Rogers        "PerPkg": "1",
170354f5de6fSIan Rogers        "UMask": "0xc1",
170454f5de6fSIan Rogers        "Unit": "MCHBM"
170554f5de6fSIan Rogers    },
170654f5de6fSIan Rogers    {
170754f5de6fSIan Rogers        "BriefDescription": "Underfill Read CAS Command in Interleaved Mode (32B)",
170854f5de6fSIan Rogers        "EventCode": "0x06",
170954f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.RD_UFILL_32B",
171054f5de6fSIan Rogers        "PerPkg": "1",
171154f5de6fSIan Rogers        "UMask": "0xd0",
171254f5de6fSIan Rogers        "Unit": "MCHBM"
171354f5de6fSIan Rogers    },
171454f5de6fSIan Rogers    {
171554f5de6fSIan Rogers        "BriefDescription": "Underfill Read CAS Command in Regular Mode (64B) in Pseudochannel 1",
171654f5de6fSIan Rogers        "EventCode": "0x06",
171754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.RD_UFILL_64B",
171854f5de6fSIan Rogers        "PerPkg": "1",
171954f5de6fSIan Rogers        "UMask": "0xc2",
172054f5de6fSIan Rogers        "Unit": "MCHBM"
172154f5de6fSIan Rogers    },
172254f5de6fSIan Rogers    {
172354f5de6fSIan Rogers        "BriefDescription": "Write CAS Command in Interleaved Mode (32B)",
172454f5de6fSIan Rogers        "EventCode": "0x06",
172554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.WR_32B",
172654f5de6fSIan Rogers        "PerPkg": "1",
172754f5de6fSIan Rogers        "UMask": "0xe0",
172854f5de6fSIan Rogers        "Unit": "MCHBM"
172954f5de6fSIan Rogers    },
173054f5de6fSIan Rogers    {
173154f5de6fSIan Rogers        "BriefDescription": "Write CAS Command in Regular Mode (64B) in Pseudochannel 0",
173254f5de6fSIan Rogers        "EventCode": "0x06",
173354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CAS_ISSUED_REQ_LEN.WR_64B",
173454f5de6fSIan Rogers        "PerPkg": "1",
173554f5de6fSIan Rogers        "UMask": "0xc4",
173654f5de6fSIan Rogers        "Unit": "MCHBM"
173754f5de6fSIan Rogers    },
173854f5de6fSIan Rogers    {
173954f5de6fSIan Rogers        "BriefDescription": "IMC Clockticks at DCLK frequency",
174054f5de6fSIan Rogers        "EventCode": "0x01",
174154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_CLOCKTICKS",
174254f5de6fSIan Rogers        "PerPkg": "1",
174354f5de6fSIan Rogers        "UMask": "0x1",
174454f5de6fSIan Rogers        "Unit": "MCHBM"
174554f5de6fSIan Rogers    },
174654f5de6fSIan Rogers    {
174754f5de6fSIan Rogers        "BriefDescription": "HBM Precharge All Commands",
174854f5de6fSIan Rogers        "EventCode": "0x44",
174954f5de6fSIan Rogers        "EventName": "UNC_MCHBM_HBM_PREALL.PCH0",
175054f5de6fSIan Rogers        "PerPkg": "1",
175154f5de6fSIan Rogers        "PublicDescription": "Counts the number of times that the precharge all command was sent.",
175254f5de6fSIan Rogers        "UMask": "0x1",
175354f5de6fSIan Rogers        "Unit": "MCHBM"
175454f5de6fSIan Rogers    },
175554f5de6fSIan Rogers    {
175654f5de6fSIan Rogers        "BriefDescription": "HBM Precharge All Commands",
175754f5de6fSIan Rogers        "EventCode": "0x44",
175854f5de6fSIan Rogers        "EventName": "UNC_MCHBM_HBM_PREALL.PCH1",
175954f5de6fSIan Rogers        "PerPkg": "1",
176054f5de6fSIan Rogers        "PublicDescription": "Counts the number of times that the precharge all command was sent.",
176154f5de6fSIan Rogers        "UMask": "0x2",
176254f5de6fSIan Rogers        "Unit": "MCHBM"
176354f5de6fSIan Rogers    },
176454f5de6fSIan Rogers    {
176554f5de6fSIan Rogers        "BriefDescription": "All Precharge Commands",
176654f5de6fSIan Rogers        "EventCode": "0x44",
176754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_HBM_PRE_ALL",
176854f5de6fSIan Rogers        "PerPkg": "1",
176954f5de6fSIan Rogers        "PublicDescription": "Precharge All Commands: Counts the number of times that the precharge all command was sent.",
177054f5de6fSIan Rogers        "UMask": "0x3",
177154f5de6fSIan Rogers        "Unit": "MCHBM"
177254f5de6fSIan Rogers    },
177354f5de6fSIan Rogers    {
177454f5de6fSIan Rogers        "BriefDescription": "IMC Clockticks at HCLK frequency",
177554f5de6fSIan Rogers        "EventCode": "0x01",
177654f5de6fSIan Rogers        "EventName": "UNC_MCHBM_HCLOCKTICKS",
177754f5de6fSIan Rogers        "PerPkg": "1",
177854f5de6fSIan Rogers        "Unit": "MCHBM"
177954f5de6fSIan Rogers    },
178054f5de6fSIan Rogers    {
178154f5de6fSIan Rogers        "BriefDescription": "All precharge events",
178254f5de6fSIan Rogers        "EventCode": "0x03",
178354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.ALL",
178454f5de6fSIan Rogers        "PerPkg": "1",
178554f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
178654f5de6fSIan Rogers        "UMask": "0xff",
178754f5de6fSIan Rogers        "Unit": "MCHBM"
178854f5de6fSIan Rogers    },
178954f5de6fSIan Rogers    {
179054f5de6fSIan Rogers        "BriefDescription": "Precharge from MC page table",
179154f5de6fSIan Rogers        "EventCode": "0x03",
179254f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.PGT",
179354f5de6fSIan Rogers        "PerPkg": "1",
179454f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
179554f5de6fSIan Rogers        "UMask": "0x88",
179654f5de6fSIan Rogers        "Unit": "MCHBM"
179754f5de6fSIan Rogers    },
179854f5de6fSIan Rogers    {
179954f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands. : Precharges from Page Table",
180054f5de6fSIan Rogers        "EventCode": "0x03",
180154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.PGT_PCH0",
180254f5de6fSIan Rogers        "PerPkg": "1",
180354f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel. : Equivalent to PAGE_EMPTY",
180454f5de6fSIan Rogers        "UMask": "0x8",
180554f5de6fSIan Rogers        "Unit": "MCHBM"
180654f5de6fSIan Rogers    },
180754f5de6fSIan Rogers    {
180854f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands.",
180954f5de6fSIan Rogers        "EventCode": "0x03",
181054f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.PGT_PCH1",
181154f5de6fSIan Rogers        "PerPkg": "1",
181254f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
181354f5de6fSIan Rogers        "UMask": "0x80",
181454f5de6fSIan Rogers        "Unit": "MCHBM"
181554f5de6fSIan Rogers    },
181654f5de6fSIan Rogers    {
181754f5de6fSIan Rogers        "BriefDescription": "Precharge due to read on page miss",
181854f5de6fSIan Rogers        "EventCode": "0x03",
181954f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.RD",
182054f5de6fSIan Rogers        "PerPkg": "1",
182154f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
182254f5de6fSIan Rogers        "UMask": "0x11",
182354f5de6fSIan Rogers        "Unit": "MCHBM"
182454f5de6fSIan Rogers    },
182554f5de6fSIan Rogers    {
182654f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands. : Precharge due to read",
182754f5de6fSIan Rogers        "EventCode": "0x03",
182854f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.RD_PCH0",
182954f5de6fSIan Rogers        "PerPkg": "1",
183054f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel. : Precharge from read bank scheduler",
183154f5de6fSIan Rogers        "UMask": "0x1",
183254f5de6fSIan Rogers        "Unit": "MCHBM"
183354f5de6fSIan Rogers    },
183454f5de6fSIan Rogers    {
183554f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands.",
183654f5de6fSIan Rogers        "EventCode": "0x03",
183754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.RD_PCH1",
183854f5de6fSIan Rogers        "PerPkg": "1",
183954f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
184054f5de6fSIan Rogers        "UMask": "0x10",
184154f5de6fSIan Rogers        "Unit": "MCHBM"
184254f5de6fSIan Rogers    },
184354f5de6fSIan Rogers    {
184454f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands.",
184554f5de6fSIan Rogers        "EventCode": "0x03",
184654f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.UFILL",
184754f5de6fSIan Rogers        "PerPkg": "1",
184854f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
184954f5de6fSIan Rogers        "UMask": "0x44",
185054f5de6fSIan Rogers        "Unit": "MCHBM"
185154f5de6fSIan Rogers    },
185254f5de6fSIan Rogers    {
185354f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands.",
185454f5de6fSIan Rogers        "EventCode": "0x03",
185554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.UFILL_PCH0",
185654f5de6fSIan Rogers        "PerPkg": "1",
185754f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
185854f5de6fSIan Rogers        "UMask": "0x4",
185954f5de6fSIan Rogers        "Unit": "MCHBM"
186054f5de6fSIan Rogers    },
186154f5de6fSIan Rogers    {
186254f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands.",
186354f5de6fSIan Rogers        "EventCode": "0x03",
186454f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.UFILL_PCH1",
186554f5de6fSIan Rogers        "PerPkg": "1",
186654f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
186754f5de6fSIan Rogers        "UMask": "0x40",
186854f5de6fSIan Rogers        "Unit": "MCHBM"
186954f5de6fSIan Rogers    },
187054f5de6fSIan Rogers    {
187154f5de6fSIan Rogers        "BriefDescription": "Precharge due to write on page miss",
187254f5de6fSIan Rogers        "EventCode": "0x03",
187354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.WR",
187454f5de6fSIan Rogers        "PerPkg": "1",
187554f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
187654f5de6fSIan Rogers        "UMask": "0x22",
187754f5de6fSIan Rogers        "Unit": "MCHBM"
187854f5de6fSIan Rogers    },
187954f5de6fSIan Rogers    {
188054f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands. : Precharge due to write",
188154f5de6fSIan Rogers        "EventCode": "0x03",
188254f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.WR_PCH0",
188354f5de6fSIan Rogers        "PerPkg": "1",
188454f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel. : Precharge from write bank scheduler",
188554f5de6fSIan Rogers        "UMask": "0x2",
188654f5de6fSIan Rogers        "Unit": "MCHBM"
188754f5de6fSIan Rogers    },
188854f5de6fSIan Rogers    {
188954f5de6fSIan Rogers        "BriefDescription": "HBM Precharge commands.",
189054f5de6fSIan Rogers        "EventCode": "0x03",
189154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_PRE_COUNT.WR_PCH1",
189254f5de6fSIan Rogers        "PerPkg": "1",
189354f5de6fSIan Rogers        "PublicDescription": "Counts the number of HBM Precharge commands sent on this channel.",
189454f5de6fSIan Rogers        "UMask": "0x20",
189554f5de6fSIan Rogers        "Unit": "MCHBM"
189654f5de6fSIan Rogers    },
189754f5de6fSIan Rogers    {
189854f5de6fSIan Rogers        "BriefDescription": "Counts the number of cycles where the read buffer has greater than UMASK elements.  NOTE: Umask must be set to the maximum number of elements in the queue (24 entries for SPR).",
189954f5de6fSIan Rogers        "EventCode": "0x19",
190054f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RDB_FULL",
190154f5de6fSIan Rogers        "PerPkg": "1",
190254f5de6fSIan Rogers        "Unit": "MCHBM"
190354f5de6fSIan Rogers    },
190454f5de6fSIan Rogers    {
190554f5de6fSIan Rogers        "BriefDescription": "Counts the number of inserts into the read buffer.",
190654f5de6fSIan Rogers        "EventCode": "0x17",
190754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RDB_INSERTS",
190854f5de6fSIan Rogers        "PerPkg": "1",
190954f5de6fSIan Rogers        "UMask": "0x3",
191054f5de6fSIan Rogers        "Unit": "MCHBM"
191154f5de6fSIan Rogers    },
191254f5de6fSIan Rogers    {
191354f5de6fSIan Rogers        "BriefDescription": "Read Data Buffer Inserts",
191454f5de6fSIan Rogers        "EventCode": "0x17",
191554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RDB_INSERTS.PCH0",
191654f5de6fSIan Rogers        "PerPkg": "1",
191754f5de6fSIan Rogers        "UMask": "0x1",
191854f5de6fSIan Rogers        "Unit": "MCHBM"
191954f5de6fSIan Rogers    },
192054f5de6fSIan Rogers    {
192154f5de6fSIan Rogers        "BriefDescription": "Read Data Buffer Inserts",
192254f5de6fSIan Rogers        "EventCode": "0x17",
192354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RDB_INSERTS.PCH1",
192454f5de6fSIan Rogers        "PerPkg": "1",
192554f5de6fSIan Rogers        "UMask": "0x2",
192654f5de6fSIan Rogers        "Unit": "MCHBM"
192754f5de6fSIan Rogers    },
192854f5de6fSIan Rogers    {
192954f5de6fSIan Rogers        "BriefDescription": "Counts the number of elements in the read buffer per cycle.",
193054f5de6fSIan Rogers        "EventCode": "0x1a",
193154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RDB_OCCUPANCY",
193254f5de6fSIan Rogers        "PerPkg": "1",
193354f5de6fSIan Rogers        "Unit": "MCHBM"
193454f5de6fSIan Rogers    },
193554f5de6fSIan Rogers    {
193654f5de6fSIan Rogers        "BriefDescription": "Read Pending Queue Allocations",
193754f5de6fSIan Rogers        "EventCode": "0x10",
193854f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RPQ_INSERTS.PCH0",
193954f5de6fSIan Rogers        "PerPkg": "1",
194054f5de6fSIan Rogers        "PublicDescription": "Read Pending Queue Allocations: Counts the number of allocations into the Read Pending Queue.  This queue is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after the CAS command has been issued to memory.  This includes both ISOCH and non-ISOCH requests.",
194154f5de6fSIan Rogers        "UMask": "0x1",
194254f5de6fSIan Rogers        "Unit": "MCHBM"
194354f5de6fSIan Rogers    },
194454f5de6fSIan Rogers    {
194554f5de6fSIan Rogers        "BriefDescription": "Read Pending Queue Allocations",
194654f5de6fSIan Rogers        "EventCode": "0x10",
194754f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RPQ_INSERTS.PCH1",
194854f5de6fSIan Rogers        "PerPkg": "1",
194954f5de6fSIan Rogers        "PublicDescription": "Read Pending Queue Allocations: Counts the number of allocations into the Read Pending Queue.  This queue is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after the CAS command has been issued to memory.  This includes both ISOCH and non-ISOCH requests.",
195054f5de6fSIan Rogers        "UMask": "0x2",
195154f5de6fSIan Rogers        "Unit": "MCHBM"
195254f5de6fSIan Rogers    },
195354f5de6fSIan Rogers    {
195454f5de6fSIan Rogers        "BriefDescription": "Read Pending Queue Occupancy",
195554f5de6fSIan Rogers        "EventCode": "0x80",
195654f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RPQ_OCCUPANCY_PCH0",
195754f5de6fSIan Rogers        "PerPkg": "1",
195854f5de6fSIan Rogers        "PublicDescription": "Read Pending Queue Occupancy: Accumulates the occupancies of the Read Pending Queue each cycle.  This can then be used to calculate both the average occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The RPQ is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC. They deallocate after the CAS command has been issued to memory.",
195954f5de6fSIan Rogers        "Unit": "MCHBM"
196054f5de6fSIan Rogers    },
196154f5de6fSIan Rogers    {
196254f5de6fSIan Rogers        "BriefDescription": "Read Pending Queue Occupancy",
196354f5de6fSIan Rogers        "EventCode": "0x81",
196454f5de6fSIan Rogers        "EventName": "UNC_MCHBM_RPQ_OCCUPANCY_PCH1",
196554f5de6fSIan Rogers        "PerPkg": "1",
196654f5de6fSIan Rogers        "PublicDescription": "Read Pending Queue Occupancy: Accumulates the occupancies of the Read Pending Queue each cycle.  This can then be used to calculate both the average occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The RPQ is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC. They deallocate after the CAS command has been issued to memory.",
196754f5de6fSIan Rogers        "Unit": "MCHBM"
196854f5de6fSIan Rogers    },
196954f5de6fSIan Rogers    {
197054f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue Allocations",
197154f5de6fSIan Rogers        "EventCode": "0x20",
197254f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_INSERTS.PCH0",
197354f5de6fSIan Rogers        "PerPkg": "1",
197454f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue Allocations: Counts the number of allocations into the Write Pending Queue.  This can then be used to calculate the average queuing latency (in conjunction with the WPQ occupancy count).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the CHA to the iMC.  They deallocate after being issued.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.",
197554f5de6fSIan Rogers        "UMask": "0x1",
197654f5de6fSIan Rogers        "Unit": "MCHBM"
197754f5de6fSIan Rogers    },
197854f5de6fSIan Rogers    {
197954f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue Allocations",
198054f5de6fSIan Rogers        "EventCode": "0x20",
198154f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_INSERTS.PCH1",
198254f5de6fSIan Rogers        "PerPkg": "1",
198354f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue Allocations: Counts the number of allocations into the Write Pending Queue.  This can then be used to calculate the average queuing latency (in conjunction with the WPQ occupancy count).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the CHA to the iMC.  They deallocate after being issued.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.",
198454f5de6fSIan Rogers        "UMask": "0x2",
198554f5de6fSIan Rogers        "Unit": "MCHBM"
198654f5de6fSIan Rogers    },
198754f5de6fSIan Rogers    {
198854f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue Occupancy",
198954f5de6fSIan Rogers        "EventCode": "0x82",
199054f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_OCCUPANCY_PCH0",
199154f5de6fSIan Rogers        "PerPkg": "1",
199254f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue Occupancy: Accumulates the occupancies of the Write Pending Queue each cycle.  This can then be used to calculate both the average queue occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after being issued to memory.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.  This is not to be confused with actually performing the write.  Therefore, the average latency for this queue is actually not useful for deconstruction intermediate write latencies.  So, we provide filtering based on if the request has posted or not.  By using the not posted filter, we can track how long writes spent in the iMC before completions were sent to the HA.  The posted filter, on the other hand, provides information about how much queueing is actually happening in the iMC for writes before they are actually issued to memory.  High average occupancies will generally coincide with high write major mode counts.",
199354f5de6fSIan Rogers        "Unit": "MCHBM"
199454f5de6fSIan Rogers    },
199554f5de6fSIan Rogers    {
199654f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue Occupancy",
199754f5de6fSIan Rogers        "EventCode": "0x83",
199854f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_OCCUPANCY_PCH1",
199954f5de6fSIan Rogers        "PerPkg": "1",
200054f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue Occupancy: Accumulates the occupancies of the Write Pending Queue each cycle.  This can then be used to calculate both the average queue occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after being issued to memory.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.  This is not to be confused with actually performing the write.  Therefore, the average latency for this queue is actually not useful for deconstruction intermediate write latencies.  So, we provide filtering based on if the request has posted or not.  By using the not posted filter, we can track how long writes spent in the iMC before completions were sent to the HA.  The posted filter, on the other hand, provides information about how much queueing is actually happening in the iMC for writes before they are actually issued to memory.  High average occupancies will generally coincide with high write major mode counts.",
200154f5de6fSIan Rogers        "Unit": "MCHBM"
200254f5de6fSIan Rogers    },
200354f5de6fSIan Rogers    {
200454f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
200554f5de6fSIan Rogers        "EventCode": "0x23",
200654f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_READ_HIT",
200754f5de6fSIan Rogers        "FCMask": "0x00000000",
200854f5de6fSIan Rogers        "PerPkg": "1",
200954f5de6fSIan Rogers        "PortMask": "0x00000000",
201054f5de6fSIan Rogers        "PublicDescription": "Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
201154f5de6fSIan Rogers        "Unit": "MCHBM"
201254f5de6fSIan Rogers    },
201354f5de6fSIan Rogers    {
201454f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
201554f5de6fSIan Rogers        "EventCode": "0x23",
201654f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_READ_HIT.PCH0",
201754f5de6fSIan Rogers        "PerPkg": "1",
201854f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue CAM Match: Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
201954f5de6fSIan Rogers        "UMask": "0x1",
202054f5de6fSIan Rogers        "Unit": "MCHBM"
202154f5de6fSIan Rogers    },
202254f5de6fSIan Rogers    {
202354f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
202454f5de6fSIan Rogers        "EventCode": "0x23",
202554f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_READ_HIT.PCH1",
202654f5de6fSIan Rogers        "PerPkg": "1",
202754f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue CAM Match: Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
202854f5de6fSIan Rogers        "UMask": "0x2",
202954f5de6fSIan Rogers        "Unit": "MCHBM"
203054f5de6fSIan Rogers    },
203154f5de6fSIan Rogers    {
203254f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
203354f5de6fSIan Rogers        "EventCode": "0x24",
203454f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_WRITE_HIT",
203554f5de6fSIan Rogers        "FCMask": "0x00000000",
203654f5de6fSIan Rogers        "PerPkg": "1",
203754f5de6fSIan Rogers        "PortMask": "0x00000000",
203854f5de6fSIan Rogers        "PublicDescription": "Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
203954f5de6fSIan Rogers        "Unit": "MCHBM"
204054f5de6fSIan Rogers    },
204154f5de6fSIan Rogers    {
204254f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
204354f5de6fSIan Rogers        "EventCode": "0x24",
204454f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_WRITE_HIT.PCH0",
204554f5de6fSIan Rogers        "PerPkg": "1",
204654f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue CAM Match: Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
204754f5de6fSIan Rogers        "UMask": "0x1",
204854f5de6fSIan Rogers        "Unit": "MCHBM"
204954f5de6fSIan Rogers    },
205054f5de6fSIan Rogers    {
205154f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
205254f5de6fSIan Rogers        "EventCode": "0x24",
205354f5de6fSIan Rogers        "EventName": "UNC_MCHBM_WPQ_WRITE_HIT.PCH1",
205454f5de6fSIan Rogers        "PerPkg": "1",
205554f5de6fSIan Rogers        "PublicDescription": "Write Pending Queue CAM Match: Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
205654f5de6fSIan Rogers        "UMask": "0x2",
205754f5de6fSIan Rogers        "Unit": "MCHBM"
205854f5de6fSIan Rogers    },
205954f5de6fSIan Rogers    {
20604e411ee4SZhengjun Xing        "BriefDescription": "Activate due to read, write, underfill, or bypass",
20614e411ee4SZhengjun Xing        "EventCode": "0x02",
20624e411ee4SZhengjun Xing        "EventName": "UNC_M_ACT_COUNT.ALL",
20634e411ee4SZhengjun Xing        "PerPkg": "1",
2064400dd489SIan Rogers        "PublicDescription": "DRAM Activate Count : Counts the number of DRAM Activate commands sent on this channel.  Activate commands are issued to open up a page on the DRAM devices so that it can be read or written to with a CAS.  One can calculate the number of Page Misses by subtracting the number of Page Miss precharges from the number of Activates.",
2065400dd489SIan Rogers        "UMask": "0xff",
20664e411ee4SZhengjun Xing        "Unit": "iMC"
20674e411ee4SZhengjun Xing    },
20684e411ee4SZhengjun Xing    {
20694e411ee4SZhengjun Xing        "BriefDescription": "All DRAM CAS commands issued",
20704e411ee4SZhengjun Xing        "EventCode": "0x05",
20714e411ee4SZhengjun Xing        "EventName": "UNC_M_CAS_COUNT.ALL",
20724e411ee4SZhengjun Xing        "PerPkg": "1",
2073400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : All DRAM Read and Write actions : DRAM RD_CAS and WR_CAS Commands : Counts the total number of DRAM CAS commands issued on this channel.",
2074400dd489SIan Rogers        "UMask": "0xff",
20754e411ee4SZhengjun Xing        "Unit": "iMC"
20764e411ee4SZhengjun Xing    },
20774e411ee4SZhengjun Xing    {
20784e411ee4SZhengjun Xing        "BriefDescription": "DRAM RD_CAS and WR_CAS Commands. : Pseudo Channel 0",
20794e411ee4SZhengjun Xing        "EventCode": "0x05",
20804e411ee4SZhengjun Xing        "EventName": "UNC_M_CAS_COUNT.PCH0",
20814e411ee4SZhengjun Xing        "PerPkg": "1",
2082400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : Pseudo Channel 0 : DRAM RD_CAS and WR_CAS Commands",
2083400dd489SIan Rogers        "UMask": "0x40",
20844e411ee4SZhengjun Xing        "Unit": "iMC"
20854e411ee4SZhengjun Xing    },
20864e411ee4SZhengjun Xing    {
20874e411ee4SZhengjun Xing        "BriefDescription": "DRAM RD_CAS and WR_CAS Commands. : Pseudo Channel 1",
20884e411ee4SZhengjun Xing        "EventCode": "0x05",
20894e411ee4SZhengjun Xing        "EventName": "UNC_M_CAS_COUNT.PCH1",
20904e411ee4SZhengjun Xing        "PerPkg": "1",
2091400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : Pseudo Channel 1 : DRAM RD_CAS and WR_CAS Commands",
2092400dd489SIan Rogers        "UMask": "0x80",
2093400dd489SIan Rogers        "Unit": "iMC"
2094400dd489SIan Rogers    },
2095400dd489SIan Rogers    {
2096400dd489SIan Rogers        "BriefDescription": "All DRAM read CAS commands issued (including underfills)",
2097400dd489SIan Rogers        "EventCode": "0x05",
2098400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.RD",
2099400dd489SIan Rogers        "PerPkg": "1",
2100400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands : Counts the total number of DRAM Read CAS commands issued on this channel.  This includes underfills.",
2101400dd489SIan Rogers        "UMask": "0xcf",
2102400dd489SIan Rogers        "Unit": "iMC"
2103400dd489SIan Rogers    },
2104400dd489SIan Rogers    {
2105400dd489SIan Rogers        "BriefDescription": "DRAM RD_CAS and WR_CAS Commands.",
2106400dd489SIan Rogers        "EventCode": "0x05",
2107400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.RD_PRE_REG",
2108400dd489SIan Rogers        "PerPkg": "1",
2109400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : DRAM RD_CAS and WR_CAS Commands",
2110400dd489SIan Rogers        "UMask": "0xc2",
2111400dd489SIan Rogers        "Unit": "iMC"
2112400dd489SIan Rogers    },
2113400dd489SIan Rogers    {
2114400dd489SIan Rogers        "BriefDescription": "DRAM RD_CAS and WR_CAS Commands.",
2115400dd489SIan Rogers        "EventCode": "0x05",
2116400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.RD_PRE_UNDERFILL",
2117400dd489SIan Rogers        "PerPkg": "1",
2118400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : DRAM RD_CAS and WR_CAS Commands",
2119400dd489SIan Rogers        "UMask": "0xc8",
2120400dd489SIan Rogers        "Unit": "iMC"
2121400dd489SIan Rogers    },
2122400dd489SIan Rogers    {
2123400dd489SIan Rogers        "BriefDescription": "All DRAM read CAS commands issued (does not include underfills)",
2124400dd489SIan Rogers        "EventCode": "0x05",
2125400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.RD_REG",
2126400dd489SIan Rogers        "PerPkg": "1",
2127400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : DRAM RD_CAS commands w/out auto-pre : DRAM RD_CAS and WR_CAS Commands : Counts the total number or DRAM Read CAS commands issued on this channel.  This includes both regular RD CAS commands as well as those with implicit Precharge.   We do not filter based on major mode, as RD_CAS is not issued during WMM (with the exception of underfills).",
2128400dd489SIan Rogers        "UMask": "0xc1",
2129400dd489SIan Rogers        "Unit": "iMC"
2130400dd489SIan Rogers    },
2131400dd489SIan Rogers    {
2132400dd489SIan Rogers        "BriefDescription": "DRAM underfill read CAS commands issued",
2133400dd489SIan Rogers        "EventCode": "0x05",
2134400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.RD_UNDERFILL",
2135400dd489SIan Rogers        "PerPkg": "1",
2136400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : Underfill Read Issued : DRAM RD_CAS and WR_CAS Commands",
2137400dd489SIan Rogers        "UMask": "0xc4",
2138400dd489SIan Rogers        "Unit": "iMC"
2139400dd489SIan Rogers    },
2140400dd489SIan Rogers    {
2141400dd489SIan Rogers        "BriefDescription": "All DRAM write CAS commands issued",
2142400dd489SIan Rogers        "EventCode": "0x05",
2143400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.WR",
2144400dd489SIan Rogers        "PerPkg": "1",
2145400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands : Counts the total number of DRAM Write CAS commands issued on this channel.",
2146400dd489SIan Rogers        "UMask": "0xf0",
2147400dd489SIan Rogers        "Unit": "iMC"
2148400dd489SIan Rogers    },
2149400dd489SIan Rogers    {
2150400dd489SIan Rogers        "BriefDescription": "DRAM RD_CAS and WR_CAS Commands. : DRAM WR_CAS commands w/o auto-pre",
2151400dd489SIan Rogers        "EventCode": "0x05",
2152400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.WR_NONPRE",
2153400dd489SIan Rogers        "PerPkg": "1",
2154400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : DRAM WR_CAS commands w/o auto-pre : DRAM RD_CAS and WR_CAS Commands",
2155400dd489SIan Rogers        "UMask": "0xd0",
2156400dd489SIan Rogers        "Unit": "iMC"
2157400dd489SIan Rogers    },
2158400dd489SIan Rogers    {
2159400dd489SIan Rogers        "BriefDescription": "DRAM RD_CAS and WR_CAS Commands.",
2160400dd489SIan Rogers        "EventCode": "0x05",
2161400dd489SIan Rogers        "EventName": "UNC_M_CAS_COUNT.WR_PRE",
2162400dd489SIan Rogers        "PerPkg": "1",
2163400dd489SIan Rogers        "PublicDescription": "DRAM RD_CAS and WR_CAS Commands. : DRAM RD_CAS and WR_CAS Commands",
2164400dd489SIan Rogers        "UMask": "0xe0",
2165400dd489SIan Rogers        "Unit": "iMC"
2166400dd489SIan Rogers    },
2167400dd489SIan Rogers    {
216854f5de6fSIan Rogers        "BriefDescription": "Pseudo Channel 0",
216954f5de6fSIan Rogers        "EventCode": "0x06",
217054f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.PCH0",
217154f5de6fSIan Rogers        "PerPkg": "1",
217254f5de6fSIan Rogers        "UMask": "0x40",
217354f5de6fSIan Rogers        "Unit": "iMC"
217454f5de6fSIan Rogers    },
217554f5de6fSIan Rogers    {
217654f5de6fSIan Rogers        "BriefDescription": "Pseudo Channel 1",
217754f5de6fSIan Rogers        "EventCode": "0x06",
217854f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.PCH1",
217954f5de6fSIan Rogers        "PerPkg": "1",
218054f5de6fSIan Rogers        "UMask": "0x80",
218154f5de6fSIan Rogers        "Unit": "iMC"
218254f5de6fSIan Rogers    },
218354f5de6fSIan Rogers    {
218454f5de6fSIan Rogers        "BriefDescription": "Read CAS Command in Interleaved Mode (32B)",
218554f5de6fSIan Rogers        "EventCode": "0x06",
218654f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.RD_32B",
218754f5de6fSIan Rogers        "PerPkg": "1",
218854f5de6fSIan Rogers        "UMask": "0xc8",
218954f5de6fSIan Rogers        "Unit": "iMC"
219054f5de6fSIan Rogers    },
219154f5de6fSIan Rogers    {
219254f5de6fSIan Rogers        "BriefDescription": "Read CAS Command in Regular Mode (64B) in Pseudochannel 0",
219354f5de6fSIan Rogers        "EventCode": "0x06",
219454f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.RD_64B",
219554f5de6fSIan Rogers        "PerPkg": "1",
219654f5de6fSIan Rogers        "UMask": "0xc1",
219754f5de6fSIan Rogers        "Unit": "iMC"
219854f5de6fSIan Rogers    },
219954f5de6fSIan Rogers    {
220054f5de6fSIan Rogers        "BriefDescription": "Underfill Read CAS Command in Interleaved Mode (32B)",
220154f5de6fSIan Rogers        "EventCode": "0x06",
220254f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.RD_UFILL_32B",
220354f5de6fSIan Rogers        "PerPkg": "1",
220454f5de6fSIan Rogers        "UMask": "0xd0",
220554f5de6fSIan Rogers        "Unit": "iMC"
220654f5de6fSIan Rogers    },
220754f5de6fSIan Rogers    {
220854f5de6fSIan Rogers        "BriefDescription": "Underfill Read CAS Command in Regular Mode (64B) in Pseudochannel 1",
220954f5de6fSIan Rogers        "EventCode": "0x06",
221054f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.RD_UFILL_64B",
221154f5de6fSIan Rogers        "PerPkg": "1",
221254f5de6fSIan Rogers        "UMask": "0xc2",
221354f5de6fSIan Rogers        "Unit": "iMC"
221454f5de6fSIan Rogers    },
221554f5de6fSIan Rogers    {
221654f5de6fSIan Rogers        "BriefDescription": "Write CAS Command in Interleaved Mode (32B)",
221754f5de6fSIan Rogers        "EventCode": "0x06",
221854f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.WR_32B",
221954f5de6fSIan Rogers        "PerPkg": "1",
222054f5de6fSIan Rogers        "UMask": "0xe0",
222154f5de6fSIan Rogers        "Unit": "iMC"
222254f5de6fSIan Rogers    },
222354f5de6fSIan Rogers    {
222454f5de6fSIan Rogers        "BriefDescription": "Write CAS Command in Regular Mode (64B) in Pseudochannel 0",
222554f5de6fSIan Rogers        "EventCode": "0x06",
222654f5de6fSIan Rogers        "EventName": "UNC_M_CAS_ISSUED_REQ_LEN.WR_64B",
222754f5de6fSIan Rogers        "PerPkg": "1",
222854f5de6fSIan Rogers        "UMask": "0xc4",
222954f5de6fSIan Rogers        "Unit": "iMC"
223054f5de6fSIan Rogers    },
223154f5de6fSIan Rogers    {
2232400dd489SIan Rogers        "BriefDescription": "IMC Clockticks at DCLK frequency",
2233400dd489SIan Rogers        "EventCode": "0x01",
2234400dd489SIan Rogers        "EventName": "UNC_M_CLOCKTICKS",
2235400dd489SIan Rogers        "PerPkg": "1",
2236400dd489SIan Rogers        "PublicDescription": "Number of DRAM DCLK clock cycles while the event is enabled",
2237400dd489SIan Rogers        "UMask": "0x1",
2238400dd489SIan Rogers        "Unit": "iMC"
2239400dd489SIan Rogers    },
2240400dd489SIan Rogers    {
224154f5de6fSIan Rogers        "BriefDescription": "DRAM Precharge All Commands",
224254f5de6fSIan Rogers        "EventCode": "0x44",
224354f5de6fSIan Rogers        "EventName": "UNC_M_DRAM_PRE_ALL",
224454f5de6fSIan Rogers        "PerPkg": "1",
224554f5de6fSIan Rogers        "PublicDescription": "DRAM Precharge All Commands : Counts the number of times that the precharge all command was sent.",
224654f5de6fSIan Rogers        "UMask": "0x3",
224754f5de6fSIan Rogers        "Unit": "iMC"
224854f5de6fSIan Rogers    },
224954f5de6fSIan Rogers    {
2250400dd489SIan Rogers        "BriefDescription": "IMC Clockticks at HCLK frequency",
2251400dd489SIan Rogers        "EventCode": "0x01",
2252400dd489SIan Rogers        "EventName": "UNC_M_HCLOCKTICKS",
2253400dd489SIan Rogers        "PerPkg": "1",
2254400dd489SIan Rogers        "PublicDescription": "Number of DRAM HCLK clock cycles while the event is enabled",
2255400dd489SIan Rogers        "Unit": "iMC"
2256400dd489SIan Rogers    },
2257400dd489SIan Rogers    {
225854f5de6fSIan Rogers        "BriefDescription": "UNC_M_PCLS.RD",
225954f5de6fSIan Rogers        "EventCode": "0xa0",
226054f5de6fSIan Rogers        "EventName": "UNC_M_PCLS.RD",
226154f5de6fSIan Rogers        "PerPkg": "1",
226254f5de6fSIan Rogers        "UMask": "0x5",
226354f5de6fSIan Rogers        "Unit": "iMC"
226454f5de6fSIan Rogers    },
226554f5de6fSIan Rogers    {
226654f5de6fSIan Rogers        "BriefDescription": "UNC_M_PCLS.TOTAL",
226754f5de6fSIan Rogers        "EventCode": "0xa0",
226854f5de6fSIan Rogers        "EventName": "UNC_M_PCLS.TOTAL",
226954f5de6fSIan Rogers        "PerPkg": "1",
227054f5de6fSIan Rogers        "UMask": "0xf",
227154f5de6fSIan Rogers        "Unit": "iMC"
227254f5de6fSIan Rogers    },
227354f5de6fSIan Rogers    {
227454f5de6fSIan Rogers        "BriefDescription": "UNC_M_PCLS.WR",
227554f5de6fSIan Rogers        "EventCode": "0xa0",
227654f5de6fSIan Rogers        "EventName": "UNC_M_PCLS.WR",
227754f5de6fSIan Rogers        "PerPkg": "1",
227854f5de6fSIan Rogers        "UMask": "0xa",
227954f5de6fSIan Rogers        "Unit": "iMC"
228054f5de6fSIan Rogers    },
228154f5de6fSIan Rogers    {
2282400dd489SIan Rogers        "BriefDescription": "PMM Read Pending Queue inserts",
2283400dd489SIan Rogers        "EventCode": "0xe3",
2284400dd489SIan Rogers        "EventName": "UNC_M_PMM_RPQ_INSERTS",
2285400dd489SIan Rogers        "PerPkg": "1",
2286400dd489SIan Rogers        "PublicDescription": "Counts number of read requests allocated in the PMM Read Pending Queue.",
2287400dd489SIan Rogers        "Unit": "iMC"
2288400dd489SIan Rogers    },
2289400dd489SIan Rogers    {
2290400dd489SIan Rogers        "BriefDescription": "PMM Read Pending Queue occupancy",
2291400dd489SIan Rogers        "EventCode": "0xe0",
2292400dd489SIan Rogers        "EventName": "UNC_M_PMM_RPQ_OCCUPANCY.ALL_SCH0",
2293400dd489SIan Rogers        "PerPkg": "1",
2294400dd489SIan Rogers        "PublicDescription": "Accumulates the per cycle occupancy of the PMM Read Pending Queue.",
2295400dd489SIan Rogers        "UMask": "0x1",
2296400dd489SIan Rogers        "Unit": "iMC"
2297400dd489SIan Rogers    },
2298400dd489SIan Rogers    {
2299400dd489SIan Rogers        "BriefDescription": "PMM Read Pending Queue occupancy",
2300400dd489SIan Rogers        "EventCode": "0xe0",
2301400dd489SIan Rogers        "EventName": "UNC_M_PMM_RPQ_OCCUPANCY.ALL_SCH1",
2302400dd489SIan Rogers        "PerPkg": "1",
2303400dd489SIan Rogers        "PublicDescription": "Accumulates the per cycle occupancy of the PMM Read Pending Queue.",
2304400dd489SIan Rogers        "UMask": "0x2",
23054e411ee4SZhengjun Xing        "Unit": "iMC"
23064e411ee4SZhengjun Xing    },
23074e411ee4SZhengjun Xing    {
23084e411ee4SZhengjun Xing        "BriefDescription": "PMM Read Pending Queue Occupancy",
23094e411ee4SZhengjun Xing        "EventCode": "0xE0",
23104e411ee4SZhengjun Xing        "EventName": "UNC_M_PMM_RPQ_OCCUPANCY.GNT_WAIT_SCH0",
23114e411ee4SZhengjun Xing        "PerPkg": "1",
2312400dd489SIan Rogers        "PublicDescription": "PMM Read Pending Queue Occupancy : Accumulates the per cycle occupancy of the PMM Read Pending Queue.",
2313400dd489SIan Rogers        "UMask": "0x10",
23144e411ee4SZhengjun Xing        "Unit": "iMC"
23154e411ee4SZhengjun Xing    },
23164e411ee4SZhengjun Xing    {
23174e411ee4SZhengjun Xing        "BriefDescription": "PMM Read Pending Queue Occupancy",
23184e411ee4SZhengjun Xing        "EventCode": "0xE0",
23194e411ee4SZhengjun Xing        "EventName": "UNC_M_PMM_RPQ_OCCUPANCY.GNT_WAIT_SCH1",
23204e411ee4SZhengjun Xing        "PerPkg": "1",
2321400dd489SIan Rogers        "PublicDescription": "PMM Read Pending Queue Occupancy : Accumulates the per cycle occupancy of the PMM Read Pending Queue.",
2322400dd489SIan Rogers        "UMask": "0x20",
2323400dd489SIan Rogers        "Unit": "iMC"
2324400dd489SIan Rogers    },
2325400dd489SIan Rogers    {
2326400dd489SIan Rogers        "BriefDescription": "PMM Read Pending Queue Occupancy",
2327400dd489SIan Rogers        "EventCode": "0xe0",
2328400dd489SIan Rogers        "EventName": "UNC_M_PMM_RPQ_OCCUPANCY.NO_GNT_SCH0",
2329400dd489SIan Rogers        "PerPkg": "1",
2330400dd489SIan Rogers        "PublicDescription": "Accumulates the per cycle occupancy of the PMM Read Pending Queue.",
2331400dd489SIan Rogers        "UMask": "0x4",
2332400dd489SIan Rogers        "Unit": "iMC"
2333400dd489SIan Rogers    },
2334400dd489SIan Rogers    {
2335400dd489SIan Rogers        "BriefDescription": "PMM Read Pending Queue Occupancy",
2336400dd489SIan Rogers        "EventCode": "0xe0",
2337400dd489SIan Rogers        "EventName": "UNC_M_PMM_RPQ_OCCUPANCY.NO_GNT_SCH1",
2338400dd489SIan Rogers        "PerPkg": "1",
2339400dd489SIan Rogers        "PublicDescription": "Accumulates the per cycle occupancy of the PMM Read Pending Queue.",
2340400dd489SIan Rogers        "UMask": "0x8",
2341400dd489SIan Rogers        "Unit": "iMC"
2342400dd489SIan Rogers    },
2343400dd489SIan Rogers    {
234454f5de6fSIan Rogers        "BriefDescription": "PMM (for IXP) Write Queue Cycles Not Empty",
234554f5de6fSIan Rogers        "EventCode": "0xe5",
234654f5de6fSIan Rogers        "EventName": "UNC_M_PMM_WPQ_CYCLES_NE",
234754f5de6fSIan Rogers        "PerPkg": "1",
234854f5de6fSIan Rogers        "Unit": "iMC"
234954f5de6fSIan Rogers    },
235054f5de6fSIan Rogers    {
2351400dd489SIan Rogers        "BriefDescription": "PMM Write Pending Queue inserts",
2352400dd489SIan Rogers        "EventCode": "0xe7",
2353400dd489SIan Rogers        "EventName": "UNC_M_PMM_WPQ_INSERTS",
2354400dd489SIan Rogers        "PerPkg": "1",
2355400dd489SIan Rogers        "PublicDescription": "Counts number of  write requests allocated in the PMM Write Pending Queue.",
2356400dd489SIan Rogers        "Unit": "iMC"
2357400dd489SIan Rogers    },
2358400dd489SIan Rogers    {
2359400dd489SIan Rogers        "BriefDescription": "PMM Write Pending Queue Occupancy",
2360400dd489SIan Rogers        "EventCode": "0xe4",
2361400dd489SIan Rogers        "EventName": "UNC_M_PMM_WPQ_OCCUPANCY.ALL",
2362400dd489SIan Rogers        "PerPkg": "1",
2363400dd489SIan Rogers        "PublicDescription": "PMM Write Pending Queue Occupancy : Accumulates the per cycle occupancy of the Write Pending Queue to the PMM DIMM.",
2364400dd489SIan Rogers        "UMask": "0x3",
2365400dd489SIan Rogers        "Unit": "iMC"
2366400dd489SIan Rogers    },
2367400dd489SIan Rogers    {
2368400dd489SIan Rogers        "BriefDescription": "PMM Write Pending Queue Occupancy",
2369400dd489SIan Rogers        "EventCode": "0xE4",
2370400dd489SIan Rogers        "EventName": "UNC_M_PMM_WPQ_OCCUPANCY.ALL_SCH0",
2371400dd489SIan Rogers        "PerPkg": "1",
2372400dd489SIan Rogers        "PublicDescription": "PMM Write Pending Queue Occupancy : Accumulates the per cycle occupancy of the PMM Write Pending Queue.",
2373400dd489SIan Rogers        "UMask": "0x1",
2374400dd489SIan Rogers        "Unit": "iMC"
2375400dd489SIan Rogers    },
2376400dd489SIan Rogers    {
2377400dd489SIan Rogers        "BriefDescription": "PMM Write Pending Queue Occupancy",
2378400dd489SIan Rogers        "EventCode": "0xE4",
2379400dd489SIan Rogers        "EventName": "UNC_M_PMM_WPQ_OCCUPANCY.ALL_SCH1",
2380400dd489SIan Rogers        "PerPkg": "1",
2381400dd489SIan Rogers        "PublicDescription": "PMM Write Pending Queue Occupancy : Accumulates the per cycle occupancy of the PMM Write Pending Queue.",
2382400dd489SIan Rogers        "UMask": "0x2",
2383400dd489SIan Rogers        "Unit": "iMC"
2384400dd489SIan Rogers    },
2385400dd489SIan Rogers    {
238654f5de6fSIan Rogers        "BriefDescription": "PMM (for IXP) Write Pending Queue Occupancy",
238754f5de6fSIan Rogers        "EventCode": "0xe4",
238854f5de6fSIan Rogers        "EventName": "UNC_M_PMM_WPQ_OCCUPANCY.CAS",
238954f5de6fSIan Rogers        "PerPkg": "1",
239054f5de6fSIan Rogers        "PublicDescription": "PMM (for IXP) Write Pending Queue Occupancy : Accumulates the per cycle occupancy of the Write Pending Queue to the IXP DIMM.",
239154f5de6fSIan Rogers        "UMask": "0xc",
239254f5de6fSIan Rogers        "Unit": "iMC"
239354f5de6fSIan Rogers    },
239454f5de6fSIan Rogers    {
239554f5de6fSIan Rogers        "BriefDescription": "PMM (for IXP) Write Pending Queue Occupancy",
239654f5de6fSIan Rogers        "EventCode": "0xe4",
239754f5de6fSIan Rogers        "EventName": "UNC_M_PMM_WPQ_OCCUPANCY.PWR",
239854f5de6fSIan Rogers        "PerPkg": "1",
239954f5de6fSIan Rogers        "PublicDescription": "PMM (for IXP) Write Pending Queue Occupancy : Accumulates the per cycle occupancy of the Write Pending Queue to the IXP DIMM.",
240054f5de6fSIan Rogers        "UMask": "0x30",
240154f5de6fSIan Rogers        "Unit": "iMC"
240254f5de6fSIan Rogers    },
240354f5de6fSIan Rogers    {
2404400dd489SIan Rogers        "BriefDescription": "Channel PPD Cycles",
2405400dd489SIan Rogers        "EventCode": "0x85",
2406400dd489SIan Rogers        "EventName": "UNC_M_POWER_CHANNEL_PPD",
2407400dd489SIan Rogers        "PerPkg": "1",
2408400dd489SIan Rogers        "PublicDescription": "Channel PPD Cycles : Number of cycles when all the ranks in the channel are in PPD mode.  If IBT=off is enabled, then this can be used to count those cycles.  If it is not enabled, then this can count the number of cycles when that could have been taken advantage of.",
2409400dd489SIan Rogers        "Unit": "iMC"
2410400dd489SIan Rogers    },
2411400dd489SIan Rogers    {
2412400dd489SIan Rogers        "BriefDescription": "CKE_ON_CYCLES by Rank : DIMM ID",
2413400dd489SIan Rogers        "EventCode": "0x47",
2414400dd489SIan Rogers        "EventName": "UNC_M_POWER_CKE_CYCLES.LOW_0",
2415400dd489SIan Rogers        "PerPkg": "1",
2416400dd489SIan Rogers        "PublicDescription": "CKE_ON_CYCLES by Rank : DIMM ID : Number of cycles spent in CKE ON mode.  The filter allows you to select a rank to monitor.  If multiple ranks are in CKE ON mode at one time, the counter will ONLY increment by one rather than doing accumulation.  Multiple counters will need to be used to track multiple ranks simultaneously.  There is no distinction between the different CKE modes (APD, PPDS, PPDF).  This can be determined based on the system programming.  These events should commonly be used with Invert to get the number of cycles in power saving mode.  Edge Detect is also useful here.  Make sure that you do NOT use Invert with Edge Detect (this just confuses the system and is not necessary).",
2417400dd489SIan Rogers        "UMask": "0x1",
2418400dd489SIan Rogers        "Unit": "iMC"
2419400dd489SIan Rogers    },
2420400dd489SIan Rogers    {
2421400dd489SIan Rogers        "BriefDescription": "CKE_ON_CYCLES by Rank : DIMM ID",
2422400dd489SIan Rogers        "EventCode": "0x47",
2423400dd489SIan Rogers        "EventName": "UNC_M_POWER_CKE_CYCLES.LOW_1",
2424400dd489SIan Rogers        "PerPkg": "1",
2425400dd489SIan Rogers        "PublicDescription": "CKE_ON_CYCLES by Rank : DIMM ID : Number of cycles spent in CKE ON mode.  The filter allows you to select a rank to monitor.  If multiple ranks are in CKE ON mode at one time, the counter will ONLY increment by one rather than doing accumulation.  Multiple counters will need to be used to track multiple ranks simultaneously.  There is no distinction between the different CKE modes (APD, PPDS, PPDF).  This can be determined based on the system programming.  These events should commonly be used with Invert to get the number of cycles in power saving mode.  Edge Detect is also useful here.  Make sure that you do NOT use Invert with Edge Detect (this just confuses the system and is not necessary).",
2426400dd489SIan Rogers        "UMask": "0x2",
2427400dd489SIan Rogers        "Unit": "iMC"
2428400dd489SIan Rogers    },
2429400dd489SIan Rogers    {
2430400dd489SIan Rogers        "BriefDescription": "CKE_ON_CYCLES by Rank : DIMM ID",
2431400dd489SIan Rogers        "EventCode": "0x47",
2432400dd489SIan Rogers        "EventName": "UNC_M_POWER_CKE_CYCLES.LOW_2",
2433400dd489SIan Rogers        "PerPkg": "1",
2434400dd489SIan Rogers        "PublicDescription": "CKE_ON_CYCLES by Rank : DIMM ID : Number of cycles spent in CKE ON mode.  The filter allows you to select a rank to monitor.  If multiple ranks are in CKE ON mode at one time, the counter will ONLY increment by one rather than doing accumulation.  Multiple counters will need to be used to track multiple ranks simultaneously.  There is no distinction between the different CKE modes (APD, PPDS, PPDF).  This can be determined based on the system programming.  These events should commonly be used with Invert to get the number of cycles in power saving mode.  Edge Detect is also useful here.  Make sure that you do NOT use Invert with Edge Detect (this just confuses the system and is not necessary).",
2435400dd489SIan Rogers        "UMask": "0x4",
2436400dd489SIan Rogers        "Unit": "iMC"
2437400dd489SIan Rogers    },
2438400dd489SIan Rogers    {
2439400dd489SIan Rogers        "BriefDescription": "CKE_ON_CYCLES by Rank : DIMM ID",
2440400dd489SIan Rogers        "EventCode": "0x47",
2441400dd489SIan Rogers        "EventName": "UNC_M_POWER_CKE_CYCLES.LOW_3",
2442400dd489SIan Rogers        "PerPkg": "1",
2443400dd489SIan Rogers        "PublicDescription": "CKE_ON_CYCLES by Rank : DIMM ID : Number of cycles spent in CKE ON mode.  The filter allows you to select a rank to monitor.  If multiple ranks are in CKE ON mode at one time, the counter will ONLY increment by one rather than doing accumulation.  Multiple counters will need to be used to track multiple ranks simultaneously.  There is no distinction between the different CKE modes (APD, PPDS, PPDF).  This can be determined based on the system programming.  These events should commonly be used with Invert to get the number of cycles in power saving mode.  Edge Detect is also useful here.  Make sure that you do NOT use Invert with Edge Detect (this just confuses the system and is not necessary).",
2444400dd489SIan Rogers        "UMask": "0x8",
2445400dd489SIan Rogers        "Unit": "iMC"
2446400dd489SIan Rogers    },
2447400dd489SIan Rogers    {
244854f5de6fSIan Rogers        "BriefDescription": "Throttle Cycles for Rank 0",
244954f5de6fSIan Rogers        "EventCode": "0x86",
245054f5de6fSIan Rogers        "EventName": "UNC_M_POWER_CRIT_THROTTLE_CYCLES.SLOT0",
245154f5de6fSIan Rogers        "PerPkg": "1",
245254f5de6fSIan Rogers        "PublicDescription": "Throttle Cycles for Rank 0 : Counts the number of cycles while the iMC is being throttled by either thermal constraints or by the PCU throttling.  It is not possible to distinguish between the two.  This can be filtered by rank.  If multiple ranks are selected and are being throttled at the same time, the counter will only increment by 1. : Thermal throttling is performed per DIMM.  We support 3 DIMMs per channel.  This ID allows us to filter by ID.",
245354f5de6fSIan Rogers        "UMask": "0x1",
245454f5de6fSIan Rogers        "Unit": "iMC"
245554f5de6fSIan Rogers    },
245654f5de6fSIan Rogers    {
245754f5de6fSIan Rogers        "BriefDescription": "Throttle Cycles for Rank 0",
245854f5de6fSIan Rogers        "EventCode": "0x86",
245954f5de6fSIan Rogers        "EventName": "UNC_M_POWER_CRIT_THROTTLE_CYCLES.SLOT1",
246054f5de6fSIan Rogers        "PerPkg": "1",
246154f5de6fSIan Rogers        "PublicDescription": "Throttle Cycles for Rank 0 : Counts the number of cycles while the iMC is being throttled by either thermal constraints or by the PCU throttling.  It is not possible to distinguish between the two.  This can be filtered by rank.  If multiple ranks are selected and are being throttled at the same time, the counter will only increment by 1.",
246254f5de6fSIan Rogers        "UMask": "0x2",
246354f5de6fSIan Rogers        "Unit": "iMC"
246454f5de6fSIan Rogers    },
246554f5de6fSIan Rogers    {
2466400dd489SIan Rogers        "BriefDescription": "Clock-Enabled Self-Refresh",
2467400dd489SIan Rogers        "EventCode": "0x43",
2468400dd489SIan Rogers        "EventName": "UNC_M_POWER_SELF_REFRESH",
2469400dd489SIan Rogers        "PerPkg": "1",
2470400dd489SIan Rogers        "PublicDescription": "Clock-Enabled Self-Refresh : Counts the number of cycles when the iMC is in self-refresh and the iMC still has a clock.  This happens in some package C-states.  For example, the PCU may ask the iMC to enter self-refresh even though some of the cores are still processing.  One use of this is for Monroe technology.  Self-refresh is required during package C3 and C6, but there is no clock in the iMC at this time, so it is not possible to count these cases.",
2471400dd489SIan Rogers        "Unit": "iMC"
2472400dd489SIan Rogers    },
2473400dd489SIan Rogers    {
2474400dd489SIan Rogers        "BriefDescription": "Precharge due to read, write, underfill, or PGT.",
2475400dd489SIan Rogers        "EventCode": "0x03",
2476400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.ALL",
2477400dd489SIan Rogers        "PerPkg": "1",
2478400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2479400dd489SIan Rogers        "UMask": "0xff",
2480400dd489SIan Rogers        "Unit": "iMC"
2481400dd489SIan Rogers    },
2482400dd489SIan Rogers    {
2483*9a5511eaSIan Rogers        "BriefDescription": "DRAM Precharge commands",
2484400dd489SIan Rogers        "EventCode": "0x03",
2485400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.PGT",
2486400dd489SIan Rogers        "PerPkg": "1",
2487*9a5511eaSIan Rogers        "PublicDescription": "DRAM Precharge commands.  Counts the number of DRAM Precharge commands sent on this channel.",
2488400dd489SIan Rogers        "UMask": "0x88",
2489400dd489SIan Rogers        "Unit": "iMC"
2490400dd489SIan Rogers    },
2491400dd489SIan Rogers    {
249254f5de6fSIan Rogers        "BriefDescription": "DRAM Precharge commands. : Precharges from Page Table",
2493400dd489SIan Rogers        "EventCode": "0x03",
2494400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.PGT_PCH0",
2495400dd489SIan Rogers        "PerPkg": "1",
249654f5de6fSIan Rogers        "PublicDescription": "DRAM Precharge commands. : Precharges from Page Table : Counts the number of DRAM Precharge commands sent on this channel. : Equivalent to PAGE_EMPTY",
2497400dd489SIan Rogers        "UMask": "0x8",
2498400dd489SIan Rogers        "Unit": "iMC"
2499400dd489SIan Rogers    },
2500400dd489SIan Rogers    {
2501400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands.",
2502400dd489SIan Rogers        "EventCode": "0x03",
2503400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.PGT_PCH1",
2504400dd489SIan Rogers        "PerPkg": "1",
2505400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2506400dd489SIan Rogers        "UMask": "0x80",
2507400dd489SIan Rogers        "Unit": "iMC"
2508400dd489SIan Rogers    },
2509400dd489SIan Rogers    {
2510400dd489SIan Rogers        "BriefDescription": "Precharge due to read on page miss",
2511400dd489SIan Rogers        "EventCode": "0x03",
2512400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.RD",
2513400dd489SIan Rogers        "PerPkg": "1",
2514400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2515400dd489SIan Rogers        "UMask": "0x11",
2516400dd489SIan Rogers        "Unit": "iMC"
2517400dd489SIan Rogers    },
2518400dd489SIan Rogers    {
2519400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands. : Precharge due to read",
2520400dd489SIan Rogers        "EventCode": "0x03",
2521400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.RD_PCH0",
2522400dd489SIan Rogers        "PerPkg": "1",
2523400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Precharge due to read : Counts the number of DRAM Precharge commands sent on this channel. : Precharge from read bank scheduler",
2524400dd489SIan Rogers        "UMask": "0x1",
2525400dd489SIan Rogers        "Unit": "iMC"
2526400dd489SIan Rogers    },
2527400dd489SIan Rogers    {
2528400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands.",
2529400dd489SIan Rogers        "EventCode": "0x03",
2530400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.RD_PCH1",
2531400dd489SIan Rogers        "PerPkg": "1",
2532400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2533400dd489SIan Rogers        "UMask": "0x10",
2534400dd489SIan Rogers        "Unit": "iMC"
2535400dd489SIan Rogers    },
2536400dd489SIan Rogers    {
2537400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands.",
2538400dd489SIan Rogers        "EventCode": "0x03",
2539400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.UFILL",
2540400dd489SIan Rogers        "PerPkg": "1",
2541400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2542400dd489SIan Rogers        "UMask": "0x44",
2543400dd489SIan Rogers        "Unit": "iMC"
2544400dd489SIan Rogers    },
2545400dd489SIan Rogers    {
2546400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands.",
2547400dd489SIan Rogers        "EventCode": "0x03",
2548400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.UFILL_PCH0",
2549400dd489SIan Rogers        "PerPkg": "1",
2550400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2551400dd489SIan Rogers        "UMask": "0x4",
2552400dd489SIan Rogers        "Unit": "iMC"
2553400dd489SIan Rogers    },
2554400dd489SIan Rogers    {
2555400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands.",
2556400dd489SIan Rogers        "EventCode": "0x03",
2557400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.UFILL_PCH1",
2558400dd489SIan Rogers        "PerPkg": "1",
2559400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2560400dd489SIan Rogers        "UMask": "0x40",
2561400dd489SIan Rogers        "Unit": "iMC"
2562400dd489SIan Rogers    },
2563400dd489SIan Rogers    {
2564400dd489SIan Rogers        "BriefDescription": "Precharge due to write on page miss",
2565400dd489SIan Rogers        "EventCode": "0x03",
2566400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.WR",
2567400dd489SIan Rogers        "PerPkg": "1",
2568400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2569400dd489SIan Rogers        "UMask": "0x22",
2570400dd489SIan Rogers        "Unit": "iMC"
2571400dd489SIan Rogers    },
2572400dd489SIan Rogers    {
2573400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands. : Precharge due to write",
2574400dd489SIan Rogers        "EventCode": "0x03",
2575400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.WR_PCH0",
2576400dd489SIan Rogers        "PerPkg": "1",
2577400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Precharge due to write : Counts the number of DRAM Precharge commands sent on this channel. : Precharge from write bank scheduler",
2578400dd489SIan Rogers        "UMask": "0x2",
2579400dd489SIan Rogers        "Unit": "iMC"
2580400dd489SIan Rogers    },
2581400dd489SIan Rogers    {
2582400dd489SIan Rogers        "BriefDescription": "DRAM Precharge commands.",
2583400dd489SIan Rogers        "EventCode": "0x03",
2584400dd489SIan Rogers        "EventName": "UNC_M_PRE_COUNT.WR_PCH1",
2585400dd489SIan Rogers        "PerPkg": "1",
2586400dd489SIan Rogers        "PublicDescription": "DRAM Precharge commands. : Counts the number of DRAM Precharge commands sent on this channel.",
2587400dd489SIan Rogers        "UMask": "0x20",
2588400dd489SIan Rogers        "Unit": "iMC"
2589400dd489SIan Rogers    },
2590400dd489SIan Rogers    {
259154f5de6fSIan Rogers        "BriefDescription": "Counts the number of cycles where the read buffer has greater than UMASK elements.  This includes reads to both DDR and PMEM.  NOTE: Umask must be set to the maximum number of elements in the queue (24 entries for SPR).",
259254f5de6fSIan Rogers        "EventCode": "0x19",
259354f5de6fSIan Rogers        "EventName": "UNC_M_RDB_FULL",
259454f5de6fSIan Rogers        "PerPkg": "1",
259554f5de6fSIan Rogers        "Unit": "iMC"
259654f5de6fSIan Rogers    },
259754f5de6fSIan Rogers    {
259854f5de6fSIan Rogers        "BriefDescription": "Counts the number of inserts into the read buffer destined for DDR.  Does not count reads destined for PMEM.",
259954f5de6fSIan Rogers        "EventCode": "0x17",
260054f5de6fSIan Rogers        "EventName": "UNC_M_RDB_INSERTS",
260154f5de6fSIan Rogers        "PerPkg": "1",
260254f5de6fSIan Rogers        "UMask": "0x3",
260354f5de6fSIan Rogers        "Unit": "iMC"
260454f5de6fSIan Rogers    },
260554f5de6fSIan Rogers    {
260654f5de6fSIan Rogers        "BriefDescription": "Read Data Buffer Inserts",
260754f5de6fSIan Rogers        "EventCode": "0x17",
260854f5de6fSIan Rogers        "EventName": "UNC_M_RDB_INSERTS.PCH0",
260954f5de6fSIan Rogers        "PerPkg": "1",
261054f5de6fSIan Rogers        "UMask": "0x1",
261154f5de6fSIan Rogers        "Unit": "iMC"
261254f5de6fSIan Rogers    },
261354f5de6fSIan Rogers    {
261454f5de6fSIan Rogers        "BriefDescription": "Read Data Buffer Inserts",
261554f5de6fSIan Rogers        "EventCode": "0x17",
261654f5de6fSIan Rogers        "EventName": "UNC_M_RDB_INSERTS.PCH1",
261754f5de6fSIan Rogers        "PerPkg": "1",
261854f5de6fSIan Rogers        "UMask": "0x2",
261954f5de6fSIan Rogers        "Unit": "iMC"
262054f5de6fSIan Rogers    },
262154f5de6fSIan Rogers    {
262254f5de6fSIan Rogers        "BriefDescription": "Counts the number of cycles where there's at least one element in the read buffer.  This includes reads to both DDR and PMEM.",
262354f5de6fSIan Rogers        "EventCode": "0x18",
262454f5de6fSIan Rogers        "EventName": "UNC_M_RDB_NE",
262554f5de6fSIan Rogers        "PerPkg": "1",
262654f5de6fSIan Rogers        "UMask": "0x3",
262754f5de6fSIan Rogers        "Unit": "iMC"
262854f5de6fSIan Rogers    },
262954f5de6fSIan Rogers    {
263054f5de6fSIan Rogers        "BriefDescription": "Read Data Buffer Not Empty",
263154f5de6fSIan Rogers        "EventCode": "0x18",
263254f5de6fSIan Rogers        "EventName": "UNC_M_RDB_NE.PCH0",
263354f5de6fSIan Rogers        "PerPkg": "1",
263454f5de6fSIan Rogers        "UMask": "0x1",
263554f5de6fSIan Rogers        "Unit": "iMC"
263654f5de6fSIan Rogers    },
263754f5de6fSIan Rogers    {
263854f5de6fSIan Rogers        "BriefDescription": "Read Data Buffer Not Empty",
263954f5de6fSIan Rogers        "EventCode": "0x18",
264054f5de6fSIan Rogers        "EventName": "UNC_M_RDB_NE.PCH1",
264154f5de6fSIan Rogers        "PerPkg": "1",
264254f5de6fSIan Rogers        "UMask": "0x2",
264354f5de6fSIan Rogers        "Unit": "iMC"
264454f5de6fSIan Rogers    },
264554f5de6fSIan Rogers    {
264654f5de6fSIan Rogers        "BriefDescription": "Counts the number of cycles where there's at least one element in the read buffer.  This includes reads to both DDR and PMEM.",
264754f5de6fSIan Rogers        "EventCode": "0x18",
264854f5de6fSIan Rogers        "EventName": "UNC_M_RDB_NOT_EMPTY",
264954f5de6fSIan Rogers        "PerPkg": "1",
265054f5de6fSIan Rogers        "UMask": "0x3",
265154f5de6fSIan Rogers        "Unit": "iMC"
265254f5de6fSIan Rogers    },
265354f5de6fSIan Rogers    {
265454f5de6fSIan Rogers        "BriefDescription": "Counts the number of elements in the read buffer, including reads to both DDR and PMEM.",
265554f5de6fSIan Rogers        "EventCode": "0x1a",
265654f5de6fSIan Rogers        "EventName": "UNC_M_RDB_OCCUPANCY",
265754f5de6fSIan Rogers        "PerPkg": "1",
265854f5de6fSIan Rogers        "Unit": "iMC"
265954f5de6fSIan Rogers    },
266054f5de6fSIan Rogers    {
2661400dd489SIan Rogers        "BriefDescription": "Read Pending Queue Allocations",
2662400dd489SIan Rogers        "EventCode": "0x10",
2663400dd489SIan Rogers        "EventName": "UNC_M_RPQ_INSERTS.PCH0",
2664400dd489SIan Rogers        "PerPkg": "1",
2665400dd489SIan Rogers        "PublicDescription": "Read Pending Queue Allocations : Counts the number of allocations into the Read Pending Queue.  This queue is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after the CAS command has been issued to memory.  This includes both ISOCH and non-ISOCH requests.",
2666400dd489SIan Rogers        "UMask": "0x1",
2667400dd489SIan Rogers        "Unit": "iMC"
2668400dd489SIan Rogers    },
2669400dd489SIan Rogers    {
2670400dd489SIan Rogers        "BriefDescription": "Read Pending Queue Allocations",
2671400dd489SIan Rogers        "EventCode": "0x10",
2672400dd489SIan Rogers        "EventName": "UNC_M_RPQ_INSERTS.PCH1",
2673400dd489SIan Rogers        "PerPkg": "1",
2674400dd489SIan Rogers        "PublicDescription": "Read Pending Queue Allocations : Counts the number of allocations into the Read Pending Queue.  This queue is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after the CAS command has been issued to memory.  This includes both ISOCH and non-ISOCH requests.",
2675400dd489SIan Rogers        "UMask": "0x2",
2676400dd489SIan Rogers        "Unit": "iMC"
2677400dd489SIan Rogers    },
2678400dd489SIan Rogers    {
2679400dd489SIan Rogers        "BriefDescription": "Read Pending Queue Occupancy",
2680400dd489SIan Rogers        "EventCode": "0x80",
2681400dd489SIan Rogers        "EventName": "UNC_M_RPQ_OCCUPANCY_PCH0",
2682400dd489SIan Rogers        "PerPkg": "1",
2683400dd489SIan Rogers        "PublicDescription": "Read Pending Queue Occupancy : Accumulates the occupancies of the Read Pending Queue each cycle.  This can then be used to calculate both the average occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The RPQ is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC. They deallocate after the CAS command has been issued to memory.",
2684400dd489SIan Rogers        "Unit": "iMC"
2685400dd489SIan Rogers    },
2686400dd489SIan Rogers    {
2687400dd489SIan Rogers        "BriefDescription": "Read Pending Queue Occupancy",
2688400dd489SIan Rogers        "EventCode": "0x81",
2689400dd489SIan Rogers        "EventName": "UNC_M_RPQ_OCCUPANCY_PCH1",
2690400dd489SIan Rogers        "PerPkg": "1",
2691400dd489SIan Rogers        "PublicDescription": "Read Pending Queue Occupancy : Accumulates the occupancies of the Read Pending Queue each cycle.  This can then be used to calculate both the average occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The RPQ is used to schedule reads out to the memory controller and to track the requests.  Requests allocate into the RPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC. They deallocate after the CAS command has been issued to memory.",
2692400dd489SIan Rogers        "Unit": "iMC"
2693400dd489SIan Rogers    },
2694400dd489SIan Rogers    {
269554f5de6fSIan Rogers        "BriefDescription": "Scoreboard accepts",
269654f5de6fSIan Rogers        "EventCode": "0xd2",
269754f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.ACCEPTS",
269854f5de6fSIan Rogers        "PerPkg": "1",
269954f5de6fSIan Rogers        "UMask": "0x5",
270054f5de6fSIan Rogers        "Unit": "iMC"
270154f5de6fSIan Rogers    },
270254f5de6fSIan Rogers    {
270354f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : Write Accepts",
270454f5de6fSIan Rogers        "EventCode": "0xd2",
270554f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.FM_RD_CMPS",
270654f5de6fSIan Rogers        "PerPkg": "1",
270754f5de6fSIan Rogers        "UMask": "0x40",
270854f5de6fSIan Rogers        "Unit": "iMC"
270954f5de6fSIan Rogers    },
271054f5de6fSIan Rogers    {
271154f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : Write Rejects",
271254f5de6fSIan Rogers        "EventCode": "0xd2",
271354f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.FM_WR_CMPS",
271454f5de6fSIan Rogers        "PerPkg": "1",
271554f5de6fSIan Rogers        "UMask": "0x80",
271654f5de6fSIan Rogers        "Unit": "iMC"
271754f5de6fSIan Rogers    },
271854f5de6fSIan Rogers    {
271954f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : FM read completions",
272054f5de6fSIan Rogers        "EventCode": "0xd2",
272154f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.NM_RD_CMPS",
272254f5de6fSIan Rogers        "PerPkg": "1",
272354f5de6fSIan Rogers        "UMask": "0x10",
272454f5de6fSIan Rogers        "Unit": "iMC"
272554f5de6fSIan Rogers    },
272654f5de6fSIan Rogers    {
272754f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : FM write completions",
272854f5de6fSIan Rogers        "EventCode": "0xd2",
272954f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.NM_WR_CMPS",
273054f5de6fSIan Rogers        "PerPkg": "1",
273154f5de6fSIan Rogers        "UMask": "0x20",
273254f5de6fSIan Rogers        "Unit": "iMC"
273354f5de6fSIan Rogers    },
273454f5de6fSIan Rogers    {
273554f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : Read Accepts",
273654f5de6fSIan Rogers        "EventCode": "0xd2",
273754f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.RD_ACCEPTS",
273854f5de6fSIan Rogers        "PerPkg": "1",
273954f5de6fSIan Rogers        "UMask": "0x1",
274054f5de6fSIan Rogers        "Unit": "iMC"
274154f5de6fSIan Rogers    },
274254f5de6fSIan Rogers    {
274354f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : Read Rejects",
274454f5de6fSIan Rogers        "EventCode": "0xd2",
274554f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.RD_REJECTS",
274654f5de6fSIan Rogers        "PerPkg": "1",
274754f5de6fSIan Rogers        "UMask": "0x2",
274854f5de6fSIan Rogers        "Unit": "iMC"
274954f5de6fSIan Rogers    },
275054f5de6fSIan Rogers    {
275154f5de6fSIan Rogers        "BriefDescription": "Scoreboard rejects",
275254f5de6fSIan Rogers        "EventCode": "0xd2",
275354f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.REJECTS",
275454f5de6fSIan Rogers        "PerPkg": "1",
275554f5de6fSIan Rogers        "UMask": "0xa",
275654f5de6fSIan Rogers        "Unit": "iMC"
275754f5de6fSIan Rogers    },
275854f5de6fSIan Rogers    {
275954f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : NM read completions",
276054f5de6fSIan Rogers        "EventCode": "0xd2",
276154f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.WR_ACCEPTS",
276254f5de6fSIan Rogers        "PerPkg": "1",
276354f5de6fSIan Rogers        "UMask": "0x4",
276454f5de6fSIan Rogers        "Unit": "iMC"
276554f5de6fSIan Rogers    },
276654f5de6fSIan Rogers    {
276754f5de6fSIan Rogers        "BriefDescription": "Scoreboard Accesses : NM write completions",
276854f5de6fSIan Rogers        "EventCode": "0xd2",
276954f5de6fSIan Rogers        "EventName": "UNC_M_SB_ACCESSES.WR_REJECTS",
277054f5de6fSIan Rogers        "PerPkg": "1",
277154f5de6fSIan Rogers        "UMask": "0x8",
277254f5de6fSIan Rogers        "Unit": "iMC"
277354f5de6fSIan Rogers    },
277454f5de6fSIan Rogers    {
277554f5de6fSIan Rogers        "BriefDescription": ": Alloc",
277654f5de6fSIan Rogers        "EventCode": "0xd9",
277754f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.ALLOC",
277854f5de6fSIan Rogers        "PerPkg": "1",
277954f5de6fSIan Rogers        "UMask": "0x1",
278054f5de6fSIan Rogers        "Unit": "iMC"
278154f5de6fSIan Rogers    },
278254f5de6fSIan Rogers    {
278354f5de6fSIan Rogers        "BriefDescription": ": Dealloc",
278454f5de6fSIan Rogers        "EventCode": "0xd9",
278554f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.DEALLOC",
278654f5de6fSIan Rogers        "PerPkg": "1",
278754f5de6fSIan Rogers        "UMask": "0x2",
278854f5de6fSIan Rogers        "Unit": "iMC"
278954f5de6fSIan Rogers    },
279054f5de6fSIan Rogers    {
279154f5de6fSIan Rogers        "BriefDescription": ": Near Mem Write Starved",
279254f5de6fSIan Rogers        "EventCode": "0xd9",
279354f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.FM_RD_STARVED",
279454f5de6fSIan Rogers        "PerPkg": "1",
279554f5de6fSIan Rogers        "UMask": "0x20",
279654f5de6fSIan Rogers        "Unit": "iMC"
279754f5de6fSIan Rogers    },
279854f5de6fSIan Rogers    {
279954f5de6fSIan Rogers        "BriefDescription": ": Far Mem Write Starved",
280054f5de6fSIan Rogers        "EventCode": "0xd9",
280154f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.FM_TGR_WR_STARVED",
280254f5de6fSIan Rogers        "PerPkg": "1",
280354f5de6fSIan Rogers        "UMask": "0x80",
280454f5de6fSIan Rogers        "Unit": "iMC"
280554f5de6fSIan Rogers    },
280654f5de6fSIan Rogers    {
280754f5de6fSIan Rogers        "BriefDescription": ": Far Mem Read Starved",
280854f5de6fSIan Rogers        "EventCode": "0xd9",
280954f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.FM_WR_STARVED",
281054f5de6fSIan Rogers        "PerPkg": "1",
281154f5de6fSIan Rogers        "UMask": "0x40",
281254f5de6fSIan Rogers        "Unit": "iMC"
281354f5de6fSIan Rogers    },
281454f5de6fSIan Rogers    {
281554f5de6fSIan Rogers        "BriefDescription": ": Valid",
281654f5de6fSIan Rogers        "EventCode": "0xd9",
281754f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.NM_RD_STARVED",
281854f5de6fSIan Rogers        "PerPkg": "1",
281954f5de6fSIan Rogers        "UMask": "0x8",
282054f5de6fSIan Rogers        "Unit": "iMC"
282154f5de6fSIan Rogers    },
282254f5de6fSIan Rogers    {
282354f5de6fSIan Rogers        "BriefDescription": ": Near Mem Read Starved",
282454f5de6fSIan Rogers        "EventCode": "0xd9",
282554f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.NM_WR_STARVED",
282654f5de6fSIan Rogers        "PerPkg": "1",
282754f5de6fSIan Rogers        "UMask": "0x10",
282854f5de6fSIan Rogers        "Unit": "iMC"
282954f5de6fSIan Rogers    },
283054f5de6fSIan Rogers    {
283154f5de6fSIan Rogers        "BriefDescription": ": Reject",
283254f5de6fSIan Rogers        "EventCode": "0xd9",
283354f5de6fSIan Rogers        "EventName": "UNC_M_SB_CANARY.VLD",
283454f5de6fSIan Rogers        "PerPkg": "1",
283554f5de6fSIan Rogers        "UMask": "0x4",
283654f5de6fSIan Rogers        "Unit": "iMC"
283754f5de6fSIan Rogers    },
283854f5de6fSIan Rogers    {
283954f5de6fSIan Rogers        "BriefDescription": "Scoreboard Cycles Full",
284054f5de6fSIan Rogers        "EventCode": "0xd1",
284154f5de6fSIan Rogers        "EventName": "UNC_M_SB_CYCLES_FULL",
284254f5de6fSIan Rogers        "PerPkg": "1",
284354f5de6fSIan Rogers        "Unit": "iMC"
284454f5de6fSIan Rogers    },
284554f5de6fSIan Rogers    {
284654f5de6fSIan Rogers        "BriefDescription": "Scoreboard Cycles Not-Empty",
284754f5de6fSIan Rogers        "EventCode": "0xd0",
284854f5de6fSIan Rogers        "EventName": "UNC_M_SB_CYCLES_NE",
284954f5de6fSIan Rogers        "PerPkg": "1",
285054f5de6fSIan Rogers        "Unit": "iMC"
285154f5de6fSIan Rogers    },
285254f5de6fSIan Rogers    {
285354f5de6fSIan Rogers        "BriefDescription": "Scoreboard Inserts : Block region reads",
285454f5de6fSIan Rogers        "EventCode": "0xd6",
285554f5de6fSIan Rogers        "EventName": "UNC_M_SB_INSERTS.BLOCK_RDS",
285654f5de6fSIan Rogers        "PerPkg": "1",
285754f5de6fSIan Rogers        "UMask": "0x10",
285854f5de6fSIan Rogers        "Unit": "iMC"
285954f5de6fSIan Rogers    },
286054f5de6fSIan Rogers    {
286154f5de6fSIan Rogers        "BriefDescription": "Scoreboard Inserts : Block region writes",
286254f5de6fSIan Rogers        "EventCode": "0xd6",
286354f5de6fSIan Rogers        "EventName": "UNC_M_SB_INSERTS.BLOCK_WRS",
286454f5de6fSIan Rogers        "PerPkg": "1",
286554f5de6fSIan Rogers        "UMask": "0x20",
286654f5de6fSIan Rogers        "Unit": "iMC"
286754f5de6fSIan Rogers    },
286854f5de6fSIan Rogers    {
286954f5de6fSIan Rogers        "BriefDescription": "Scoreboard Inserts : Persistent Mem reads",
287054f5de6fSIan Rogers        "EventCode": "0xd6",
287154f5de6fSIan Rogers        "EventName": "UNC_M_SB_INSERTS.PMM_RDS",
287254f5de6fSIan Rogers        "PerPkg": "1",
287354f5de6fSIan Rogers        "UMask": "0x4",
287454f5de6fSIan Rogers        "Unit": "iMC"
287554f5de6fSIan Rogers    },
287654f5de6fSIan Rogers    {
287754f5de6fSIan Rogers        "BriefDescription": "Scoreboard Inserts : Persistent Mem writes",
287854f5de6fSIan Rogers        "EventCode": "0xd6",
287954f5de6fSIan Rogers        "EventName": "UNC_M_SB_INSERTS.PMM_WRS",
288054f5de6fSIan Rogers        "PerPkg": "1",
288154f5de6fSIan Rogers        "UMask": "0x8",
288254f5de6fSIan Rogers        "Unit": "iMC"
288354f5de6fSIan Rogers    },
288454f5de6fSIan Rogers    {
288554f5de6fSIan Rogers        "BriefDescription": "Scoreboard Inserts : Reads",
288654f5de6fSIan Rogers        "EventCode": "0xd6",
288754f5de6fSIan Rogers        "EventName": "UNC_M_SB_INSERTS.RDS",
288854f5de6fSIan Rogers        "PerPkg": "1",
288954f5de6fSIan Rogers        "UMask": "0x1",
289054f5de6fSIan Rogers        "Unit": "iMC"
289154f5de6fSIan Rogers    },
289254f5de6fSIan Rogers    {
289354f5de6fSIan Rogers        "BriefDescription": "Scoreboard Inserts : Writes",
289454f5de6fSIan Rogers        "EventCode": "0xd6",
289554f5de6fSIan Rogers        "EventName": "UNC_M_SB_INSERTS.WRS",
289654f5de6fSIan Rogers        "PerPkg": "1",
289754f5de6fSIan Rogers        "UMask": "0x2",
289854f5de6fSIan Rogers        "Unit": "iMC"
289954f5de6fSIan Rogers    },
290054f5de6fSIan Rogers    {
290154f5de6fSIan Rogers        "BriefDescription": "Scoreboard Occupancy : Block region reads",
290254f5de6fSIan Rogers        "EventCode": "0xd5",
290354f5de6fSIan Rogers        "EventName": "UNC_M_SB_OCCUPANCY.BLOCK_RDS",
290454f5de6fSIan Rogers        "PerPkg": "1",
290554f5de6fSIan Rogers        "UMask": "0x20",
290654f5de6fSIan Rogers        "Unit": "iMC"
290754f5de6fSIan Rogers    },
290854f5de6fSIan Rogers    {
290954f5de6fSIan Rogers        "BriefDescription": "Scoreboard Occupancy : Block region writes",
291054f5de6fSIan Rogers        "EventCode": "0xd5",
291154f5de6fSIan Rogers        "EventName": "UNC_M_SB_OCCUPANCY.BLOCK_WRS",
291254f5de6fSIan Rogers        "PerPkg": "1",
291354f5de6fSIan Rogers        "UMask": "0x40",
291454f5de6fSIan Rogers        "Unit": "iMC"
291554f5de6fSIan Rogers    },
291654f5de6fSIan Rogers    {
291754f5de6fSIan Rogers        "BriefDescription": "Scoreboard Occupancy : Persistent Mem reads",
291854f5de6fSIan Rogers        "EventCode": "0xd5",
291954f5de6fSIan Rogers        "EventName": "UNC_M_SB_OCCUPANCY.PMM_RDS",
292054f5de6fSIan Rogers        "PerPkg": "1",
292154f5de6fSIan Rogers        "UMask": "0x4",
292254f5de6fSIan Rogers        "Unit": "iMC"
292354f5de6fSIan Rogers    },
292454f5de6fSIan Rogers    {
292554f5de6fSIan Rogers        "BriefDescription": "Scoreboard Occupancy : Persistent Mem writes",
292654f5de6fSIan Rogers        "EventCode": "0xd5",
292754f5de6fSIan Rogers        "EventName": "UNC_M_SB_OCCUPANCY.PMM_WRS",
292854f5de6fSIan Rogers        "PerPkg": "1",
292954f5de6fSIan Rogers        "UMask": "0x8",
293054f5de6fSIan Rogers        "Unit": "iMC"
293154f5de6fSIan Rogers    },
293254f5de6fSIan Rogers    {
293354f5de6fSIan Rogers        "BriefDescription": "Scoreboard Occupancy : Reads",
293454f5de6fSIan Rogers        "EventCode": "0xd5",
293554f5de6fSIan Rogers        "EventName": "UNC_M_SB_OCCUPANCY.RDS",
293654f5de6fSIan Rogers        "PerPkg": "1",
293754f5de6fSIan Rogers        "UMask": "0x1",
293854f5de6fSIan Rogers        "Unit": "iMC"
293954f5de6fSIan Rogers    },
294054f5de6fSIan Rogers    {
294154f5de6fSIan Rogers        "BriefDescription": "Scoreboard Prefetch Inserts : All",
294254f5de6fSIan Rogers        "EventCode": "0xda",
294354f5de6fSIan Rogers        "EventName": "UNC_M_SB_PREF_INSERTS.ALL",
294454f5de6fSIan Rogers        "PerPkg": "1",
294554f5de6fSIan Rogers        "UMask": "0x1",
294654f5de6fSIan Rogers        "Unit": "iMC"
294754f5de6fSIan Rogers    },
294854f5de6fSIan Rogers    {
294954f5de6fSIan Rogers        "BriefDescription": "Scoreboard Prefetch Inserts : DDR4",
295054f5de6fSIan Rogers        "EventCode": "0xda",
295154f5de6fSIan Rogers        "EventName": "UNC_M_SB_PREF_INSERTS.DDR",
295254f5de6fSIan Rogers        "PerPkg": "1",
295354f5de6fSIan Rogers        "UMask": "0x2",
295454f5de6fSIan Rogers        "Unit": "iMC"
295554f5de6fSIan Rogers    },
295654f5de6fSIan Rogers    {
295754f5de6fSIan Rogers        "BriefDescription": "Scoreboard Prefetch Inserts : PMM",
295854f5de6fSIan Rogers        "EventCode": "0xda",
295954f5de6fSIan Rogers        "EventName": "UNC_M_SB_PREF_INSERTS.PMM",
296054f5de6fSIan Rogers        "PerPkg": "1",
296154f5de6fSIan Rogers        "UMask": "0x4",
296254f5de6fSIan Rogers        "Unit": "iMC"
296354f5de6fSIan Rogers    },
296454f5de6fSIan Rogers    {
296554f5de6fSIan Rogers        "BriefDescription": "Scoreboard Prefetch Occupancy : All",
296654f5de6fSIan Rogers        "EventCode": "0xdb",
296754f5de6fSIan Rogers        "EventName": "UNC_M_SB_PREF_OCCUPANCY.ALL",
296854f5de6fSIan Rogers        "PerPkg": "1",
296954f5de6fSIan Rogers        "UMask": "0x1",
297054f5de6fSIan Rogers        "Unit": "iMC"
297154f5de6fSIan Rogers    },
297254f5de6fSIan Rogers    {
297354f5de6fSIan Rogers        "BriefDescription": "Scoreboard Prefetch Occupancy : DDR4",
297454f5de6fSIan Rogers        "EventCode": "0xdb",
297554f5de6fSIan Rogers        "EventName": "UNC_M_SB_PREF_OCCUPANCY.DDR",
297654f5de6fSIan Rogers        "PerPkg": "1",
297754f5de6fSIan Rogers        "UMask": "0x2",
297854f5de6fSIan Rogers        "Unit": "iMC"
297954f5de6fSIan Rogers    },
298054f5de6fSIan Rogers    {
298154f5de6fSIan Rogers        "BriefDescription": "Scoreboard Prefetch Occupancy : Persistent Mem",
298254f5de6fSIan Rogers        "EventCode": "0xDB",
298354f5de6fSIan Rogers        "EventName": "UNC_M_SB_PREF_OCCUPANCY.PMM",
298454f5de6fSIan Rogers        "FCMask": "0x00000000",
298554f5de6fSIan Rogers        "PerPkg": "1",
298654f5de6fSIan Rogers        "PortMask": "0x00000000",
298754f5de6fSIan Rogers        "UMask": "0x4",
298854f5de6fSIan Rogers        "Unit": "iMC"
298954f5de6fSIan Rogers    },
299054f5de6fSIan Rogers    {
299154f5de6fSIan Rogers        "BriefDescription": "Number of Scoreboard Requests Rejected",
299254f5de6fSIan Rogers        "EventCode": "0xd4",
299354f5de6fSIan Rogers        "EventName": "UNC_M_SB_REJECT.CANARY",
299454f5de6fSIan Rogers        "PerPkg": "1",
299554f5de6fSIan Rogers        "UMask": "0x8",
299654f5de6fSIan Rogers        "Unit": "iMC"
299754f5de6fSIan Rogers    },
299854f5de6fSIan Rogers    {
299954f5de6fSIan Rogers        "BriefDescription": "Number of Scoreboard Requests Rejected",
300054f5de6fSIan Rogers        "EventCode": "0xd4",
300154f5de6fSIan Rogers        "EventName": "UNC_M_SB_REJECT.DDR_EARLY_CMP",
300254f5de6fSIan Rogers        "PerPkg": "1",
300354f5de6fSIan Rogers        "UMask": "0x20",
300454f5de6fSIan Rogers        "Unit": "iMC"
300554f5de6fSIan Rogers    },
300654f5de6fSIan Rogers    {
300754f5de6fSIan Rogers        "BriefDescription": "Number of Scoreboard Requests Rejected : FM requests rejected due to full address conflict",
300854f5de6fSIan Rogers        "EventCode": "0xd4",
300954f5de6fSIan Rogers        "EventName": "UNC_M_SB_REJECT.FM_ADDR_CNFLT",
301054f5de6fSIan Rogers        "PerPkg": "1",
301154f5de6fSIan Rogers        "UMask": "0x2",
301254f5de6fSIan Rogers        "Unit": "iMC"
301354f5de6fSIan Rogers    },
301454f5de6fSIan Rogers    {
301554f5de6fSIan Rogers        "BriefDescription": "Number of Scoreboard Requests Rejected : NM requests rejected due to set conflict",
301654f5de6fSIan Rogers        "EventCode": "0xd4",
301754f5de6fSIan Rogers        "EventName": "UNC_M_SB_REJECT.NM_SET_CNFLT",
301854f5de6fSIan Rogers        "PerPkg": "1",
301954f5de6fSIan Rogers        "UMask": "0x1",
302054f5de6fSIan Rogers        "Unit": "iMC"
302154f5de6fSIan Rogers    },
302254f5de6fSIan Rogers    {
302354f5de6fSIan Rogers        "BriefDescription": "Number of Scoreboard Requests Rejected : Patrol requests rejected due to set conflict",
302454f5de6fSIan Rogers        "EventCode": "0xd4",
302554f5de6fSIan Rogers        "EventName": "UNC_M_SB_REJECT.PATROL_SET_CNFLT",
302654f5de6fSIan Rogers        "PerPkg": "1",
302754f5de6fSIan Rogers        "UMask": "0x4",
302854f5de6fSIan Rogers        "Unit": "iMC"
302954f5de6fSIan Rogers    },
303054f5de6fSIan Rogers    {
303154f5de6fSIan Rogers        "BriefDescription": ": Far Mem Read - Set",
303254f5de6fSIan Rogers        "EventCode": "0xd7",
303354f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_ALLOC.FM_RD",
303454f5de6fSIan Rogers        "PerPkg": "1",
303554f5de6fSIan Rogers        "UMask": "0x2",
303654f5de6fSIan Rogers        "Unit": "iMC"
303754f5de6fSIan Rogers    },
303854f5de6fSIan Rogers    {
303954f5de6fSIan Rogers        "BriefDescription": ": Near Mem Read - Clear",
304054f5de6fSIan Rogers        "EventCode": "0xd7",
304154f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_ALLOC.FM_TGR",
304254f5de6fSIan Rogers        "PerPkg": "1",
304354f5de6fSIan Rogers        "UMask": "0x10",
304454f5de6fSIan Rogers        "Unit": "iMC"
304554f5de6fSIan Rogers    },
304654f5de6fSIan Rogers    {
304754f5de6fSIan Rogers        "BriefDescription": ": Far Mem Write - Set",
304854f5de6fSIan Rogers        "EventCode": "0xd7",
304954f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_ALLOC.FM_WR",
305054f5de6fSIan Rogers        "PerPkg": "1",
305154f5de6fSIan Rogers        "UMask": "0x8",
305254f5de6fSIan Rogers        "Unit": "iMC"
305354f5de6fSIan Rogers    },
305454f5de6fSIan Rogers    {
305554f5de6fSIan Rogers        "BriefDescription": ": Near Mem Read - Set",
305654f5de6fSIan Rogers        "EventCode": "0xd7",
305754f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_ALLOC.NM_RD",
305854f5de6fSIan Rogers        "PerPkg": "1",
305954f5de6fSIan Rogers        "UMask": "0x1",
306054f5de6fSIan Rogers        "Unit": "iMC"
306154f5de6fSIan Rogers    },
306254f5de6fSIan Rogers    {
306354f5de6fSIan Rogers        "BriefDescription": ": Near Mem Write - Set",
306454f5de6fSIan Rogers        "EventCode": "0xd7",
306554f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_ALLOC.NM_WR",
306654f5de6fSIan Rogers        "PerPkg": "1",
306754f5de6fSIan Rogers        "UMask": "0x4",
306854f5de6fSIan Rogers        "Unit": "iMC"
306954f5de6fSIan Rogers    },
307054f5de6fSIan Rogers    {
307154f5de6fSIan Rogers        "BriefDescription": ": Far Mem Read - Set",
307254f5de6fSIan Rogers        "EventCode": "0xde",
307354f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_DEALLOC.FM_RD",
307454f5de6fSIan Rogers        "PerPkg": "1",
307554f5de6fSIan Rogers        "UMask": "0x2",
307654f5de6fSIan Rogers        "Unit": "iMC"
307754f5de6fSIan Rogers    },
307854f5de6fSIan Rogers    {
307954f5de6fSIan Rogers        "BriefDescription": ": Near Mem Read - Clear",
308054f5de6fSIan Rogers        "EventCode": "0xde",
308154f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_DEALLOC.FM_TGR",
308254f5de6fSIan Rogers        "PerPkg": "1",
308354f5de6fSIan Rogers        "UMask": "0x10",
308454f5de6fSIan Rogers        "Unit": "iMC"
308554f5de6fSIan Rogers    },
308654f5de6fSIan Rogers    {
308754f5de6fSIan Rogers        "BriefDescription": ": Far Mem Write - Set",
308854f5de6fSIan Rogers        "EventCode": "0xde",
308954f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_DEALLOC.FM_WR",
309054f5de6fSIan Rogers        "PerPkg": "1",
309154f5de6fSIan Rogers        "UMask": "0x8",
309254f5de6fSIan Rogers        "Unit": "iMC"
309354f5de6fSIan Rogers    },
309454f5de6fSIan Rogers    {
309554f5de6fSIan Rogers        "BriefDescription": ": Near Mem Read - Set",
309654f5de6fSIan Rogers        "EventCode": "0xde",
309754f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_DEALLOC.NM_RD",
309854f5de6fSIan Rogers        "PerPkg": "1",
309954f5de6fSIan Rogers        "UMask": "0x1",
310054f5de6fSIan Rogers        "Unit": "iMC"
310154f5de6fSIan Rogers    },
310254f5de6fSIan Rogers    {
310354f5de6fSIan Rogers        "BriefDescription": ": Near Mem Write - Set",
310454f5de6fSIan Rogers        "EventCode": "0xde",
310554f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_DEALLOC.NM_WR",
310654f5de6fSIan Rogers        "PerPkg": "1",
310754f5de6fSIan Rogers        "UMask": "0x4",
310854f5de6fSIan Rogers        "Unit": "iMC"
310954f5de6fSIan Rogers    },
311054f5de6fSIan Rogers    {
311154f5de6fSIan Rogers        "BriefDescription": ": Far Mem Read",
311254f5de6fSIan Rogers        "EventCode": "0xd8",
311354f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_OCC.FM_RD",
311454f5de6fSIan Rogers        "PerPkg": "1",
311554f5de6fSIan Rogers        "UMask": "0x2",
311654f5de6fSIan Rogers        "Unit": "iMC"
311754f5de6fSIan Rogers    },
311854f5de6fSIan Rogers    {
311954f5de6fSIan Rogers        "BriefDescription": ": Near Mem Read - Clear",
312054f5de6fSIan Rogers        "EventCode": "0xd8",
312154f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_OCC.FM_TGR",
312254f5de6fSIan Rogers        "PerPkg": "1",
312354f5de6fSIan Rogers        "UMask": "0x10",
312454f5de6fSIan Rogers        "Unit": "iMC"
312554f5de6fSIan Rogers    },
312654f5de6fSIan Rogers    {
312754f5de6fSIan Rogers        "BriefDescription": ": Far Mem Write",
312854f5de6fSIan Rogers        "EventCode": "0xd8",
312954f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_OCC.FM_WR",
313054f5de6fSIan Rogers        "PerPkg": "1",
313154f5de6fSIan Rogers        "UMask": "0x8",
313254f5de6fSIan Rogers        "Unit": "iMC"
313354f5de6fSIan Rogers    },
313454f5de6fSIan Rogers    {
313554f5de6fSIan Rogers        "BriefDescription": ": Near Mem Read",
313654f5de6fSIan Rogers        "EventCode": "0xd8",
313754f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_OCC.NM_RD",
313854f5de6fSIan Rogers        "PerPkg": "1",
313954f5de6fSIan Rogers        "UMask": "0x1",
314054f5de6fSIan Rogers        "Unit": "iMC"
314154f5de6fSIan Rogers    },
314254f5de6fSIan Rogers    {
314354f5de6fSIan Rogers        "BriefDescription": ": Near Mem Write",
314454f5de6fSIan Rogers        "EventCode": "0xd8",
314554f5de6fSIan Rogers        "EventName": "UNC_M_SB_STRV_OCC.NM_WR",
314654f5de6fSIan Rogers        "PerPkg": "1",
314754f5de6fSIan Rogers        "UMask": "0x4",
314854f5de6fSIan Rogers        "Unit": "iMC"
314954f5de6fSIan Rogers    },
315054f5de6fSIan Rogers    {
315154f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.DDR4_CMP",
315254f5de6fSIan Rogers        "EventCode": "0xdd",
315354f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.DDR4_CMP",
315454f5de6fSIan Rogers        "PerPkg": "1",
315554f5de6fSIan Rogers        "UMask": "0x8",
315654f5de6fSIan Rogers        "Unit": "iMC"
315754f5de6fSIan Rogers    },
315854f5de6fSIan Rogers    {
315954f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.NEW",
316054f5de6fSIan Rogers        "EventCode": "0xdd",
316154f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.NEW",
316254f5de6fSIan Rogers        "PerPkg": "1",
316354f5de6fSIan Rogers        "UMask": "0x1",
316454f5de6fSIan Rogers        "Unit": "iMC"
316554f5de6fSIan Rogers    },
316654f5de6fSIan Rogers    {
316754f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.OCC",
316854f5de6fSIan Rogers        "EventCode": "0xdd",
316954f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.OCC",
317054f5de6fSIan Rogers        "PerPkg": "1",
317154f5de6fSIan Rogers        "UMask": "0x80",
317254f5de6fSIan Rogers        "Unit": "iMC"
317354f5de6fSIan Rogers    },
317454f5de6fSIan Rogers    {
317554f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.PMM0_CMP",
317654f5de6fSIan Rogers        "EventCode": "0xdd",
317754f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.PMM0_CMP",
317854f5de6fSIan Rogers        "PerPkg": "1",
317954f5de6fSIan Rogers        "UMask": "0x10",
318054f5de6fSIan Rogers        "Unit": "iMC"
318154f5de6fSIan Rogers    },
318254f5de6fSIan Rogers    {
318354f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.PMM1_CMP",
318454f5de6fSIan Rogers        "EventCode": "0xdd",
318554f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.PMM1_CMP",
318654f5de6fSIan Rogers        "PerPkg": "1",
318754f5de6fSIan Rogers        "UMask": "0x20",
318854f5de6fSIan Rogers        "Unit": "iMC"
318954f5de6fSIan Rogers    },
319054f5de6fSIan Rogers    {
319154f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.PMM2_CMP",
319254f5de6fSIan Rogers        "EventCode": "0xdd",
319354f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.PMM2_CMP",
319454f5de6fSIan Rogers        "PerPkg": "1",
319554f5de6fSIan Rogers        "UMask": "0x40",
319654f5de6fSIan Rogers        "Unit": "iMC"
319754f5de6fSIan Rogers    },
319854f5de6fSIan Rogers    {
319954f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.RD_HIT",
320054f5de6fSIan Rogers        "EventCode": "0xdd",
320154f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.RD_HIT",
320254f5de6fSIan Rogers        "PerPkg": "1",
320354f5de6fSIan Rogers        "UMask": "0x2",
320454f5de6fSIan Rogers        "Unit": "iMC"
320554f5de6fSIan Rogers    },
320654f5de6fSIan Rogers    {
320754f5de6fSIan Rogers        "BriefDescription": "UNC_M_SB_TAGGED.RD_MISS",
320854f5de6fSIan Rogers        "EventCode": "0xdd",
320954f5de6fSIan Rogers        "EventName": "UNC_M_SB_TAGGED.RD_MISS",
321054f5de6fSIan Rogers        "PerPkg": "1",
321154f5de6fSIan Rogers        "UMask": "0x4",
321254f5de6fSIan Rogers        "Unit": "iMC"
321354f5de6fSIan Rogers    },
321454f5de6fSIan Rogers    {
321554f5de6fSIan Rogers        "BriefDescription": "2LM Tag check hit in near memory cache (DDR4)",
321654f5de6fSIan Rogers        "EventCode": "0xd3",
321754f5de6fSIan Rogers        "EventName": "UNC_M_TAGCHK.HIT",
321854f5de6fSIan Rogers        "PerPkg": "1",
321954f5de6fSIan Rogers        "UMask": "0x1",
322054f5de6fSIan Rogers        "Unit": "iMC"
322154f5de6fSIan Rogers    },
322254f5de6fSIan Rogers    {
322354f5de6fSIan Rogers        "BriefDescription": "2LM Tag check miss, no data at this line",
322454f5de6fSIan Rogers        "EventCode": "0xd3",
322554f5de6fSIan Rogers        "EventName": "UNC_M_TAGCHK.MISS_CLEAN",
322654f5de6fSIan Rogers        "PerPkg": "1",
322754f5de6fSIan Rogers        "UMask": "0x2",
322854f5de6fSIan Rogers        "Unit": "iMC"
322954f5de6fSIan Rogers    },
323054f5de6fSIan Rogers    {
323154f5de6fSIan Rogers        "BriefDescription": "2LM Tag check miss, existing data may be evicted to PMM",
323254f5de6fSIan Rogers        "EventCode": "0xd3",
323354f5de6fSIan Rogers        "EventName": "UNC_M_TAGCHK.MISS_DIRTY",
323454f5de6fSIan Rogers        "PerPkg": "1",
323554f5de6fSIan Rogers        "UMask": "0x4",
323654f5de6fSIan Rogers        "Unit": "iMC"
323754f5de6fSIan Rogers    },
323854f5de6fSIan Rogers    {
3239*9a5511eaSIan Rogers        "BriefDescription": "2LM Tag check hit due to memory read",
324054f5de6fSIan Rogers        "EventCode": "0xd3",
324154f5de6fSIan Rogers        "EventName": "UNC_M_TAGCHK.NM_RD_HIT",
324254f5de6fSIan Rogers        "PerPkg": "1",
324354f5de6fSIan Rogers        "UMask": "0x8",
324454f5de6fSIan Rogers        "Unit": "iMC"
324554f5de6fSIan Rogers    },
324654f5de6fSIan Rogers    {
3247*9a5511eaSIan Rogers        "BriefDescription": "2LM Tag check hit due to memory write",
324854f5de6fSIan Rogers        "EventCode": "0xd3",
324954f5de6fSIan Rogers        "EventName": "UNC_M_TAGCHK.NM_WR_HIT",
325054f5de6fSIan Rogers        "PerPkg": "1",
325154f5de6fSIan Rogers        "UMask": "0x10",
325254f5de6fSIan Rogers        "Unit": "iMC"
325354f5de6fSIan Rogers    },
325454f5de6fSIan Rogers    {
3255400dd489SIan Rogers        "BriefDescription": "Write Pending Queue Allocations",
3256400dd489SIan Rogers        "EventCode": "0x20",
3257400dd489SIan Rogers        "EventName": "UNC_M_WPQ_INSERTS.PCH0",
3258400dd489SIan Rogers        "PerPkg": "1",
3259400dd489SIan Rogers        "PublicDescription": "Write Pending Queue Allocations : Counts the number of allocations into the Write Pending Queue.  This can then be used to calculate the average queuing latency (in conjunction with the WPQ occupancy count).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the CHA to the iMC.  They deallocate after being issued to DRAM.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.",
3260400dd489SIan Rogers        "UMask": "0x1",
3261400dd489SIan Rogers        "Unit": "iMC"
3262400dd489SIan Rogers    },
3263400dd489SIan Rogers    {
3264400dd489SIan Rogers        "BriefDescription": "Write Pending Queue Allocations",
3265400dd489SIan Rogers        "EventCode": "0x20",
3266400dd489SIan Rogers        "EventName": "UNC_M_WPQ_INSERTS.PCH1",
3267400dd489SIan Rogers        "PerPkg": "1",
3268400dd489SIan Rogers        "PublicDescription": "Write Pending Queue Allocations : Counts the number of allocations into the Write Pending Queue.  This can then be used to calculate the average queuing latency (in conjunction with the WPQ occupancy count).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the CHA to the iMC.  They deallocate after being issued to DRAM.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.",
3269400dd489SIan Rogers        "UMask": "0x2",
3270400dd489SIan Rogers        "Unit": "iMC"
3271400dd489SIan Rogers    },
3272400dd489SIan Rogers    {
3273400dd489SIan Rogers        "BriefDescription": "Write Pending Queue Occupancy",
3274400dd489SIan Rogers        "EventCode": "0x82",
3275400dd489SIan Rogers        "EventName": "UNC_M_WPQ_OCCUPANCY_PCH0",
3276400dd489SIan Rogers        "PerPkg": "1",
3277400dd489SIan Rogers        "PublicDescription": "Write Pending Queue Occupancy : Accumulates the occupancies of the Write Pending Queue each cycle.  This can then be used to calculate both the average queue occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after being issued to DRAM.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.  This is not to be confused with actually performing the write to DRAM.  Therefore, the average latency for this queue is actually not useful for deconstruction intermediate write latencies.  So, we provide filtering based on if the request has posted or not.  By using the not posted filter, we can track how long writes spent in the iMC before completions were sent to the HA.  The posted filter, on the other hand, provides information about how much queueing is actually happening in the iMC for writes before they are actually issued to memory.  High average occupancies will generally coincide with high write major mode counts.",
3278400dd489SIan Rogers        "Unit": "iMC"
3279400dd489SIan Rogers    },
3280400dd489SIan Rogers    {
3281400dd489SIan Rogers        "BriefDescription": "Write Pending Queue Occupancy",
3282400dd489SIan Rogers        "EventCode": "0x83",
3283400dd489SIan Rogers        "EventName": "UNC_M_WPQ_OCCUPANCY_PCH1",
3284400dd489SIan Rogers        "PerPkg": "1",
3285400dd489SIan Rogers        "PublicDescription": "Write Pending Queue Occupancy : Accumulates the occupancies of the Write Pending Queue each cycle.  This can then be used to calculate both the average queue occupancy (in conjunction with the number of cycles not empty) and the average latency (in conjunction with the number of allocations).  The WPQ is used to schedule write out to the memory controller and to track the writes.  Requests allocate into the WPQ soon after they enter the memory controller, and need credits for an entry in this buffer before being sent from the HA to the iMC.  They deallocate after being issued to DRAM.  Write requests themselves are able to complete (from the perspective of the rest of the system) as soon they have posted to the iMC.  This is not to be confused with actually performing the write to DRAM.  Therefore, the average latency for this queue is actually not useful for deconstruction intermediate write latencies.  So, we provide filtering based on if the request has posted or not.  By using the not posted filter, we can track how long writes spent in the iMC before completions were sent to the HA.  The posted filter, on the other hand, provides information about how much queueing is actually happening in the iMC for writes before they are actually issued to memory.  High average occupancies will generally coincide with high write major mode counts.",
32864e411ee4SZhengjun Xing        "Unit": "iMC"
328754f5de6fSIan Rogers    },
328854f5de6fSIan Rogers    {
328954f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
329054f5de6fSIan Rogers        "EventCode": "0x23",
329154f5de6fSIan Rogers        "EventName": "UNC_M_WPQ_READ_HIT",
329254f5de6fSIan Rogers        "FCMask": "0x00000000",
329354f5de6fSIan Rogers        "PerPkg": "1",
329454f5de6fSIan Rogers        "PortMask": "0x00000000",
329554f5de6fSIan Rogers        "PublicDescription": "Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
329654f5de6fSIan Rogers        "Unit": "iMC"
329754f5de6fSIan Rogers    },
329854f5de6fSIan Rogers    {
329954f5de6fSIan Rogers        "BriefDescription": "Write Pending Queue CAM Match",
330054f5de6fSIan Rogers        "EventCode": "0x24",
330154f5de6fSIan Rogers        "EventName": "UNC_M_WPQ_WRITE_HIT",
330254f5de6fSIan Rogers        "FCMask": "0x00000000",
330354f5de6fSIan Rogers        "PerPkg": "1",
330454f5de6fSIan Rogers        "PortMask": "0x00000000",
330554f5de6fSIan Rogers        "PublicDescription": "Counts the number of times a request hits in the WPQ (write-pending queue).  The iMC allows writes and reads to pass up other writes to different addresses.  Before a read or a write is issued, it will first CAM the WPQ to see if there is a write pending to that address.  When reads hit, they are able to directly pull their data from the WPQ instead of going to memory.  Writes that hit will overwrite the existing data.  Partial writes that hit will not need to do underfill reads and will simply update their relevant sections.",
330654f5de6fSIan Rogers        "Unit": "iMC"
33074e411ee4SZhengjun Xing    }
33084e411ee4SZhengjun Xing]
3309