@@ -148,25 +148,13 @@ constexpr auto ARCH_LLC_REFERENCE_UMASK = 0x4F;
148
148
149
149
constexpr auto ARCH_LLC_MISS_EVTNR = 0x2E ;
150
150
constexpr auto ARCH_LLC_MISS_UMASK = 0x41 ;
151
- // Atom on-core events
152
-
153
- #define ATOM_MEM_LOAD_RETIRED_L2_HIT_EVTNR (0xCB )
154
- #define ATOM_MEM_LOAD_RETIRED_L2_HIT_UMASK (0x01 )
155
-
156
- #define ATOM_MEM_LOAD_RETIRED_L2_MISS_EVTNR (0xCB )
157
- #define ATOM_MEM_LOAD_RETIRED_L2_MISS_UMASK (0x02 )
158
151
159
- #define ATOM_MEM_LOAD_RETIRED_L2_HIT_EVTNR (0xCB )
160
- #define ATOM_MEM_LOAD_RETIRED_L2_HIT_UMASK (0x01 )
161
-
162
- #define ATOM_MEM_LOAD_RETIRED_L2_MISS_EVTNR (0xCB )
163
- #define ATOM_MEM_LOAD_RETIRED_L2_MISS_UMASK (0x02 )
164
-
165
- #define ATOM_MEM_LOAD_RETIRED_L2_HIT_EVTNR (0xCB )
166
- #define ATOM_MEM_LOAD_RETIRED_L2_HIT_UMASK (0x01 )
152
+ // Atom on-core events
153
+ constexpr auto ATOM_MEM_LOAD_RETIRED_L2_HIT_EVTNR = 0xCB ;
154
+ constexpr auto ATOM_MEM_LOAD_RETIRED_L2_HIT_UMASK = 0x01 ;
167
155
168
- # define ATOM_MEM_LOAD_RETIRED_L2_MISS_EVTNR ( 0xCB )
169
- # define ATOM_MEM_LOAD_RETIRED_L2_MISS_UMASK ( 0x02 )
156
+ constexpr auto ATOM_MEM_LOAD_RETIRED_L2_MISS_EVTNR = 0xCB ;
157
+ constexpr auto ATOM_MEM_LOAD_RETIRED_L2_MISS_UMASK = 0x02 ;
170
158
171
159
// Offcore response events
172
160
constexpr auto OFFCORE_RESPONSE_0_EVTNR = 0xB7 ;
@@ -186,45 +174,41 @@ constexpr auto FRONTEND_UMASK = 0x01;
186
174
*/
187
175
188
176
// Uncore msrs
189
-
190
- #define MSR_UNCORE_PERF_GLOBAL_CTRL_ADDR (0x391 )
191
-
192
- #define MSR_UNCORE_PERFEVTSEL0_ADDR (0x3C0 )
193
- #define MSR_UNCORE_PERFEVTSEL1_ADDR (MSR_UNCORE_PERFEVTSEL0_ADDR + 1 )
194
- #define MSR_UNCORE_PERFEVTSEL2_ADDR (MSR_UNCORE_PERFEVTSEL0_ADDR + 2 )
195
- #define MSR_UNCORE_PERFEVTSEL3_ADDR (MSR_UNCORE_PERFEVTSEL0_ADDR + 3 )
196
- #define MSR_UNCORE_PERFEVTSEL4_ADDR (MSR_UNCORE_PERFEVTSEL0_ADDR + 4 )
197
- #define MSR_UNCORE_PERFEVTSEL5_ADDR (MSR_UNCORE_PERFEVTSEL0_ADDR + 5 )
198
- #define MSR_UNCORE_PERFEVTSEL6_ADDR (MSR_UNCORE_PERFEVTSEL0_ADDR + 6 )
199
- #define MSR_UNCORE_PERFEVTSEL7_ADDR (MSR_UNCORE_PERFEVTSEL0_ADDR + 7 )
200
-
201
-
202
- #define MSR_UNCORE_PMC0 (0x3B0 )
203
- #define MSR_UNCORE_PMC1 (MSR_UNCORE_PMC0 + 1 )
204
- #define MSR_UNCORE_PMC2 (MSR_UNCORE_PMC0 + 2 )
205
- #define MSR_UNCORE_PMC3 (MSR_UNCORE_PMC0 + 3 )
206
- #define MSR_UNCORE_PMC4 (MSR_UNCORE_PMC0 + 4 )
207
- #define MSR_UNCORE_PMC5 (MSR_UNCORE_PMC0 + 5 )
208
- #define MSR_UNCORE_PMC6 (MSR_UNCORE_PMC0 + 6 )
209
- #define MSR_UNCORE_PMC7 (MSR_UNCORE_PMC0 + 7 )
177
+ constexpr auto MSR_UNCORE_PERF_GLOBAL_CTRL_ADDR = 0x391 ;
178
+
179
+ constexpr auto MSR_UNCORE_PERFEVTSEL0_ADDR = 0x3C0 ;
180
+ constexpr auto MSR_UNCORE_PERFEVTSEL1_ADDR = MSR_UNCORE_PERFEVTSEL0_ADDR + 1 ;
181
+ constexpr auto MSR_UNCORE_PERFEVTSEL2_ADDR = MSR_UNCORE_PERFEVTSEL0_ADDR + 2 ;
182
+ constexpr auto MSR_UNCORE_PERFEVTSEL3_ADDR = MSR_UNCORE_PERFEVTSEL0_ADDR + 3 ;
183
+ constexpr auto MSR_UNCORE_PERFEVTSEL4_ADDR = MSR_UNCORE_PERFEVTSEL0_ADDR + 4 ;
184
+ constexpr auto MSR_UNCORE_PERFEVTSEL5_ADDR = MSR_UNCORE_PERFEVTSEL0_ADDR + 5 ;
185
+ constexpr auto MSR_UNCORE_PERFEVTSEL6_ADDR = MSR_UNCORE_PERFEVTSEL0_ADDR + 6 ;
186
+ constexpr auto MSR_UNCORE_PERFEVTSEL7_ADDR = MSR_UNCORE_PERFEVTSEL0_ADDR + 7 ;
187
+
188
+ constexpr auto MSR_UNCORE_PMC0 = 0x3B0 ;
189
+ constexpr auto MSR_UNCORE_PMC1 = MSR_UNCORE_PMC0 + 1 ;
190
+ constexpr auto MSR_UNCORE_PMC2 = MSR_UNCORE_PMC0 + 2 ;
191
+ constexpr auto MSR_UNCORE_PMC3 = MSR_UNCORE_PMC0 + 3 ;
192
+ constexpr auto MSR_UNCORE_PMC4 = MSR_UNCORE_PMC0 + 4 ;
193
+ constexpr auto MSR_UNCORE_PMC5 = MSR_UNCORE_PMC0 + 5 ;
194
+ constexpr auto MSR_UNCORE_PMC6 = MSR_UNCORE_PMC0 + 6 ;
195
+ constexpr auto MSR_UNCORE_PMC7 = MSR_UNCORE_PMC0 + 7 ;
210
196
211
197
// Uncore event IDs
198
+ constexpr auto UNC_QMC_WRITES_FULL_ANY_EVTNR = 0x2F ;
199
+ constexpr auto UNC_QMC_WRITES_FULL_ANY_UMASK = 0x07 ;
212
200
213
- #define UNC_QMC_WRITES_FULL_ANY_EVTNR (0x2F )
214
- #define UNC_QMC_WRITES_FULL_ANY_UMASK (0x07 )
215
-
216
- #define UNC_QMC_NORMAL_READS_ANY_EVTNR (0x2C )
217
- #define UNC_QMC_NORMAL_READS_ANY_UMASK (0x07 )
218
-
219
- #define UNC_QHL_REQUESTS_EVTNR (0x20 )
201
+ constexpr auto UNC_QMC_NORMAL_READS_ANY_EVTNR = 0x2C ;
202
+ constexpr auto UNC_QMC_NORMAL_READS_ANY_UMASK = 0x07 ;
220
203
221
- #define UNC_QHL_REQUESTS_IOH_READS_UMASK (0x01 )
222
- #define UNC_QHL_REQUESTS_IOH_WRITES_UMASK (0x02 )
223
- #define UNC_QHL_REQUESTS_REMOTE_READS_UMASK (0x04 )
224
- #define UNC_QHL_REQUESTS_REMOTE_WRITES_UMASK (0x08 )
225
- #define UNC_QHL_REQUESTS_LOCAL_READS_UMASK (0x10 )
226
- #define UNC_QHL_REQUESTS_LOCAL_WRITES_UMASK (0x20 )
204
+ constexpr auto UNC_QHL_REQUESTS_EVTNR = 0x20 ;
227
205
206
+ constexpr auto UNC_QHL_REQUESTS_IOH_READS_UMASK = 0x01 ;
207
+ constexpr auto UNC_QHL_REQUESTS_IOH_WRITES_UMASK = 0x02 ;
208
+ constexpr auto UNC_QHL_REQUESTS_REMOTE_READS_UMASK = 0x04 ;
209
+ constexpr auto UNC_QHL_REQUESTS_REMOTE_WRITES_UMASK = 0x08 ;
210
+ constexpr auto UNC_QHL_REQUESTS_LOCAL_READS_UMASK = 0x10 ;
211
+ constexpr auto UNC_QHL_REQUESTS_LOCAL_WRITES_UMASK = 0x20 ;
228
212
/*
229
213
From "Intel(r) Xeon(r) Processor 7500 Series Uncore Programming Guide"
230
214
*/
0 commit comments