intel/perf: add TGL support
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Fri, 20 Sep 2019 18:11:33 +0000 (21:11 +0300)
committerLionel Landwerlin <lionel.g.landwerlin@intel.com>
Thu, 31 Oct 2019 09:13:20 +0000 (09:13 +0000)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
src/intel/perf/gen_perf.c
src/intel/perf/gen_perf.py
src/intel/perf/meson.build
src/intel/perf/oa-tgl.xml [new file with mode: 0644]

index f40d9acd8709344e8ca41159450be8c714e83040..e6d3ddd6860a5b8b8d2bd83cf34babaa23fe77b4 100644 (file)
@@ -789,6 +789,8 @@ get_register_queries_function(const struct gen_device_info *devinfo)
       return gen_oa_register_queries_cnl;
    if (devinfo->gen == 11)
       return gen_oa_register_queries_icl;
+   if (devinfo->gen == 12)
+      return gen_oa_register_queries_tgl;
 
    return NULL;
 }
@@ -2254,6 +2256,14 @@ accumulate_oa_reports(struct gen_perf_context *perf_ctx,
       goto error;
    }
 
+   /* On Gen12+ OA reports are sourced from per context counters, so we don't
+    * ever have to look at the global OA buffer. Yey \o/
+    */
+   if (perf_ctx->devinfo->gen >= 12) {
+      last = start;
+      goto end;
+   }
+
    /* See if we have any periodic reports to accumulate too... */
 
    /* N.B. The oa.samples_head was set when the query began and
index 8e05a8e472b3f4db02f51bbe4943e9488680c915..caee7725b63cbd5e6327d6d0ef4d02cac51b795a 100644 (file)
@@ -181,7 +181,10 @@ hw_vars["$EuSlicesTotalCount"] = "perf->sys_vars.n_eu_slices"
 hw_vars["$EuSubslicesTotalCount"] = "perf->sys_vars.n_eu_sub_slices"
 hw_vars["$EuThreadsCount"] = "perf->sys_vars.eu_threads_count"
 hw_vars["$SliceMask"] = "perf->sys_vars.slice_mask"
+# subslice_mask is interchangeable with subslice/dual-subslice since Gen12+
+# only has dual subslices which can be assimilated with 16EUs subslices.
 hw_vars["$SubsliceMask"] = "perf->sys_vars.subslice_mask"
+hw_vars["$DualSubsliceMask"] = "perf->sys_vars.subslice_mask"
 hw_vars["$GpuTimestampFrequency"] = "perf->sys_vars.timestamp_frequency"
 hw_vars["$GpuMinFrequency"] = "perf->sys_vars.gt_min_freq"
 hw_vars["$GpuMaxFrequency"] = "perf->sys_vars.gt_max_freq"
index d6426d0958a78ec318b3bc4d1233871f787fc471..90a8c8beeef38dec692159295991701af2f073f0 100644 (file)
@@ -7,6 +7,7 @@ gen_hw_metrics = [
   'bxt', 'glk',
   'cnl',
   'icl',
+  'tgl',
 ]
 
 gen_hw_metrics_xml_files = []
diff --git a/src/intel/perf/oa-tgl.xml b/src/intel/perf/oa-tgl.xml
new file mode 100644 (file)
index 0000000..0420c0f
--- /dev/null
@@ -0,0 +1,8597 @@
+<?xml version="1.0"?>
+<metrics version="1568234084" merge_md5="">
+  <set name="Render Metrics Basic Gen12"
+       mdapi_supported_apis="OGL OCL IO BB"
+       underscore_name="render_basic"
+       hw_config_guid="519a832e-a682-4ef6-a7ac-b12d68116fd7"
+       chipset="TGL"
+       symbol_name="RenderBasic"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS Send Pipe Active"
+             description="The percentage of time in which EU send pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 12 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_send_active"
+             units="percent"
+             symbol_name="VsSendActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS EM Pipe Active"
+             description="The percentage of time in which EU EM pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 11 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_em_active"
+             units="percent"
+             symbol_name="VsEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="Early Hi-Depth Test Fails"
+             description="The total number of pixels dropped on early hierarchical depth test."
+             data_type="uint64"
+             equation="A 22 READ 4 UMUL"
+             underscore_name="hi_depth_test_fails"
+             units="pixels"
+             symbol_name="HiDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Hi-Depth Test"
+             />
+    <counter name="FS Both FPU Active"
+             description="The percentage of time in which fragment shaders were processed actively on the both FPUs."
+             data_type="float"
+             max_equation="100"
+             equation="A 18 READ $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_eu_both_fpu_active"
+             units="percent"
+             symbol_name="PsEuBothFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Frame Batch Draw"
+             mdapi_group="3D Pipe/Fragment Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Samplers Busy"
+             description="The percentage of time in which samplers have been processing EU requests."
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ GPU_CLOCK 0 READ FDIV"
+             underscore_name="samplers_busy"
+             units="percent"
+             symbol_name="SamplersBusy"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="Sampler"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="PS EM Pipe Active"
+             description="The percentage of time in which EU EM pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 16 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_em_active"
+             units="percent"
+             symbol_name="PsEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Blended"
+             description="The total number of blended samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 27 READ 4 UMUL"
+             underscore_name="samples_blended"
+             units="pixels"
+             symbol_name="SamplesBlended"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="Shader Barrier Messages"
+             description="The total number of shader barrier messages."
+             data_type="uint64"
+             equation="A 35 READ"
+             underscore_name="shader_barriers"
+             units="messages"
+             symbol_name="ShaderBarriers"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Barrier"
+             />
+    <counter name="Sampler Texels"
+             description="The total number of texels seen on input (with 2x2 accuracy) in all sampler units."
+             data_type="uint64"
+             equation="A 28 READ 4 UMUL"
+             underscore_name="sampler_texels"
+             units="texels"
+             symbol_name="SamplerTexels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Input"
+             />
+    <counter name="Pixels Failing Tests"
+             description="The total number of pixels dropped on post-FS alpha, stencil, or depth tests."
+             data_type="uint64"
+             equation="A 25 READ 4 UMUL"
+             underscore_name="pixels_failing_post_ps_tests"
+             units="pixels"
+             symbol_name="PixelsFailingPostPsTests"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="PS FPU Pipe Active"
+             description="The percentage of time in which EU FPU pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 15 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_fpu_active"
+             units="percent"
+             symbol_name="PsFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS FPU Pipe Active"
+             description="The percentage of time in which EU FPU pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 10 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_fpu_active"
+             units="percent"
+             symbol_name="VsFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Sampler Texels Misses"
+             description="The total number of texels lookups (with 2x2 accuracy) that missed L1 sampler cache."
+             data_type="uint64"
+             equation="A 29 READ 4 UMUL"
+             underscore_name="sampler_texel_misses"
+             units="texels"
+             symbol_name="SamplerTexelMisses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Batch Frame Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Cache"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="SLM Bytes Read"
+             description="The total number of GPU memory bytes read from shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ 64 UMUL"
+             underscore_name="slm_bytes_read"
+             units="bytes"
+             symbol_name="SlmBytesRead"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="FS AVG Stall per Thread"
+             description="The average number of cycles per hardware thread run in which fragment shaders were stalled on the EUs."
+             data_type="uint64"
+             equation="A 20 READ A 6 READ UDIV"
+             underscore_name="ps_eu_stall_per_thread"
+             units="cycles"
+             symbol_name="PsEuStallPerThread"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="GTI Read Throughput"
+             description="The total number of GPU memory bytes read from GTI."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL"
+             equation="64  C 5 READ C 4 READ UADD C 3 READ UADD C 2 READ UADD UMUL"
+             underscore_name="gti_read_throughput"
+             units="bytes"
+             symbol_name="GtiReadThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis="IO"
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS AVG Stall per Thread"
+             description="The average number of cycles per hardware thread run in which vertex shaders were stalled on the EUs."
+             data_type="uint64"
+             equation="A 14 READ A 1 READ UDIV"
+             underscore_name="vs_eu_stall_per_thread"
+             units="cycles"
+             symbol_name="VsEuStallPerThread"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="PS Send Pipeline Active"
+             description="The percentage of time in which EU send pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 17 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_send_active"
+             units="percent"
+             symbol_name="PsSendActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="FS AVG Active per Thread"
+             description="The average number of cycles per hardware thread run in which fragment shaders were processed actively on the EUs."
+             data_type="uint64"
+             equation="A 19 READ A 6 READ UDIV"
+             underscore_name="ps_eu_active_per_thread"
+             units="cycles"
+             symbol_name="PsEuActivePerThread"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="FS EU Active"
+             description="The percentage of time in which fragment shaders were processed actively on the EUs."
+             data_type="float"
+             max_equation="100"
+             equation="A 19 READ $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_eu_active"
+             units="percent"
+             symbol_name="PsEuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="EU Array/Fragment Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Atomic Memory Accesses"
+             description="The total number of shader atomic memory accesses."
+             data_type="uint64"
+             equation="A 34 READ"
+             underscore_name="shader_atomics"
+             units="messages"
+             symbol_name="ShaderAtomics"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port/Atomics"
+             />
+    <counter name="Rasterized Pixels"
+             description="The total number of rasterized pixels."
+             data_type="uint64"
+             equation="A 21 READ 4 UMUL"
+             underscore_name="rasterized_pixels"
+             units="pixels"
+             symbol_name="RasterizedPixels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samplers Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which samplers have been slowing down the pipe when processing EU requests."
+             data_type="float"
+             high_watermark="15"
+             equation="C 6 READ GPU_CLOCK 0 READ FDIV"
+             max_equation="100"
+             underscore_name="sampler_bottleneck"
+             units="percent"
+             symbol_name="SamplerBottleneck"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Indicate System Frame Batch Draw"
+             mdapi_group="Sampler"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="FS EU Stall"
+             description="The percentage of time in which fragment shaders were stalled on the EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 20 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_eu_stall"
+             units="percent"
+             symbol_name="PsEuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="EU Array/Fragment Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS EU Active"
+             description="The percentage of time in which vertex shaders were processed actively on the EUs."
+             data_type="float"
+             max_equation="100"
+             equation="A 13 READ $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_eu_active"
+             units="percent"
+             symbol_name="VsEuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Early Depth Test Fails"
+             description="The total number of pixels dropped on early depth test."
+             data_type="uint64"
+             equation="A 23 READ 4 UMUL"
+             underscore_name="early_depth_test_fails"
+             units="pixels"
+             symbol_name="EarlyDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Early Depth Test"
+             />
+    <counter name="VS EU Stall"
+             description="The percentage of time in which vertex shaders were stalled on the EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 14 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_eu_stall"
+             units="percent"
+             symbol_name="VsEuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Memory Accesses"
+             description="The total number of shader memory accesses to L3."
+             data_type="uint64"
+             equation="A 32 READ"
+             underscore_name="shader_memory_accesses"
+             units="messages"
+             symbol_name="ShaderMemoryAccesses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port"
+             />
+    <counter name="VS AVG Active per Thread"
+             description="The average number of cycles per hardware thread run in which vertex shaders were processed actively on the EUs."
+             data_type="uint64"
+             equation="A 13 READ A 1 READ UDIV"
+             underscore_name="vs_eu_active_per_thread"
+             units="cycles"
+             symbol_name="VsEuActivePerThread"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="GTI Write Throughput"
+             description="The total number of GPU memory bytes written to GTI."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL"
+             equation="64  C 1 READ C 0 READ UADD UMUL"
+             underscore_name="gti_write_throughput"
+             units="bytes"
+             symbol_name="GtiWriteThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis="IO"
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="L3 Shader Throughput"
+             description="The total number of GPU memory bytes transferred between shaders and L3 caches w/o URB."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ A 31 READ UADD A 32 READ UADD 64 UMUL"
+             underscore_name="l3_shader_throughput"
+             units="bytes"
+             symbol_name="L3ShaderThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Frame Batch Draw"
+             mdapi_group="L3/Data Port"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Killed in FS"
+             description="The total number of samples or pixels dropped in fragment shaders."
+             data_type="uint64"
+             equation="A 24 READ 4 UMUL"
+             underscore_name="samples_killed_in_ps"
+             units="pixels"
+             symbol_name="SamplesKilledInPs"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Fragment Shader"
+             />
+    <counter name="SLM Bytes Written"
+             description="The total number of GPU memory bytes written into shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 31 READ 64 UMUL"
+             underscore_name="slm_bytes_written"
+             units="bytes"
+             symbol_name="SlmBytesWritten"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Written"
+             description="The total number of samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 26 READ 4 UMUL"
+             underscore_name="samples_written"
+             units="pixels"
+             symbol_name="SamplesWritten"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x14150001" />
+        <register type="NOA" address="0x00009888" value="0x0A124000" />
+        <register type="NOA" address="0x00009888" value="0x0C124000" />
+        <register type="NOA" address="0x00009888" value="0x1A138000" />
+        <register type="NOA" address="0x00009888" value="0x1C130100" />
+        <register type="NOA" address="0x00009888" value="0x04155100" />
+        <register type="NOA" address="0x00009888" value="0x06150050" />
+        <register type="NOA" address="0x00009888" value="0x10150000" />
+        <register type="NOA" address="0x00009888" value="0x1A150000" />
+        <register type="NOA" address="0x00009888" value="0x34001000" />
+        <register type="NOA" address="0x00009888" value="0x36000002" />
+        <register type="NOA" address="0x00009888" value="0x2205A000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x05151D47" />
+        <register type="NOA" address="0x00009888" value="0x09151536" />
+        <register type="NOA" address="0x00009888" value="0x05351C00" />
+        <register type="NOA" address="0x00009888" value="0x09351400" />
+        <register type="NOA" address="0x00009888" value="0x5D102C00" />
+        <register type="NOA" address="0x00009888" value="0x5B1005BB" />
+        <register type="NOA" address="0x00009888" value="0x1B141800" />
+        <register type="NOA" address="0x00009888" value="0x5F110500" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F150137" />
+        <register type="NOA" address="0x00009888" value="0x01150000" />
+        <register type="NOA" address="0x00009888" value="0x0F168000" />
+        <register type="NOA" address="0x00009888" value="0x03164000" />
+        <register type="NOA" address="0x00009888" value="0x05164000" />
+        <register type="NOA" address="0x00009888" value="0x1D350137" />
+        <register type="NOA" address="0x00009888" value="0x03350147" />
+        <register type="NOA" address="0x00009888" value="0x07350136" />
+        <register type="NOA" address="0x00009888" value="0x01350000" />
+        <register type="NOA" address="0x00009888" value="0x0F364000" />
+        <register type="NOA" address="0x00009888" value="0x01368000" />
+        <register type="NOA" address="0x00009888" value="0x03368000" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x55103130" />
+        <register type="NOA" address="0x00009888" value="0x57100001" />
+        <register type="NOA" address="0x00009888" value="0x47103000" />
+        <register type="NOA" address="0x00009888" value="0x49103131" />
+        <register type="NOA" address="0x00009888" value="0x4B100131" />
+        <register type="NOA" address="0x00009888" value="0x4D100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+        <register type="OA" address="0x00002B2C" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00010003" />
+        <register type="FLEX" address="0x0000E658" value="0x00012011" />
+        <register type="FLEX" address="0x0000E758" value="0x00015014" />
+        <register type="FLEX" address="0x0000E45C" value="0x00051050" />
+        <register type="FLEX" address="0x0000E55C" value="0x00053052" />
+        <register type="FLEX" address="0x0000E65C" value="0x00055054" />
+    </register_config>
+  </set>
+
+  <set name="Compute Metrics Basic"
+       mdapi_supported_apis="OGL OCL IO BB"
+       underscore_name="compute_basic"
+       hw_config_guid="c46cfe86-469f-4499-8452-f44012b68dab"
+       chipset="TGL"
+       symbol_name="ComputeBasic"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU AVG IPC Rate"
+             description="The average rate of IPC calculated for 2 FPU pipelines."
+             data_type="float"
+             max_equation="2"
+             equation="A 9 READ A 10 READ A 11 READ FADD A 9 READ FSUB FDIV 1 FADD"
+             underscore_name="eu_avg_ipc_rate"
+             units="number"
+             symbol_name="EuAvgIpcRate"
+             semantic_type="ratio"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="Early Hi-Depth Test Fails"
+             description="The total number of pixels dropped on early hierarchical depth test."
+             data_type="uint64"
+             equation="A 22 READ 4 UMUL"
+             underscore_name="hi_depth_test_fails"
+             units="pixels"
+             symbol_name="HiDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Hi-Depth Test"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="Sampler Texels"
+             description="The total number of texels seen on input (with 2x2 accuracy) in all sampler units."
+             data_type="uint64"
+             equation="A 28 READ 4 UMUL"
+             underscore_name="sampler_texels"
+             units="texels"
+             symbol_name="SamplerTexels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Input"
+             />
+    <counter name="Pixels Failing Tests"
+             description="The total number of pixels dropped on post-FS alpha, stencil, or depth tests."
+             data_type="uint64"
+             equation="A 25 READ 4 UMUL"
+             underscore_name="pixels_failing_post_ps_tests"
+             units="pixels"
+             symbol_name="PixelsFailingPostPsTests"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="EM Pipe Active"
+             description="The percentage of time in which EU EM pipeline was actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 11 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="em_active"
+             units="percent"
+             symbol_name="EmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Sampler Texels Misses"
+             description="The total number of texels lookups (with 2x2 accuracy) that missed L1 sampler cache."
+             data_type="uint64"
+             equation="A 29 READ 4 UMUL"
+             underscore_name="sampler_texel_misses"
+             units="texels"
+             symbol_name="SamplerTexelMisses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Batch Frame Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Cache"
+             />
+    <counter name="EU FPU Pipe Active"
+             description="The percentage of time in which EU FPU pipeline was actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 10 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="fpu_active"
+             units="percent"
+             symbol_name="FpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="SLM Bytes Read"
+             description="The total number of GPU memory bytes read from shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ 64 UMUL"
+             underscore_name="slm_bytes_read"
+             units="bytes"
+             symbol_name="SlmBytesRead"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GTI Read Throughput"
+             description="The total number of GPU memory bytes read from GTI."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL"
+             equation="64  C 7 READ C 6 READ UADD C 5 READ UADD C 4 READ UADD UMUL"
+             underscore_name="gti_read_throughput"
+             units="bytes"
+             symbol_name="GtiReadThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis="IO"
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Barrier Messages"
+             description="The total number of shader barrier messages."
+             data_type="uint64"
+             equation="A 35 READ"
+             underscore_name="shader_barriers"
+             units="messages"
+             symbol_name="ShaderBarriers"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Barrier"
+             />
+    <counter name="Rasterized Pixels"
+             description="The total number of rasterized pixels."
+             data_type="uint64"
+             equation="A 21 READ 4 UMUL"
+             underscore_name="rasterized_pixels"
+             units="pixels"
+             symbol_name="RasterizedPixels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 13 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Blended"
+             description="The total number of blended samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 27 READ 4 UMUL"
+             underscore_name="samples_blended"
+             units="pixels"
+             symbol_name="SamplesBlended"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="Early Depth Test Fails"
+             description="The total number of pixels dropped on early depth test."
+             data_type="uint64"
+             equation="A 23 READ 4 UMUL"
+             underscore_name="early_depth_test_fails"
+             units="pixels"
+             symbol_name="EarlyDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Early Depth Test"
+             />
+    <counter name="Shader Memory Accesses"
+             description="The total number of shader memory accesses to L3."
+             data_type="uint64"
+             equation="A 32 READ"
+             underscore_name="shader_memory_accesses"
+             units="messages"
+             symbol_name="ShaderMemoryAccesses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="GTI Write Throughput"
+             description="The total number of GPU memory bytes written to GTI."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL"
+             equation="64  C 3 READ C 2 READ UADD UMUL"
+             underscore_name="gti_write_throughput"
+             units="bytes"
+             symbol_name="GtiWriteThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis="IO"
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="L3 Shader Throughput"
+             description="The total number of GPU memory bytes transferred between shaders and L3 caches w/o URB."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ A 31 READ UADD A 32 READ UADD 64 UMUL"
+             underscore_name="l3_shader_throughput"
+             units="bytes"
+             symbol_name="L3ShaderThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Frame Batch Draw"
+             mdapi_group="L3/Data Port"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Killed in FS"
+             description="The total number of samples or pixels dropped in fragment shaders."
+             data_type="uint64"
+             equation="A 24 READ 4 UMUL"
+             underscore_name="samples_killed_in_ps"
+             units="pixels"
+             symbol_name="SamplesKilledInPs"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Fragment Shader"
+             />
+    <counter name="SLM Bytes Written"
+             description="The total number of GPU memory bytes written into shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 31 READ 64 UMUL"
+             underscore_name="slm_bytes_written"
+             units="bytes"
+             symbol_name="SlmBytesWritten"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Written"
+             description="The total number of samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 26 READ 4 UMUL"
+             underscore_name="samples_written"
+             units="pixels"
+             symbol_name="SamplesWritten"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="Shader Atomic Memory Accesses"
+             description="The total number of shader atomic memory accesses."
+             data_type="uint64"
+             equation="A 34 READ"
+             underscore_name="shader_atomics"
+             units="messages"
+             symbol_name="ShaderAtomics"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port/Atomics"
+             />
+    <counter name="EU Send Pipe Active"
+             description="The percentage of time in which EU send pipeline was actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 12 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_send_active"
+             units="percent"
+             symbol_name="EuSendActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x05151D37" />
+        <register type="NOA" address="0x00009888" value="0x09151547" />
+        <register type="NOA" address="0x00009888" value="0x05351C00" />
+        <register type="NOA" address="0x00009888" value="0x09351400" />
+        <register type="NOA" address="0x00009888" value="0x5B100BBB" />
+        <register type="NOA" address="0x00009888" value="0x0D150136" />
+        <register type="NOA" address="0x00009888" value="0x01150000" />
+        <register type="NOA" address="0x00009888" value="0x03164000" />
+        <register type="NOA" address="0x00009888" value="0x05164000" />
+        <register type="NOA" address="0x00009888" value="0x07164000" />
+        <register type="NOA" address="0x00009888" value="0x03350137" />
+        <register type="NOA" address="0x00009888" value="0x07350147" />
+        <register type="NOA" address="0x00009888" value="0x0B350136" />
+        <register type="NOA" address="0x00009888" value="0x01350000" />
+        <register type="NOA" address="0x00009888" value="0x01368000" />
+        <register type="NOA" address="0x00009888" value="0x03368000" />
+        <register type="NOA" address="0x00009888" value="0x05368000" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x47100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100000" />
+        <register type="NOA" address="0x00009888" value="0x4D100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00000003" />
+        <register type="FLEX" address="0x0000E658" value="0x00002001" />
+        <register type="FLEX" address="0x0000E758" value="0x00000008" />
+    </register_config>
+  </set>
+
+  <set name="Render Metrics for 3D Pipeline Profile"
+       mdapi_supported_apis="OGL OCL IO BB"
+       underscore_name="render_pipe_profile"
+       hw_config_guid="77ae98cf-9a9e-4e35-be85-597b09ffbe53"
+       chipset="TGL"
+       symbol_name="RenderPipeProfile"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS Bottleneck"
+             low_watermark="10"
+             description="The percentage of time in which vertex shader pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="30"
+             equation="C 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="vs_bottleneck"
+             units="percent"
+             symbol_name="VsBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Hi-Depth Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which early hierarchical depth test pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="15"
+             equation="B 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="hi_depth_bottleneck"
+             units="percent"
+             symbol_name="HiDepthBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Rasterizer/Hi-Depth Test"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which geometry shader pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="15"
+             equation="B 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="gs_bottleneck"
+             units="percent"
+             symbol_name="GsBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Geometry Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="Early Hi-Depth Test Fails"
+             description="The total number of pixels dropped on early hierarchical depth test."
+             data_type="uint64"
+             equation="A 22 READ 4 UMUL"
+             underscore_name="hi_depth_test_fails"
+             units="pixels"
+             symbol_name="HiDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Hi-Depth Test"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="BC Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which barycentric coordinates calculation pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="15"
+             equation="C 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="bc_bottleneck"
+             units="percent"
+             symbol_name="BcBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Rasterizer/Barycentric Calc"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Stall"
+             description="The percentage of time in which hull stall pipeline stage was stalled."
+             data_type="float"
+             max_equation="100"
+             equation="B 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="hs_stall"
+             units="percent"
+             symbol_name="HsStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Correlate Draw"
+             mdapi_group="3D Pipe/Hull Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Barrier Messages"
+             description="The total number of shader barrier messages."
+             data_type="uint64"
+             equation="A 35 READ"
+             underscore_name="shader_barriers"
+             units="messages"
+             symbol_name="ShaderBarriers"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Barrier"
+             />
+    <counter name="Sampler Texels"
+             description="The total number of texels seen on input (with 2x2 accuracy) in all sampler units."
+             data_type="uint64"
+             equation="A 28 READ 4 UMUL"
+             underscore_name="sampler_texels"
+             units="texels"
+             symbol_name="SamplerTexels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Input"
+             />
+    <counter name="Pixels Failing Tests"
+             description="The total number of pixels dropped on post-FS alpha, stencil, or depth tests."
+             data_type="uint64"
+             equation="A 25 READ 4 UMUL"
+             underscore_name="pixels_failing_post_ps_tests"
+             units="pixels"
+             symbol_name="PixelsFailingPostPsTests"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Sampler Texels Misses"
+             description="The total number of texels lookups (with 2x2 accuracy) that missed L1 sampler cache."
+             data_type="uint64"
+             equation="A 29 READ 4 UMUL"
+             underscore_name="sampler_texel_misses"
+             units="texels"
+             symbol_name="SamplerTexelMisses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Batch Frame Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Cache"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VF Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which vertex fetch pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="15"
+             equation="C 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="vf_bottleneck"
+             units="percent"
+             symbol_name="VfBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Input Assembler"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="SLM Bytes Read"
+             description="The total number of GPU memory bytes read from shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ 64 UMUL"
+             underscore_name="slm_bytes_read"
+             units="bytes"
+             symbol_name="SlmBytesRead"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Strip-Fans Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which strip-fans pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="10"
+             equation="C 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="sf_bottleneck"
+             units="percent"
+             symbol_name="SfBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Rasterizer/Strip-Fans"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="SF Stall"
+             description="The percentage of time in which strip-fans pipeline stage was stalled."
+             data_type="float"
+             max_equation="100"
+             equation="B 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sf_stall"
+             units="percent"
+             symbol_name="SfStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Correlate Draw"
+             mdapi_group="3D Pipe/Rasterizer/Strip-Fans"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Bottleneck"
+             low_watermark="3"
+             description="The percentage of time in which hull shader pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="9"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="hs_bottleneck"
+             units="percent"
+             symbol_name="HsBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Hull Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="CL Stall"
+             description="The percentage of time in which clipper pipeline stage was stalled."
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="cl_stall"
+             units="percent"
+             symbol_name="ClStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Correlate Draw"
+             mdapi_group="3D Pipe/Clipper"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="SO Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which stream output pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="15"
+             equation="C 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="so_bottleneck"
+             units="percent"
+             symbol_name="SoBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Stream Output"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Rasterized Pixels"
+             description="The total number of rasterized pixels."
+             data_type="uint64"
+             equation="A 21 READ 4 UMUL"
+             underscore_name="rasterized_pixels"
+             units="pixels"
+             symbol_name="RasterizedPixels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="Samples Written"
+             description="The total number of samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 26 READ 4 UMUL"
+             underscore_name="samples_written"
+             units="pixels"
+             symbol_name="SamplesWritten"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="DS Bottleneck"
+             low_watermark="5"
+             description="The percentage of time in which domain shader pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="15"
+             equation="C 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="ds_bottleneck"
+             units="percent"
+             symbol_name="DsBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Domain Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Clipper Bottleneck"
+             low_watermark="10"
+             description="The percentage of time in which clipper pipeline stage was slowing down the 3D pipeline."
+             data_type="float"
+             high_watermark="30"
+             equation="C 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             max_equation="100"
+             underscore_name="cl_bottleneck"
+             units="percent"
+             symbol_name="ClBottleneck"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Indicate Draw"
+             mdapi_group="3D Pipe/Clipper"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="DS Stall"
+             description="The percentage of time in which domain shader pipeline stage was stalled."
+             data_type="float"
+             max_equation="100"
+             equation="C 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ds_stall"
+             units="percent"
+             symbol_name="DsStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Correlate Draw"
+             mdapi_group="3D Pipe/Domain Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Blended"
+             description="The total number of blended samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 27 READ 4 UMUL"
+             underscore_name="samples_blended"
+             units="pixels"
+             symbol_name="SamplesBlended"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="Early Depth Test Fails"
+             description="The total number of pixels dropped on early depth test."
+             data_type="uint64"
+             equation="A 23 READ 4 UMUL"
+             underscore_name="early_depth_test_fails"
+             units="pixels"
+             symbol_name="EarlyDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Early Depth Test"
+             />
+    <counter name="Shader Memory Accesses"
+             description="The total number of shader memory accesses to L3."
+             data_type="uint64"
+             equation="A 32 READ"
+             underscore_name="shader_memory_accesses"
+             units="messages"
+             symbol_name="ShaderMemoryAccesses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="L3 Shader Throughput"
+             description="The total number of GPU memory bytes transferred between shaders and L3 caches w/o URB."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ A 31 READ UADD A 32 READ UADD 64 UMUL"
+             underscore_name="l3_shader_throughput"
+             units="bytes"
+             symbol_name="L3ShaderThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Frame Batch Draw"
+             mdapi_group="L3/Data Port"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Killed in FS"
+             description="The total number of samples or pixels dropped in fragment shaders."
+             data_type="uint64"
+             equation="A 24 READ 4 UMUL"
+             underscore_name="samples_killed_in_ps"
+             units="pixels"
+             symbol_name="SamplesKilledInPs"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Fragment Shader"
+             />
+    <counter name="SLM Bytes Written"
+             description="The total number of GPU memory bytes written into shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 31 READ 64 UMUL"
+             underscore_name="slm_bytes_written"
+             units="bytes"
+             symbol_name="SlmBytesWritten"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="SO Stall"
+             description="The percentage of time in which stream-output pipeline stage was stalled."
+             data_type="float"
+             max_equation="100"
+             equation="B 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="so_stall"
+             units="percent"
+             symbol_name="SoStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Correlate Draw"
+             mdapi_group="3D Pipe/Stream Output"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Atomic Memory Accesses"
+             description="The total number of shader atomic memory accesses."
+             data_type="uint64"
+             equation="A 34 READ"
+             underscore_name="shader_atomics"
+             units="messages"
+             symbol_name="ShaderAtomics"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port/Atomics"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x00123E00" />
+        <register type="NOA" address="0x00009888" value="0x060B00B3" />
+        <register type="NOA" address="0x00009888" value="0x140B3C00" />
+        <register type="NOA" address="0x00009888" value="0x1C0B0000" />
+        <register type="NOA" address="0x00009888" value="0x120C8320" />
+        <register type="NOA" address="0x00009888" value="0x040DBE00" />
+        <register type="NOA" address="0x00009888" value="0x000D0000" />
+        <register type="NOA" address="0x00009888" value="0x280D0000" />
+        <register type="NOA" address="0x00009888" value="0x2C0E7C00" />
+        <register type="NOA" address="0x00009888" value="0x10087C00" />
+        <register type="NOA" address="0x00009888" value="0x1E120002" />
+        <register type="NOA" address="0x00009888" value="0x20120000" />
+        <register type="NOA" address="0x00009888" value="0x1E130002" />
+        <register type="NOA" address="0x00009888" value="0x0E0B0031" />
+        <register type="NOA" address="0x00009888" value="0x180B0092" />
+        <register type="NOA" address="0x00009888" value="0x1A0B00B1" />
+        <register type="NOA" address="0x00009888" value="0x020B0093" />
+        <register type="NOA" address="0x00009888" value="0x040B0033" />
+        <register type="NOA" address="0x00009888" value="0x000B0000" />
+        <register type="NOA" address="0x00009888" value="0x0A0C0022" />
+        <register type="NOA" address="0x00009888" value="0x1E0C0030" />
+        <register type="NOA" address="0x00009888" value="0x1C0C8000" />
+        <register type="NOA" address="0x00009888" value="0x140C8000" />
+        <register type="NOA" address="0x00009888" value="0x160C8000" />
+        <register type="NOA" address="0x00009888" value="0x100DC017" />
+        <register type="NOA" address="0x00009888" value="0x160D0013" />
+        <register type="NOA" address="0x00009888" value="0x1C0D0081" />
+        <register type="NOA" address="0x00009888" value="0x080D0082" />
+        <register type="NOA" address="0x00009888" value="0x0A0D8102" />
+        <register type="NOA" address="0x00009888" value="0x140D0000" />
+        <register type="NOA" address="0x00009888" value="0x0C0D0000" />
+        <register type="NOA" address="0x00009888" value="0x0E0D4000" />
+        <register type="NOA" address="0x00009888" value="0x120D0000" />
+        <register type="NOA" address="0x00009888" value="0x060DC000" />
+        <register type="NOA" address="0x00009888" value="0x0C0EC1C5" />
+        <register type="NOA" address="0x00009888" value="0x180E0000" />
+        <register type="NOA" address="0x00009888" value="0x0E0E8000" />
+        <register type="NOA" address="0x00009888" value="0x100E4000" />
+        <register type="NOA" address="0x00009888" value="0x120EC000" />
+        <register type="NOA" address="0x00009888" value="0x140EC000" />
+        <register type="NOA" address="0x00009888" value="0x160E4000" />
+        <register type="NOA" address="0x00009888" value="0x080E8000" />
+        <register type="NOA" address="0x00009888" value="0x0A0EC000" />
+        <register type="NOA" address="0x00009888" value="0x1C0F5555" />
+        <register type="NOA" address="0x00009888" value="0x1E0F0554" />
+        <register type="NOA" address="0x00009888" value="0x0E104000" />
+        <register type="NOA" address="0x00009888" value="0x10104000" />
+        <register type="NOA" address="0x00009888" value="0x14104000" />
+        <register type="NOA" address="0x00009888" value="0x16104000" />
+        <register type="NOA" address="0x00009888" value="0x18104000" />
+        <register type="NOA" address="0x00009888" value="0x1A104000" />
+        <register type="NOA" address="0x00009888" value="0x1C104000" />
+        <register type="NOA" address="0x00009888" value="0x02104000" />
+        <register type="NOA" address="0x00009888" value="0x04104000" />
+        <register type="NOA" address="0x00009888" value="0x06104000" />
+        <register type="NOA" address="0x00009888" value="0x08104000" />
+        <register type="NOA" address="0x00009888" value="0x0A104000" />
+        <register type="NOA" address="0x00009888" value="0x0C104000" />
+        <register type="NOA" address="0x00009888" value="0x0E024000" />
+        <register type="NOA" address="0x00009888" value="0x10024000" />
+        <register type="NOA" address="0x00009888" value="0x2C024000" />
+        <register type="NOA" address="0x00009888" value="0x2E020055" />
+        <register type="NOA" address="0x00009888" value="0x02024000" />
+        <register type="NOA" address="0x00009888" value="0x04024000" />
+        <register type="NOA" address="0x00009888" value="0x06024000" />
+        <register type="NOA" address="0x00009888" value="0x08024000" />
+        <register type="NOA" address="0x00009888" value="0x0A024000" />
+        <register type="NOA" address="0x00009888" value="0x0C024000" />
+        <register type="NOA" address="0x00009888" value="0x1A032000" />
+        <register type="NOA" address="0x00009888" value="0x1C032000" />
+        <register type="NOA" address="0x00009888" value="0x2A035500" />
+        <register type="NOA" address="0x00009888" value="0x2C030001" />
+        <register type="NOA" address="0x00009888" value="0x02034000" />
+        <register type="NOA" address="0x00009888" value="0x04034000" />
+        <register type="NOA" address="0x00009888" value="0x06034000" />
+        <register type="NOA" address="0x00009888" value="0x08034000" />
+        <register type="NOA" address="0x00009888" value="0x0A034000" />
+        <register type="NOA" address="0x00009888" value="0x18032000" />
+        <register type="NOA" address="0x00009888" value="0x360036DB" />
+        <register type="NOA" address="0x00009888" value="0x380026DB" />
+        <register type="NOA" address="0x00009888" value="0x1A006000" />
+        <register type="NOA" address="0x00009888" value="0x1C006000" />
+        <register type="NOA" address="0x00009888" value="0x1E006000" />
+        <register type="NOA" address="0x00009888" value="0x34001B00" />
+        <register type="NOA" address="0x00009888" value="0x26050002" />
+        <register type="NOA" address="0x00009888" value="0x0E0A8000" />
+        <register type="NOA" address="0x00009888" value="0x100A8000" />
+        <register type="NOA" address="0x00009888" value="0x120A4000" />
+        <register type="NOA" address="0x00009888" value="0x140A8000" />
+        <register type="NOA" address="0x00009888" value="0x160A8000" />
+        <register type="NOA" address="0x00009888" value="0x180A8000" />
+        <register type="NOA" address="0x00009888" value="0x1A0A8000" />
+        <register type="NOA" address="0x00009888" value="0x1C0A8000" />
+        <register type="NOA" address="0x00009888" value="0x020A8000" />
+        <register type="NOA" address="0x00009888" value="0x040A8000" />
+        <register type="NOA" address="0x00009888" value="0x060A8000" />
+        <register type="NOA" address="0x00009888" value="0x080A8000" />
+        <register type="NOA" address="0x00009888" value="0x0A0A8000" />
+        <register type="NOA" address="0x00009888" value="0x0C0A8000" />
+        <register type="NOA" address="0x00009888" value="0x08081000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x5B105555" />
+        <register type="NOA" address="0x00009888" value="0x5D101555" />
+        <register type="NOA" address="0x00009888" value="0x1B14FC00" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x5F115555" />
+        <register type="NOA" address="0x00009888" value="0x61111555" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x4D100604" />
+        <register type="NOA" address="0x00009888" value="0x4F103400" />
+        <register type="NOA" address="0x00009888" value="0x51100200" />
+        <register type="NOA" address="0x00009888" value="0x53100004" />
+        <register type="NOA" address="0x00009888" value="0x55101400" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100005" />
+        <register type="NOA" address="0x00009888" value="0x47100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100400" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+    </register_config>
+  </set>
+
+  <set name="Metric set HDCAndSF"
+       mdapi_supported_apis="OGL OCL IO BB"
+       underscore_name="hdc_and_sf"
+       hw_config_guid="dedd95cd-1bd4-4e65-be7f-1fd7aa43fe12"
+       chipset="TGL"
+       symbol_name="HDCAndSF"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS Send Pipe Active"
+             description="The percentage of time in which EU send pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 12 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_send_active"
+             units="percent"
+             symbol_name="VsSendActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS EM Pipe Active"
+             description="The percentage of time in which EU EM pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 11 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_em_active"
+             units="percent"
+             symbol_name="VsEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="Early Hi-Depth Test Fails"
+             description="The total number of pixels dropped on early hierarchical depth test."
+             data_type="uint64"
+             equation="A 22 READ 4 UMUL"
+             underscore_name="hi_depth_test_fails"
+             units="pixels"
+             symbol_name="HiDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Hi-Depth Test"
+             />
+    <counter name="FS Both FPU Active"
+             description="The percentage of time in which fragment shaders were processed actively on the both FPUs."
+             data_type="float"
+             max_equation="100"
+             equation="A 18 READ $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_eu_both_fpu_active"
+             units="percent"
+             symbol_name="PsEuBothFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Frame Batch Draw"
+             mdapi_group="3D Pipe/Fragment Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="Polygon Data Ready"
+             description="The percentage of time in which geometry pipeline output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="poly_data_ready"
+             units="percent"
+             symbol_name="PolyDataReady"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/3D Pipe/Strip-Fans"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Slice0 Dualsubslice4 Non-sampler Shader Access Stalled On L3"
+             description="Percentage of time when HDC has messages to L3, but it's stalled due to lack of credits (Slice0 Dualsubslice4)"
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_sampler_shader04_access_stalled_on_l3"
+             units="percent"
+             symbol_name="NonSamplerShader04AccessStalledOnL3"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="GPU/Data Port"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="PS EM Pipe Active"
+             description="The percentage of time in which EU EM pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 16 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_em_active"
+             units="percent"
+             symbol_name="PsEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Barrier Messages"
+             description="The total number of shader barrier messages."
+             data_type="uint64"
+             equation="A 35 READ"
+             underscore_name="shader_barriers"
+             units="messages"
+             symbol_name="ShaderBarriers"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Barrier"
+             />
+    <counter name="Sampler Texels"
+             description="The total number of texels seen on input (with 2x2 accuracy) in all sampler units."
+             data_type="uint64"
+             equation="A 28 READ 4 UMUL"
+             underscore_name="sampler_texels"
+             units="texels"
+             symbol_name="SamplerTexels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Input"
+             />
+    <counter name="Pixels Failing Tests"
+             description="The total number of pixels dropped on post-FS alpha, stencil, or depth tests."
+             data_type="uint64"
+             equation="A 25 READ 4 UMUL"
+             underscore_name="pixels_failing_post_ps_tests"
+             units="pixels"
+             symbol_name="PixelsFailingPostPsTests"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="PS FPU Pipe Active"
+             description="The percentage of time in which EU FPU pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 15 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_fpu_active"
+             units="percent"
+             symbol_name="PsFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS FPU Pipe Active"
+             description="The percentage of time in which EU FPU pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 10 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_fpu_active"
+             units="percent"
+             symbol_name="VsFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Sampler Texels Misses"
+             description="The total number of texels lookups (with 2x2 accuracy) that missed L1 sampler cache."
+             data_type="uint64"
+             equation="A 29 READ 4 UMUL"
+             underscore_name="sampler_texel_misses"
+             units="texels"
+             symbol_name="SamplerTexelMisses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Batch Frame Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Cache"
+             />
+    <counter name="Slice0 Dualsubslice1 Non-sampler Shader Access Stalled On L3"
+             description="Percentage of time when HDC has messages to L3, but it's stalled due to lack of credits (Slice0 Dualsubslice1)"
+             data_type="float"
+             max_equation="100"
+             equation="B 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_sampler_shader01_access_stalled_on_l3"
+             units="percent"
+             symbol_name="NonSamplerShader01AccessStalledOnL3"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="GPU/Data Port"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="Slice0 Dualsubslice2 Non-sampler Shader Access Stalled On L3"
+             description="Percentage of time when HDC has messages to L3, but it's stalled due to lack of credits (Slice0 Dualsubslice2)"
+             data_type="float"
+             max_equation="100"
+             equation="B 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_sampler_shader02_access_stalled_on_l3"
+             units="percent"
+             symbol_name="NonSamplerShader02AccessStalledOnL3"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="GPU/Data Port"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="SLM Bytes Read"
+             description="The total number of GPU memory bytes read from shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ 64 UMUL"
+             underscore_name="slm_bytes_read"
+             units="bytes"
+             symbol_name="SlmBytesRead"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="PS Send Pipeline Active"
+             description="The percentage of time in which EU send pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 17 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_send_active"
+             units="percent"
+             symbol_name="PsSendActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Rasterized Pixels"
+             description="The total number of rasterized pixels."
+             data_type="uint64"
+             equation="A 21 READ 4 UMUL"
+             underscore_name="rasterized_pixels"
+             units="pixels"
+             symbol_name="RasterizedPixels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="Samples Written"
+             description="The total number of samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 26 READ 4 UMUL"
+             underscore_name="samples_written"
+             units="pixels"
+             symbol_name="SamplesWritten"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Blended"
+             description="The total number of blended samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 27 READ 4 UMUL"
+             underscore_name="samples_blended"
+             units="pixels"
+             symbol_name="SamplesBlended"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="Early Depth Test Fails"
+             description="The total number of pixels dropped on early depth test."
+             data_type="uint64"
+             equation="A 23 READ 4 UMUL"
+             underscore_name="early_depth_test_fails"
+             units="pixels"
+             symbol_name="EarlyDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Early Depth Test"
+             />
+    <counter name="Shader Memory Accesses"
+             description="The total number of shader memory accesses to L3."
+             data_type="uint64"
+             equation="A 32 READ"
+             underscore_name="shader_memory_accesses"
+             units="messages"
+             symbol_name="ShaderMemoryAccesses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="L3 Shader Throughput"
+             description="The total number of GPU memory bytes transferred between shaders and L3 caches w/o URB."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ A 31 READ UADD A 32 READ UADD 64 UMUL"
+             underscore_name="l3_shader_throughput"
+             units="bytes"
+             symbol_name="L3ShaderThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Frame Batch Draw"
+             mdapi_group="L3/Data Port"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Killed in FS"
+             description="The total number of samples or pixels dropped in fragment shaders."
+             data_type="uint64"
+             equation="A 24 READ 4 UMUL"
+             underscore_name="samples_killed_in_ps"
+             units="pixels"
+             symbol_name="SamplesKilledInPs"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Fragment Shader"
+             />
+    <counter name="Slice0 Dualsubslice0 Non-sampler Shader Access Stalled On L3"
+             description="Percentage of time when HDC has messages to L3, but it's stalled due to lack of credits (Slice0 Dualsubslice0)"
+             data_type="float"
+             max_equation="100"
+             equation="B 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_sampler_shader00_access_stalled_on_l3"
+             units="percent"
+             symbol_name="NonSamplerShader00AccessStalledOnL3"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="GPU/Data Port"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="SLM Bytes Written"
+             description="The total number of GPU memory bytes written into shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 31 READ 64 UMUL"
+             underscore_name="slm_bytes_written"
+             units="bytes"
+             symbol_name="SlmBytesWritten"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 Dualsubslice3 Non-sampler Shader Access Stalled On L3"
+             description="Percentage of time when HDC has messages to L3, but it's stalled due to lack of credits (Slice0 Dualsubslice3)"
+             data_type="float"
+             max_equation="100"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_sampler_shader03_access_stalled_on_l3"
+             units="percent"
+             symbol_name="NonSamplerShader03AccessStalledOnL3"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="GPU/Data Port"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="Slice0 Dualsubslice5 Non-sampler Shader Access Stalled On L3"
+             description="Percentage of time when HDC has messages to L3, but it's stalled due to lack of credits (Slice0 Dualsubslice5)"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_sampler_shader05_access_stalled_on_l3"
+             units="percent"
+             symbol_name="NonSamplerShader05AccessStalledOnL3"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="GPU/Data Port"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="Shader Atomic Memory Accesses"
+             description="The total number of shader atomic memory accesses."
+             data_type="uint64"
+             equation="A 34 READ"
+             underscore_name="shader_atomics"
+             units="messages"
+             symbol_name="ShaderAtomics"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port/Atomics"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x14112400" />
+        <register type="NOA" address="0x00009888" value="0x14312400" />
+        <register type="NOA" address="0x00009888" value="0x14512474" />
+        <register type="NOA" address="0x00009888" value="0x14712400" />
+        <register type="NOA" address="0x00009888" value="0x14912400" />
+        <register type="NOA" address="0x00009888" value="0x14B12400" />
+        <register type="NOA" address="0x00009888" value="0x240A0019" />
+        <register type="NOA" address="0x00009888" value="0x1C07C000" />
+        <register type="NOA" address="0x00009888" value="0x24070002" />
+        <register type="NOA" address="0x00009888" value="0x10110074" />
+        <register type="NOA" address="0x00009888" value="0x08110000" />
+        <register type="NOA" address="0x00009888" value="0x10128000" />
+        <register type="NOA" address="0x00009888" value="0x1C130400" />
+        <register type="NOA" address="0x00009888" value="0x12310074" />
+        <register type="NOA" address="0x00009888" value="0x10310000" />
+        <register type="NOA" address="0x00009888" value="0x08310000" />
+        <register type="NOA" address="0x00009888" value="0x12328000" />
+        <register type="NOA" address="0x00009888" value="0x1C330800" />
+        <register type="NOA" address="0x00009888" value="0x10510000" />
+        <register type="NOA" address="0x00009888" value="0x0A510000" />
+        <register type="NOA" address="0x00009888" value="0x14528000" />
+        <register type="NOA" address="0x00009888" value="0x1C531000" />
+        <register type="NOA" address="0x00009888" value="0x16710074" />
+        <register type="NOA" address="0x00009888" value="0x10710000" />
+        <register type="NOA" address="0x00009888" value="0x0A710000" />
+        <register type="NOA" address="0x00009888" value="0x16728000" />
+        <register type="NOA" address="0x00009888" value="0x1C732000" />
+        <register type="NOA" address="0x00009888" value="0x0E910074" />
+        <register type="NOA" address="0x00009888" value="0x10910000" />
+        <register type="NOA" address="0x00009888" value="0x06910000" />
+        <register type="NOA" address="0x00009888" value="0x0E928000" />
+        <register type="NOA" address="0x00009888" value="0x1C930200" />
+        <register type="NOA" address="0x00009888" value="0x00B10074" />
+        <register type="NOA" address="0x00009888" value="0x10B10000" />
+        <register type="NOA" address="0x00009888" value="0x00B28000" />
+        <register type="NOA" address="0x00009888" value="0x10B38000" />
+        <register type="NOA" address="0x00009888" value="0x1E0F0020" />
+        <register type="NOA" address="0x00009888" value="0x16104000" />
+        <register type="NOA" address="0x00009888" value="0x2E020001" />
+        <register type="NOA" address="0x00009888" value="0x2A030600" />
+        <register type="NOA" address="0x00009888" value="0x18002000" />
+        <register type="NOA" address="0x00009888" value="0x36003488" />
+        <register type="NOA" address="0x00009888" value="0x3800001B" />
+        <register type="NOA" address="0x00009888" value="0x00014000" />
+        <register type="NOA" address="0x00009888" value="0x1A012000" />
+        <register type="NOA" address="0x00009888" value="0x24050038" />
+        <register type="NOA" address="0x00009888" value="0x24060080" />
+        <register type="NOA" address="0x00009888" value="0x180A00F7" />
+        <register type="NOA" address="0x00009888" value="0x200A0000" />
+        <register type="NOA" address="0x00009888" value="0x140A8000" />
+        <register type="NOA" address="0x00009888" value="0x160A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105000" />
+        <register type="NOA" address="0x00009888" value="0x5D100055" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14E000" />
+        <register type="NOA" address="0x00009888" value="0x1D140007" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115000" />
+        <register type="NOA" address="0x00009888" value="0x61110055" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x47100600" />
+        <register type="NOA" address="0x00009888" value="0x4D100000" />
+        <register type="NOA" address="0x00009888" value="0x4F101116" />
+        <register type="NOA" address="0x00009888" value="0x51100401" />
+        <register type="NOA" address="0x00009888" value="0x53100030" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0xF0800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x70800000" />
+        <register type="OA" address="0x0000DC40" value="0x007F0000" />
+        <register type="OA" address="0x0000D940" value="0x00000002" />
+        <register type="OA" address="0x0000D944" value="0x0000FFFE" />
+        <register type="OA" address="0x0000DC00" value="0x00000002" />
+        <register type="OA" address="0x0000DC04" value="0x0000FFFE" />
+        <register type="OA" address="0x0000D948" value="0x00000002" />
+        <register type="OA" address="0x0000D94C" value="0x0000FFFD" />
+        <register type="OA" address="0x0000DC08" value="0x00000002" />
+        <register type="OA" address="0x0000DC0C" value="0x0000FFFD" />
+        <register type="OA" address="0x0000D950" value="0x00000002" />
+        <register type="OA" address="0x0000D954" value="0x0000FFFB" />
+        <register type="OA" address="0x0000DC10" value="0x00000002" />
+        <register type="OA" address="0x0000DC14" value="0x0000FFFB" />
+        <register type="OA" address="0x0000D958" value="0x00000002" />
+        <register type="OA" address="0x0000D95C" value="0x0000FFF7" />
+        <register type="OA" address="0x0000DC18" value="0x00000002" />
+        <register type="OA" address="0x0000DC1C" value="0x0000FFF7" />
+        <register type="OA" address="0x0000D960" value="0x00000002" />
+        <register type="OA" address="0x0000D964" value="0x0000FFEF" />
+        <register type="OA" address="0x0000DC20" value="0x00000002" />
+        <register type="OA" address="0x0000DC24" value="0x0000FFEF" />
+        <register type="OA" address="0x0000D968" value="0x00000002" />
+        <register type="OA" address="0x0000D96C" value="0x0000FFDF" />
+        <register type="OA" address="0x0000DC28" value="0x00000002" />
+        <register type="OA" address="0x0000DC2C" value="0x0000FFDF" />
+        <register type="OA" address="0x0000D970" value="0x00000002" />
+        <register type="OA" address="0x0000D974" value="0x0000FFBF" />
+        <register type="OA" address="0x0000DC30" value="0x00000002" />
+        <register type="OA" address="0x0000DC34" value="0x0000FFBF" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00010003" />
+        <register type="FLEX" address="0x0000E658" value="0x00012011" />
+        <register type="FLEX" address="0x0000E45C" value="0x00051050" />
+        <register type="FLEX" address="0x0000E55C" value="0x00053052" />
+    </register_config>
+  </set>
+
+  <set name="Metric set RasterizerAndPixelBackend"
+       mdapi_supported_apis="OGL OCL IO BB"
+       underscore_name="rasterizer_and_pixel_backend"
+       hw_config_guid="a889ccb3-5ebd-437f-b5c6-e951fba822f5"
+       chipset="TGL"
+       symbol_name="RasterizerAndPixelBackend"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS Send Pipe Active"
+             description="The percentage of time in which EU send pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 12 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_send_active"
+             units="percent"
+             symbol_name="VsSendActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 Pipe0 PS Output Available"
+             description="The percentage of time in which slice0 pipe0 PS output is available"
+             data_type="float"
+             max_equation="100"
+             equation="C 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_output00_available"
+             units="percent"
+             symbol_name="PSOutput00Available"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/3D Pipe"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="VS EM Pipe Active"
+             description="The percentage of time in which EU EM pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 11 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_em_active"
+             units="percent"
+             symbol_name="VsEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="Slice0 Pipe1 PS Output Available"
+             description="The percentage of time in which slice0 pipe1 PS output is available"
+             data_type="float"
+             max_equation="100"
+             equation="C 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_output01_available"
+             units="percent"
+             symbol_name="PSOutput01Available"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/3D Pipe"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="Early Hi-Depth Test Fails"
+             description="The total number of pixels dropped on early hierarchical depth test."
+             data_type="uint64"
+             equation="A 22 READ 4 UMUL"
+             underscore_name="hi_depth_test_fails"
+             units="pixels"
+             symbol_name="HiDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Hi-Depth Test"
+             />
+    <counter name="FS Both FPU Active"
+             description="The percentage of time in which fragment shaders were processed actively on the both FPUs."
+             data_type="float"
+             max_equation="100"
+             equation="A 18 READ $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_eu_both_fpu_active"
+             units="percent"
+             symbol_name="PsEuBothFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Frame Batch Draw"
+             mdapi_group="3D Pipe/Fragment Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Slice0 Pipe1 Pixel Values Ready"
+             description="The percentage of time in which slice0 pipe1 pixel values are ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="pixel_values01_ready"
+             units="percent"
+             symbol_name="PixelValues01Ready"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/3D Pipe"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="PS EM Pipe Active"
+             description="The percentage of time in which EU EM pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 16 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_em_active"
+             units="percent"
+             symbol_name="PsEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Barrier Messages"
+             description="The total number of shader barrier messages."
+             data_type="uint64"
+             equation="A 35 READ"
+             underscore_name="shader_barriers"
+             units="messages"
+             symbol_name="ShaderBarriers"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Barrier"
+             />
+    <counter name="Sampler Texels"
+             description="The total number of texels seen on input (with 2x2 accuracy) in all sampler units."
+             data_type="uint64"
+             equation="A 28 READ 4 UMUL"
+             underscore_name="sampler_texels"
+             units="texels"
+             symbol_name="SamplerTexels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Input"
+             />
+    <counter name="Pixels Failing Tests"
+             description="The total number of pixels dropped on post-FS alpha, stencil, or depth tests."
+             data_type="uint64"
+             equation="A 25 READ 4 UMUL"
+             underscore_name="pixels_failing_post_ps_tests"
+             units="pixels"
+             symbol_name="PixelsFailingPostPsTests"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="PS FPU Pipe Active"
+             description="The percentage of time in which EU FPU pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 15 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_fpu_active"
+             units="percent"
+             symbol_name="PsFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="VS FPU Pipe Active"
+             description="The percentage of time in which EU FPU pipeline was actively processing a vertex shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 10 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vs_fpu_active"
+             units="percent"
+             symbol_name="VsFpuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Vertex Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Sampler Texels Misses"
+             description="The total number of texels lookups (with 2x2 accuracy) that missed L1 sampler cache."
+             data_type="uint64"
+             equation="A 29 READ 4 UMUL"
+             underscore_name="sampler_texel_misses"
+             units="texels"
+             symbol_name="SamplerTexelMisses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Batch Frame Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="Sampler/Sampler Cache"
+             />
+    <counter name="Slice0 Pipe0 Post-EarlyZ Pixel Data Ready"
+             description="The percentage of time in which slice0  pipe0 post-EarlyZ pixel data is ready (after early Z tests have been applied)"
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="pixel_data00_ready"
+             units="percent"
+             symbol_name="PixelData00Ready"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Rasterizer/Early Depth Test"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="Slice0 Rasterizer Input Available"
+             description="The percentage of time in which slice0 rasterizer input is available"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="rasterizer0_input_available"
+             units="percent"
+             symbol_name="Rasterizer0InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Rasterizer"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="SLM Bytes Read"
+             description="The total number of GPU memory bytes read from shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ 64 UMUL"
+             underscore_name="slm_bytes_read"
+             units="bytes"
+             symbol_name="SlmBytesRead"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="PS Send Pipeline Active"
+             description="The percentage of time in which EU send pipeline was actively processing a pixel shader instruction."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 17 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_send_active"
+             units="percent"
+             symbol_name="PsSendActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pixel Shader"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="SQ01 is full"
+             description="The percentage of time when IDI0 SQ1 is filled above a threshold (usually 48 entries)"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gt_request_queue01_full"
+             units="percent"
+             symbol_name="GTRequestQueue01Full"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Rasterized Pixels"
+             description="The total number of rasterized pixels."
+             data_type="uint64"
+             equation="A 21 READ 4 UMUL"
+             underscore_name="rasterized_pixels"
+             units="pixels"
+             symbol_name="RasterizedPixels"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer"
+             />
+    <counter name="Slice0 Pipe2 Pixel Values Ready"
+             description="The percentage of time in which slice0 pipe2 pixel values are ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="pixel_values02_ready"
+             units="percent"
+             symbol_name="PixelValues02Ready"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/3D Pipe"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 Pipe0 Pixel Values Ready"
+             description="The percentage of time in which slice0 pipe0 pixel values are ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="pixel_values00_ready"
+             units="percent"
+             symbol_name="PixelValues00Ready"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/3D Pipe"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="SQ10 is full"
+             description="The percentage of time when IDI1 SQ0 is filled above a threshold (usually 48 entries)"
+             data_type="float"
+             max_equation="100"
+             equation="C 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gt_request_queue10_full"
+             units="percent"
+             symbol_name="GTRequestQueue10Full"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="Samples Written"
+             description="The total number of samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 26 READ 4 UMUL"
+             underscore_name="samples_written"
+             units="pixels"
+             symbol_name="SamplesWritten"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="SQ00 is full"
+             description="The percentage of time when IDI0 SQ0 is filled above a threshold (usually 48 entries)"
+             data_type="float"
+             max_equation="100"
+             equation="C 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gt_request_queue00_full"
+             units="percent"
+             symbol_name="GTRequestQueue00Full"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 Pipe2 PS Output Available"
+             description="The percentage of time in which slice0 pipe2 PS output is available"
+             data_type="float"
+             max_equation="100"
+             equation="C 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_output02_available"
+             units="percent"
+             symbol_name="PSOutput02Available"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/3D Pipe"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="Slice0 Rasterizer Output Ready"
+             description="The percentage of time in which slice0 rasterizer output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="rasterizer0_output_ready"
+             units="percent"
+             symbol_name="Rasterizer0OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Rasterizer"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="Samples Blended"
+             description="The total number of blended samples or pixels written to all render targets."
+             data_type="uint64"
+             equation="A 27 READ 4 UMUL"
+             underscore_name="samples_blended"
+             units="pixels"
+             symbol_name="SamplesBlended"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Output Merger"
+             />
+    <counter name="Early Depth Test Fails"
+             description="The total number of pixels dropped on early depth test."
+             data_type="uint64"
+             equation="A 23 READ 4 UMUL"
+             underscore_name="early_depth_test_fails"
+             units="pixels"
+             symbol_name="EarlyDepthTestFails"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Rasterizer/Early Depth Test"
+             />
+    <counter name="SQ11 is full"
+             description="The percentage of time when IDI1 SQ1 is filled above a threshold (usually 48 entries)"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gt_request_queue11_full"
+             units="percent"
+             symbol_name="GTRequestQueue11Full"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="GTI"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Memory Accesses"
+             description="The total number of shader memory accesses to L3."
+             data_type="uint64"
+             equation="A 32 READ"
+             underscore_name="shader_memory_accesses"
+             units="messages"
+             symbol_name="ShaderMemoryAccesses"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="L3 Shader Throughput"
+             description="The total number of GPU memory bytes transferred between shaders and L3 caches w/o URB."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 30 READ A 31 READ UADD A 32 READ UADD 64 UMUL"
+             underscore_name="l3_shader_throughput"
+             units="bytes"
+             symbol_name="L3ShaderThroughput"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Frame Batch Draw"
+             mdapi_group="L3/Data Port"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Samples Killed in FS"
+             description="The total number of samples or pixels dropped in fragment shaders."
+             data_type="uint64"
+             equation="A 24 READ 4 UMUL"
+             underscore_name="samples_killed_in_ps"
+             units="pixels"
+             symbol_name="SamplesKilledInPs"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier4 Overview Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="3D Pipe/Fragment Shader"
+             />
+    <counter name="SLM Bytes Written"
+             description="The total number of GPU memory bytes written into shared local memory."
+             data_type="uint64"
+             max_equation="$GpuCoreClocks 64 UMUL $EuSubslicesTotalCount UMUL"
+             equation="A 31 READ 64 UMUL"
+             underscore_name="slm_bytes_written"
+             units="bytes"
+             symbol_name="SlmBytesWritten"
+             semantic_type="throughput"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_group="L3/Data Port/SLM"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Shader Atomic Memory Accesses"
+             description="The total number of shader atomic memory accesses."
+             data_type="uint64"
+             equation="A 34 READ"
+             underscore_name="shader_atomics"
+             units="messages"
+             symbol_name="ShaderAtomics"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="L3/Data Port/Atomics"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x1E075000" />
+        <register type="NOA" address="0x00009888" value="0x1A0700C0" />
+        <register type="NOA" address="0x00009888" value="0x1E055000" />
+        <register type="NOA" address="0x00009888" value="0x1A0500C0" />
+        <register type="NOA" address="0x00009888" value="0x1E065000" />
+        <register type="NOA" address="0x00009888" value="0x1A0600C0" />
+        <register type="NOA" address="0x00009888" value="0x2A0A7300" />
+        <register type="NOA" address="0x00009888" value="0x2C0A0000" />
+        <register type="NOA" address="0x00009888" value="0x120800A0" />
+        <register type="NOA" address="0x00009888" value="0x0A07C000" />
+        <register type="NOA" address="0x00009888" value="0x0E070027" />
+        <register type="NOA" address="0x00009888" value="0x10070000" />
+        <register type="NOA" address="0x00009888" value="0x24070000" />
+        <register type="NOA" address="0x00009888" value="0x2A032000" />
+        <register type="NOA" address="0x00009888" value="0x2C030008" />
+        <register type="NOA" address="0x00009888" value="0x18006000" />
+        <register type="NOA" address="0x00009888" value="0x360036D8" />
+        <register type="NOA" address="0x00009888" value="0x38003299" />
+        <register type="NOA" address="0x00009888" value="0x1A004000" />
+        <register type="NOA" address="0x00009888" value="0x1C006000" />
+        <register type="NOA" address="0x00009888" value="0x2A010400" />
+        <register type="NOA" address="0x00009888" value="0x2C010001" />
+        <register type="NOA" address="0x00009888" value="0x0C05C000" />
+        <register type="NOA" address="0x00009888" value="0x00052700" />
+        <register type="NOA" address="0x00009888" value="0x10050000" />
+        <register type="NOA" address="0x00009888" value="0x24050000" />
+        <register type="NOA" address="0x00009888" value="0x22050000" />
+        <register type="NOA" address="0x00009888" value="0x0C0600C0" />
+        <register type="NOA" address="0x00009888" value="0x0E062700" />
+        <register type="NOA" address="0x00009888" value="0x10060000" />
+        <register type="NOA" address="0x00009888" value="0x24060000" />
+        <register type="NOA" address="0x00009888" value="0x26060000" />
+        <register type="NOA" address="0x00009888" value="0x000A0144" />
+        <register type="NOA" address="0x00009888" value="0x0E0A0145" />
+        <register type="NOA" address="0x00009888" value="0x100A0156" />
+        <register type="NOA" address="0x00009888" value="0x040A014F" />
+        <register type="NOA" address="0x00009888" value="0x200A0000" />
+        <register type="NOA" address="0x00009888" value="0x120A4000" />
+        <register type="NOA" address="0x00009888" value="0x140A4000" />
+        <register type="NOA" address="0x00009888" value="0x180A8000" />
+        <register type="NOA" address="0x00009888" value="0x1E0A8000" />
+        <register type="NOA" address="0x00009888" value="0x08081980" />
+        <register type="NOA" address="0x00009888" value="0x0A080032" />
+        <register type="NOA" address="0x00009888" value="0x10080000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x31152800" />
+        <register type="NOA" address="0x00009888" value="0x331500A0" />
+        <register type="NOA" address="0x00009888" value="0x31352800" />
+        <register type="NOA" address="0x00009888" value="0x333500A0" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105FA5" />
+        <register type="NOA" address="0x00009888" value="0x5D101555" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14E000" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115005" />
+        <register type="NOA" address="0x00009888" value="0x61111555" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x07150016" />
+        <register type="NOA" address="0x00009888" value="0x09150096" />
+        <register type="NOA" address="0x00009888" value="0x01150000" />
+        <register type="NOA" address="0x00009888" value="0x03168000" />
+        <register type="NOA" address="0x00009888" value="0x05164000" />
+        <register type="NOA" address="0x00009888" value="0x0B350016" />
+        <register type="NOA" address="0x00009888" value="0x0D350096" />
+        <register type="NOA" address="0x00009888" value="0x01350000" />
+        <register type="NOA" address="0x00009888" value="0x05368000" />
+        <register type="NOA" address="0x00009888" value="0x07364000" />
+        <register type="NOA" address="0x00009888" value="0x47100400" />
+        <register type="NOA" address="0x00009888" value="0x4D100616" />
+        <register type="NOA" address="0x00009888" value="0x4F100404" />
+        <register type="NOA" address="0x00009888" value="0x51100202" />
+        <register type="NOA" address="0x00009888" value="0x53100002" />
+        <register type="NOA" address="0x00009888" value="0x55100204" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100000" />
+        <register type="NOA" address="0x00009888" value="0x49101404" />
+        <register type="NOA" address="0x00009888" value="0x4B101616" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x30800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00030000" />
+        <register type="OA" address="0x0000D940" value="0x00000038" />
+        <register type="OA" address="0x0000D944" value="0x0000FFF8" />
+        <register type="OA" address="0x0000DC00" value="0x00000038" />
+        <register type="OA" address="0x0000DC04" value="0x0000FFF8" />
+        <register type="OA" address="0x0000D948" value="0x000000C0" />
+        <register type="OA" address="0x0000D94C" value="0x0000FFE7" />
+        <register type="OA" address="0x0000DC08" value="0x000000C0" />
+        <register type="OA" address="0x0000DC0C" value="0x0000FFE7" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00010003" />
+        <register type="FLEX" address="0x0000E658" value="0x00012011" />
+        <register type="FLEX" address="0x0000E45C" value="0x00051050" />
+        <register type="FLEX" address="0x0000E55C" value="0x00053052" />
+    </register_config>
+  </set>
+
+  <set name="Gen12LP L3_1"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="l3_1"
+       hw_config_guid="feee2629-03a8-4d31-ab4d-7d16572163fb"
+       chipset="TGL"
+       symbol_name="L3_1"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank5 Input Available"
+             description="The percentage of time in which slice0 L3 bank5 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="B 7 READ B 6 READ FADD B 5 READ FADD B 4 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank5_input_available"
+             units="percent"
+             symbol_name="L30Bank5InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank0 Input Available"
+             description="The percentage of time in which slice0 L3 bank0 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ C 6 READ FADD C 5 READ FADD C 4 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank0_input_available"
+             units="percent"
+             symbol_name="L30Bank0InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank1 Input Available"
+             description="The percentage of time in which slice0 L3 bank1 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="C 3 READ C 2 READ FADD C 1 READ FADD C 0 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank1_input_available"
+             units="percent"
+             symbol_name="L30Bank1InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank4 Input Available"
+             description="The percentage of time in which slice0 L3 bank4 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="B 3 READ B 2 READ FADD B 1 READ FADD B 0 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank4_input_available"
+             units="percent"
+             symbol_name="L30Bank4InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x04022000" />
+        <register type="NOA" address="0x00009888" value="0x06022800" />
+        <register type="NOA" address="0x00009888" value="0x04002827" />
+        <register type="NOA" address="0x00009888" value="0x0600202C" />
+        <register type="NOA" address="0x00009888" value="0x00020024" />
+        <register type="NOA" address="0x00009888" value="0x0E020025" />
+        <register type="NOA" address="0x00009888" value="0x10020026" />
+        <register type="NOA" address="0x00009888" value="0x12020027" />
+        <register type="NOA" address="0x00009888" value="0x1402002C" />
+        <register type="NOA" address="0x00009888" value="0x1602002D" />
+        <register type="NOA" address="0x00009888" value="0x1802002E" />
+        <register type="NOA" address="0x00009888" value="0x1A02002F" />
+        <register type="NOA" address="0x00009888" value="0x2E020000" />
+        <register type="NOA" address="0x00009888" value="0x2C020000" />
+        <register type="NOA" address="0x00009888" value="0x00034000" />
+        <register type="NOA" address="0x00009888" value="0x1A032000" />
+        <register type="NOA" address="0x00009888" value="0x1C032000" />
+        <register type="NOA" address="0x00009888" value="0x1E032000" />
+        <register type="NOA" address="0x00009888" value="0x2A035500" />
+        <register type="NOA" address="0x00009888" value="0x1C000024" />
+        <register type="NOA" address="0x00009888" value="0x1E000025" />
+        <register type="NOA" address="0x00009888" value="0x02000026" />
+        <register type="NOA" address="0x00009888" value="0x0800002D" />
+        <register type="NOA" address="0x00009888" value="0x0A00002E" />
+        <register type="NOA" address="0x00009888" value="0x0C00002F" />
+        <register type="NOA" address="0x00009888" value="0x360036D8" />
+        <register type="NOA" address="0x00009888" value="0x18006000" />
+        <register type="NOA" address="0x00009888" value="0x380000DB" />
+        <register type="NOA" address="0x00009888" value="0x1A000000" />
+        <register type="NOA" address="0x00009888" value="0x34000000" />
+        <register type="NOA" address="0x00009888" value="0x000A8000" />
+        <register type="NOA" address="0x00009888" value="0x0E0A8000" />
+        <register type="NOA" address="0x00009888" value="0x100A8000" />
+        <register type="NOA" address="0x00009888" value="0x120A8000" />
+        <register type="NOA" address="0x00009888" value="0x140A8000" />
+        <register type="NOA" address="0x00009888" value="0x160A8000" />
+        <register type="NOA" address="0x00009888" value="0x180A8000" />
+        <register type="NOA" address="0x00009888" value="0x1A0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105555" />
+        <register type="NOA" address="0x00009888" value="0x5D101555" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14FC00" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115555" />
+        <register type="NOA" address="0x00009888" value="0x61111555" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x47100000" />
+        <register type="NOA" address="0x00009888" value="0x4D100606" />
+        <register type="NOA" address="0x00009888" value="0x4F100000" />
+        <register type="NOA" address="0x00009888" value="0x51100000" />
+        <register type="NOA" address="0x00009888" value="0x53100000" />
+        <register type="NOA" address="0x00009888" value="0x55100600" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100006" />
+        <register type="NOA" address="0x00009888" value="0x49100606" />
+        <register type="NOA" address="0x00009888" value="0x4B100606" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Gen12LP L3_2"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="l3_2"
+       hw_config_guid="5266f235-1711-4eef-9493-ebdf0238d512"
+       chipset="TGL"
+       symbol_name="L3_2"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank3 Input Available"
+             description="The percentage of time in which slice0 L3 bank3 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="B 7 READ B 6 READ FADD B 5 READ FADD B 4 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank3_input_available"
+             units="percent"
+             symbol_name="L30Bank3InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="Slice0 L3 Bank6 Input Available"
+             description="The percentage of time in which slice0 L3 bank6 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="C 3 READ C 2 READ FADD C 1 READ FADD C 0 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank6_input_available"
+             units="percent"
+             symbol_name="L30Bank6InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="Slice0 L3 Bank2 Input Available"
+             description="The percentage of time in which slice0 L3 bank2 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="B 3 READ B 2 READ FADD B 1 READ FADD B 0 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank2_input_available"
+             units="percent"
+             symbol_name="L30Bank2InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank7 Input Available"
+             description="The percentage of time in which slice0 L3 bank7 has input available"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ C 6 READ FADD C 5 READ FADD C 4 READ FADD 4 FDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank7_input_available"
+             units="percent"
+             symbol_name="L30Bank7InputAvailable"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x04023027" />
+        <register type="NOA" address="0x00009888" value="0x0602382C" />
+        <register type="NOA" address="0x00009888" value="0x04003000" />
+        <register type="NOA" address="0x00009888" value="0x06003800" />
+        <register type="NOA" address="0x00009888" value="0x1C020024" />
+        <register type="NOA" address="0x00009888" value="0x1E020025" />
+        <register type="NOA" address="0x00009888" value="0x02020026" />
+        <register type="NOA" address="0x00009888" value="0x0802002D" />
+        <register type="NOA" address="0x00009888" value="0x0A02002E" />
+        <register type="NOA" address="0x00009888" value="0x0C02002F" />
+        <register type="NOA" address="0x00009888" value="0x2E020000" />
+        <register type="NOA" address="0x00009888" value="0x2C030005" />
+        <register type="NOA" address="0x00009888" value="0x02034000" />
+        <register type="NOA" address="0x00009888" value="0x04034000" />
+        <register type="NOA" address="0x00009888" value="0x06034000" />
+        <register type="NOA" address="0x00009888" value="0x08034000" />
+        <register type="NOA" address="0x00009888" value="0x0A034000" />
+        <register type="NOA" address="0x00009888" value="0x18032000" />
+        <register type="NOA" address="0x00009888" value="0x00000024" />
+        <register type="NOA" address="0x00009888" value="0x0E000025" />
+        <register type="NOA" address="0x00009888" value="0x10000026" />
+        <register type="NOA" address="0x00009888" value="0x12000027" />
+        <register type="NOA" address="0x00009888" value="0x1400002C" />
+        <register type="NOA" address="0x00009888" value="0x1600002D" />
+        <register type="NOA" address="0x00009888" value="0x1800002E" />
+        <register type="NOA" address="0x00009888" value="0x1A00602F" />
+        <register type="NOA" address="0x00009888" value="0x36000003" />
+        <register type="NOA" address="0x00009888" value="0x38003600" />
+        <register type="NOA" address="0x00009888" value="0x1C006000" />
+        <register type="NOA" address="0x00009888" value="0x1E006000" />
+        <register type="NOA" address="0x00009888" value="0x34001B00" />
+        <register type="NOA" address="0x00009888" value="0x1C0A8000" />
+        <register type="NOA" address="0x00009888" value="0x1E0A8000" />
+        <register type="NOA" address="0x00009888" value="0x020A8000" />
+        <register type="NOA" address="0x00009888" value="0x040A8000" />
+        <register type="NOA" address="0x00009888" value="0x060A8000" />
+        <register type="NOA" address="0x00009888" value="0x080A8000" />
+        <register type="NOA" address="0x00009888" value="0x0A0A8000" />
+        <register type="NOA" address="0x00009888" value="0x0C0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105555" />
+        <register type="NOA" address="0x00009888" value="0x5D101555" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14FC00" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115555" />
+        <register type="NOA" address="0x00009888" value="0x61111555" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x47100600" />
+        <register type="NOA" address="0x00009888" value="0x4D100000" />
+        <register type="NOA" address="0x00009888" value="0x4F100606" />
+        <register type="NOA" address="0x00009888" value="0x51100606" />
+        <register type="NOA" address="0x00009888" value="0x53100606" />
+        <register type="NOA" address="0x00009888" value="0x55100006" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Gen12LP L3_3"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="l3_3"
+       hw_config_guid="9c2cd379-bf93-4ded-b481-f64efd534c4a"
+       chipset="TGL"
+       symbol_name="L3_3"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank4 Output Ready"
+             description="The percentage of time in which slice0 L3 bank4 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ C 4 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank4_output_ready"
+             units="percent"
+             symbol_name="L30Bank4OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="Slice0 L3 Bank0 Output Ready"
+             description="The percentage of time in which slice0 L3 bank0 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ C 6 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank0_output_ready"
+             units="percent"
+             symbol_name="L30Bank0OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x04020200" />
+        <register type="NOA" address="0x00009888" value="0x06020020" />
+        <register type="NOA" address="0x00009888" value="0x04000200" />
+        <register type="NOA" address="0x00009888" value="0x06000000" />
+        <register type="NOA" address="0x00009888" value="0x08020028" />
+        <register type="NOA" address="0x00009888" value="0x2E020000" />
+        <register type="NOA" address="0x00009888" value="0x06034000" />
+        <register type="NOA" address="0x00009888" value="0x08034000" />
+        <register type="NOA" address="0x00009888" value="0x0A000020" />
+        <register type="NOA" address="0x00009888" value="0x0C000028" />
+        <register type="NOA" address="0x00009888" value="0x36000000" />
+        <register type="NOA" address="0x00009888" value="0x1E006000" />
+        <register type="NOA" address="0x00009888" value="0x34000300" />
+        <register type="NOA" address="0x00009888" value="0x060A8000" />
+        <register type="NOA" address="0x00009888" value="0x080A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x5B100550" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x1B141C00" />
+        <register type="NOA" address="0x00009888" value="0x5F110550" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100000" />
+        <register type="NOA" address="0x00009888" value="0x4D100606" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Gen12LP L3_4"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="l3_4"
+       hw_config_guid="6a68185d-0056-4891-a5f6-29aa1e1d81ae"
+       chipset="TGL"
+       symbol_name="L3_4"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank1 Output Ready"
+             description="The percentage of time in which slice0 L3 bank1 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ C 4 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank1_output_ready"
+             units="percent"
+             symbol_name="L30Bank1OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank5 Output Ready"
+             description="The percentage of time in which slice0 L3 bank5 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ C 6 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank5_output_ready"
+             units="percent"
+             symbol_name="L30Bank5OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x04020A00" />
+        <register type="NOA" address="0x00009888" value="0x06020800" />
+        <register type="NOA" address="0x00009888" value="0x04000A00" />
+        <register type="NOA" address="0x00009888" value="0x06000820" />
+        <register type="NOA" address="0x00009888" value="0x0A020020" />
+        <register type="NOA" address="0x00009888" value="0x0C020028" />
+        <register type="NOA" address="0x00009888" value="0x2E020000" />
+        <register type="NOA" address="0x00009888" value="0x0A034000" />
+        <register type="NOA" address="0x00009888" value="0x18032000" />
+        <register type="NOA" address="0x00009888" value="0x08000028" />
+        <register type="NOA" address="0x00009888" value="0x36000003" />
+        <register type="NOA" address="0x00009888" value="0x1E000000" />
+        <register type="NOA" address="0x00009888" value="0x34001800" />
+        <register type="NOA" address="0x00009888" value="0x0A0A8000" />
+        <register type="NOA" address="0x00009888" value="0x0C0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x5B100550" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x1B141C00" />
+        <register type="NOA" address="0x00009888" value="0x5F110550" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100606" />
+        <register type="NOA" address="0x00009888" value="0x4D100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Gen12LP L3_5"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="l3_5"
+       hw_config_guid="3f17a326-ae8b-4869-9f5a-3bccf793e287"
+       chipset="TGL"
+       symbol_name="L3_5"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank6 Output Ready"
+             description="The percentage of time in which slice0 L3 bank6 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ C 6 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank6_output_ready"
+             units="percent"
+             symbol_name="L30Bank6OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank2 Output Ready"
+             description="The percentage of time in which slice0 L3 bank2 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ C 4 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank2_output_ready"
+             units="percent"
+             symbol_name="L30Bank2OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x04021200" />
+        <register type="NOA" address="0x00009888" value="0x06021000" />
+        <register type="NOA" address="0x00009888" value="0x04001200" />
+        <register type="NOA" address="0x00009888" value="0x06001020" />
+        <register type="NOA" address="0x00009888" value="0x0A020020" />
+        <register type="NOA" address="0x00009888" value="0x0C020028" />
+        <register type="NOA" address="0x00009888" value="0x2E020000" />
+        <register type="NOA" address="0x00009888" value="0x0A034000" />
+        <register type="NOA" address="0x00009888" value="0x18032000" />
+        <register type="NOA" address="0x00009888" value="0x08000028" />
+        <register type="NOA" address="0x00009888" value="0x36000003" />
+        <register type="NOA" address="0x00009888" value="0x1E000000" />
+        <register type="NOA" address="0x00009888" value="0x34001800" />
+        <register type="NOA" address="0x00009888" value="0x0A0A8000" />
+        <register type="NOA" address="0x00009888" value="0x0C0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x5B100550" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x1B141C00" />
+        <register type="NOA" address="0x00009888" value="0x5F110550" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100606" />
+        <register type="NOA" address="0x00009888" value="0x4D100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Gen12LP L3_6"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="l3_6"
+       hw_config_guid="d312c40a-9fb7-489a-9a1a-9cd80aac6d61"
+       chipset="TGL"
+       symbol_name="L3_6"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank7 Output Ready"
+             description="The percentage of time in which slice0 L3 bank7 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ C 6 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank7_output_ready"
+             units="percent"
+             symbol_name="L30Bank7OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 L3 Bank3 Output Ready"
+             description="The percentage of time in which slice0 L3 bank3 output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ C 4 READ FADD 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="l30_bank3_output_ready"
+             units="percent"
+             symbol_name="L30Bank3OutputReady"
+             availability="$SliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GTI/L3"
+             mdapi_hw_unit_type="slice"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x04021A00" />
+        <register type="NOA" address="0x00009888" value="0x06021800" />
+        <register type="NOA" address="0x00009888" value="0x04001A00" />
+        <register type="NOA" address="0x00009888" value="0x06001820" />
+        <register type="NOA" address="0x00009888" value="0x0A020020" />
+        <register type="NOA" address="0x00009888" value="0x0C020028" />
+        <register type="NOA" address="0x00009888" value="0x2E020000" />
+        <register type="NOA" address="0x00009888" value="0x0A034000" />
+        <register type="NOA" address="0x00009888" value="0x18032000" />
+        <register type="NOA" address="0x00009888" value="0x08000028" />
+        <register type="NOA" address="0x00009888" value="0x36000003" />
+        <register type="NOA" address="0x00009888" value="0x1E000000" />
+        <register type="NOA" address="0x00009888" value="0x34001800" />
+        <register type="NOA" address="0x00009888" value="0x0A0A8000" />
+        <register type="NOA" address="0x00009888" value="0x0C0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x5B100550" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x1B141C00" />
+        <register type="NOA" address="0x00009888" value="0x5F110550" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100606" />
+        <register type="NOA" address="0x00009888" value="0x4D100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x00800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00000000" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Sampler_1"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="sampler_1"
+       hw_config_guid="f0f255a4-535c-43ed-9d6b-85958cef6c1c"
+       chipset="TGL"
+       symbol_name="Sampler_1"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 DualSubslice1 Input Available"
+             description="The percentage of time in which slice0 dualsubslice1 sampler input is available"
+             data_type="float"
+             max_equation="100"
+             equation="B 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler01_input_available"
+             units="percent"
+             symbol_name="Sampler01InputAvailable"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Slice0 DualSubslice2 Input Available"
+             description="The percentage of time in which slice0 dualsubslice2 sampler input is available"
+             data_type="float"
+             max_equation="100"
+             equation="B 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler02_input_available"
+             units="percent"
+             symbol_name="Sampler02InputAvailable"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 DualSubslice3 Input Available"
+             description="The percentage of time in which slice0 dualsubslice3 sampler input is available"
+             data_type="float"
+             max_equation="100"
+             equation="B 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler03_input_available"
+             units="percent"
+             symbol_name="Sampler03InputAvailable"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 DualSubslice4 Input Available"
+             description="The percentage of time in which slice0 dualsubslice4 sampler input is available"
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler04_input_available"
+             units="percent"
+             symbol_name="Sampler04InputAvailable"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Slice0 DualSubslice5 Input Available"
+             description="The percentage of time in which slice0 dualsubslice5 sampler input is available"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler05_input_available"
+             units="percent"
+             symbol_name="Sampler05InputAvailable"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Slice0 DualSubslice0 Input Available"
+             description="The percentage of time in which slice0 dualsubslice0 sampler input is available"
+             data_type="float"
+             max_equation="100"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler00_input_available"
+             units="percent"
+             symbol_name="Sampler00InputAvailable"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x1C121600" />
+        <register type="NOA" address="0x00009888" value="0x18141600" />
+        <register type="NOA" address="0x00009888" value="0x1C325600" />
+        <register type="NOA" address="0x00009888" value="0x18341600" />
+        <register type="NOA" address="0x00009888" value="0x1C521600" />
+        <register type="NOA" address="0x00009888" value="0x185416A6" />
+        <register type="NOA" address="0x00009888" value="0x1C721600" />
+        <register type="NOA" address="0x00009888" value="0x18741600" />
+        <register type="NOA" address="0x00009888" value="0x1C921600" />
+        <register type="NOA" address="0x00009888" value="0x18941600" />
+        <register type="NOA" address="0x00009888" value="0x1CB21600" />
+        <register type="NOA" address="0x00009888" value="0x18B41600" />
+        <register type="NOA" address="0x00009888" value="0x1C07C000" />
+        <register type="NOA" address="0x00009888" value="0x2407002B" />
+        <register type="NOA" address="0x00009888" value="0x04120086" />
+        <register type="NOA" address="0x00009888" value="0x20120000" />
+        <register type="NOA" address="0x00009888" value="0x02124000" />
+        <register type="NOA" address="0x00009888" value="0x12138000" />
+        <register type="NOA" address="0x00009888" value="0x14138000" />
+        <register type="NOA" address="0x00009888" value="0x021400A6" />
+        <register type="NOA" address="0x00009888" value="0x10140000" />
+        <register type="NOA" address="0x00009888" value="0x00140000" />
+        <register type="NOA" address="0x00009888" value="0x1A150020" />
+        <register type="NOA" address="0x00009888" value="0x1E320086" />
+        <register type="NOA" address="0x00009888" value="0x20320000" />
+        <register type="NOA" address="0x00009888" value="0x1E330003" />
+        <register type="NOA" address="0x00009888" value="0x1C3400A6" />
+        <register type="NOA" address="0x00009888" value="0x10340000" />
+        <register type="NOA" address="0x00009888" value="0x0E340000" />
+        <register type="NOA" address="0x00009888" value="0x1C358000" />
+        <register type="NOA" address="0x00009888" value="0x1A520086" />
+        <register type="NOA" address="0x00009888" value="0x20520000" />
+        <register type="NOA" address="0x00009888" value="0x18524000" />
+        <register type="NOA" address="0x00009888" value="0x1C53C000" />
+        <register type="NOA" address="0x00009888" value="0x10540000" />
+        <register type="NOA" address="0x00009888" value="0x0C540000" />
+        <register type="NOA" address="0x00009888" value="0x1C550800" />
+        <register type="NOA" address="0x00009888" value="0x16720086" />
+        <register type="NOA" address="0x00009888" value="0x20720000" />
+        <register type="NOA" address="0x00009888" value="0x14724000" />
+        <register type="NOA" address="0x00009888" value="0x1C733000" />
+        <register type="NOA" address="0x00009888" value="0x147400A6" />
+        <register type="NOA" address="0x00009888" value="0x10740000" />
+        <register type="NOA" address="0x00009888" value="0x0A740000" />
+        <register type="NOA" address="0x00009888" value="0x1C750080" />
+        <register type="NOA" address="0x00009888" value="0x12920086" />
+        <register type="NOA" address="0x00009888" value="0x20920000" />
+        <register type="NOA" address="0x00009888" value="0x10924000" />
+        <register type="NOA" address="0x00009888" value="0x1C930C00" />
+        <register type="NOA" address="0x00009888" value="0x109400A6" />
+        <register type="NOA" address="0x00009888" value="0x08940000" />
+        <register type="NOA" address="0x00009888" value="0x1C950008" />
+        <register type="NOA" address="0x00009888" value="0x0EB20086" />
+        <register type="NOA" address="0x00009888" value="0x20B20000" />
+        <register type="NOA" address="0x00009888" value="0x00B24000" />
+        <register type="NOA" address="0x00009888" value="0x10B38000" />
+        <register type="NOA" address="0x00009888" value="0x1CB30200" />
+        <register type="NOA" address="0x00009888" value="0x00B400A6" />
+        <register type="NOA" address="0x00009888" value="0x10B40000" />
+        <register type="NOA" address="0x00009888" value="0x18B58000" />
+        <register type="NOA" address="0x00009888" value="0x1E0F0028" />
+        <register type="NOA" address="0x00009888" value="0x14104000" />
+        <register type="NOA" address="0x00009888" value="0x16104000" />
+        <register type="NOA" address="0x00009888" value="0x2C024000" />
+        <register type="NOA" address="0x00009888" value="0x2E020001" />
+        <register type="NOA" address="0x00009888" value="0x2A03A500" />
+        <register type="NOA" address="0x00009888" value="0x18002000" />
+        <register type="NOA" address="0x00009888" value="0x36003248" />
+        <register type="NOA" address="0x00009888" value="0x380024DB" />
+        <register type="NOA" address="0x00009888" value="0x1A004000" />
+        <register type="NOA" address="0x00009888" value="0x1C004000" />
+        <register type="NOA" address="0x00009888" value="0x00014000" />
+        <register type="NOA" address="0x00009888" value="0x1A012000" />
+        <register type="NOA" address="0x00009888" value="0x1C012000" />
+        <register type="NOA" address="0x00009888" value="0x1E012000" />
+        <register type="NOA" address="0x00009888" value="0x2405C000" />
+        <register type="NOA" address="0x00009888" value="0x26050003" />
+        <register type="NOA" address="0x00009888" value="0x220500A0" />
+        <register type="NOA" address="0x00009888" value="0x24062800" />
+        <register type="NOA" address="0x00009888" value="0x140A8000" />
+        <register type="NOA" address="0x00009888" value="0x160A8000" />
+        <register type="NOA" address="0x00009888" value="0x180A8000" />
+        <register type="NOA" address="0x00009888" value="0x1A0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105005" />
+        <register type="NOA" address="0x00009888" value="0x5D101555" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14E000" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115005" />
+        <register type="NOA" address="0x00009888" value="0x61111555" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x47101600" />
+        <register type="NOA" address="0x00009888" value="0x4D101000" />
+        <register type="NOA" address="0x00009888" value="0x4F101603" />
+        <register type="NOA" address="0x00009888" value="0x51100003" />
+        <register type="NOA" address="0x00009888" value="0x53101404" />
+        <register type="NOA" address="0x00009888" value="0x55101111" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100005" />
+        <register type="NOA" address="0x00009888" value="0x49100511" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0xF0800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x30800000" />
+        <register type="OA" address="0x0000DC40" value="0x003F0000" />
+        <register type="OA" address="0x0000D940" value="0x00000018" />
+        <register type="OA" address="0x0000D944" value="0x0000FFFC" />
+        <register type="OA" address="0x0000DC00" value="0x00000018" />
+        <register type="OA" address="0x0000DC04" value="0x0000FFFC" />
+        <register type="OA" address="0x0000D948" value="0x00000060" />
+        <register type="OA" address="0x0000D94C" value="0x0000FFF3" />
+        <register type="OA" address="0x0000DC08" value="0x00000060" />
+        <register type="OA" address="0x0000DC0C" value="0x0000FFF3" />
+        <register type="OA" address="0x0000D950" value="0x00000180" />
+        <register type="OA" address="0x0000D954" value="0x0000FFCF" />
+        <register type="OA" address="0x0000DC10" value="0x00000180" />
+        <register type="OA" address="0x0000DC14" value="0x0000FFCF" />
+        <register type="OA" address="0x0000D958" value="0x00000600" />
+        <register type="OA" address="0x0000D95C" value="0x0000FF3F" />
+        <register type="OA" address="0x0000DC18" value="0x00000600" />
+        <register type="OA" address="0x0000DC1C" value="0x0000FF3F" />
+        <register type="OA" address="0x0000D960" value="0x00001800" />
+        <register type="OA" address="0x0000D964" value="0x0000FCFF" />
+        <register type="OA" address="0x0000DC20" value="0x00001800" />
+        <register type="OA" address="0x0000DC24" value="0x0000FCFF" />
+        <register type="OA" address="0x0000D968" value="0x00006000" />
+        <register type="OA" address="0x0000D96C" value="0x0000F3FF" />
+        <register type="OA" address="0x0000DC28" value="0x00006000" />
+        <register type="OA" address="0x0000DC2C" value="0x0000F3FF" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Sampler_2"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="sampler_2"
+       hw_config_guid="f47c6b97-fc10-4962-bb67-d623e9d6219b"
+       chipset="TGL"
+       symbol_name="Sampler_2"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 DualSubslice0 Sampler Output Ready"
+             description="The percentage of time in which slice0 dualsubslice0 sampler output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler00_output_ready"
+             units="percent"
+             symbol_name="Sampler00OutputReady"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="Slice0 DualSubslice1 Sampler Output Ready"
+             description="The percentage of time in which slice0 dualsubslice1 sampler output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler01_output_ready"
+             units="percent"
+             symbol_name="Sampler01OutputReady"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 DualSubslice2 Sampler Output Ready"
+             description="The percentage of time in which slice0 dualsubslice2 sampler output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler02_output_ready"
+             units="percent"
+             symbol_name="Sampler02OutputReady"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Slice0 DualSubslice3 Sampler Output Ready"
+             description="The percentage of time in which slice0 dualsubslice3 sampler output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler03_output_ready"
+             units="percent"
+             symbol_name="Sampler03OutputReady"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Slice0 DualSubslice4 Sampler Output Ready"
+             description="The percentage of time in which slice0 dualsubslice4 sampler output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler04_output_ready"
+             units="percent"
+             symbol_name="Sampler04OutputReady"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="Slice0 DualSubslice5 Sampler Output Ready"
+             description="The percentage of time in which slice0 dualsubslice5 sampler output is ready"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="sampler05_output_ready"
+             units="percent"
+             symbol_name="Sampler05OutputReady"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Sampler"
+             mdapi_hw_unit_type="subslice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x0C123E00" />
+        <register type="NOA" address="0x00009888" value="0x04143E00" />
+        <register type="NOA" address="0x00009888" value="0x0C323E00" />
+        <register type="NOA" address="0x00009888" value="0x04343E00" />
+        <register type="NOA" address="0x00009888" value="0x0C523E00" />
+        <register type="NOA" address="0x00009888" value="0x04543E00" />
+        <register type="NOA" address="0x00009888" value="0x0C723E00" />
+        <register type="NOA" address="0x00009888" value="0x04743E00" />
+        <register type="NOA" address="0x00009888" value="0x0C923E00" />
+        <register type="NOA" address="0x00009888" value="0x04943E00" />
+        <register type="NOA" address="0x00009888" value="0x0CB23E00" />
+        <register type="NOA" address="0x00009888" value="0x04B43E00" />
+        <register type="NOA" address="0x00009888" value="0x1C07C000" />
+        <register type="NOA" address="0x00009888" value="0x2407002B" />
+        <register type="NOA" address="0x00009888" value="0x04120033" />
+        <register type="NOA" address="0x00009888" value="0x20120000" />
+        <register type="NOA" address="0x00009888" value="0x02124000" />
+        <register type="NOA" address="0x00009888" value="0x12138000" />
+        <register type="NOA" address="0x00009888" value="0x14138000" />
+        <register type="NOA" address="0x00009888" value="0x02140013" />
+        <register type="NOA" address="0x00009888" value="0x10140000" />
+        <register type="NOA" address="0x00009888" value="0x00140000" />
+        <register type="NOA" address="0x00009888" value="0x1A150020" />
+        <register type="NOA" address="0x00009888" value="0x1E320033" />
+        <register type="NOA" address="0x00009888" value="0x20320000" />
+        <register type="NOA" address="0x00009888" value="0x1C324000" />
+        <register type="NOA" address="0x00009888" value="0x1E330003" />
+        <register type="NOA" address="0x00009888" value="0x1C340013" />
+        <register type="NOA" address="0x00009888" value="0x10340000" />
+        <register type="NOA" address="0x00009888" value="0x0E340000" />
+        <register type="NOA" address="0x00009888" value="0x1C358000" />
+        <register type="NOA" address="0x00009888" value="0x1A520033" />
+        <register type="NOA" address="0x00009888" value="0x20520000" />
+        <register type="NOA" address="0x00009888" value="0x18524000" />
+        <register type="NOA" address="0x00009888" value="0x1C53C000" />
+        <register type="NOA" address="0x00009888" value="0x18540013" />
+        <register type="NOA" address="0x00009888" value="0x10540000" />
+        <register type="NOA" address="0x00009888" value="0x0C540000" />
+        <register type="NOA" address="0x00009888" value="0x1C550800" />
+        <register type="NOA" address="0x00009888" value="0x16720033" />
+        <register type="NOA" address="0x00009888" value="0x20720000" />
+        <register type="NOA" address="0x00009888" value="0x14724000" />
+        <register type="NOA" address="0x00009888" value="0x1C733000" />
+        <register type="NOA" address="0x00009888" value="0x14740013" />
+        <register type="NOA" address="0x00009888" value="0x10740000" />
+        <register type="NOA" address="0x00009888" value="0x0A740000" />
+        <register type="NOA" address="0x00009888" value="0x1C750080" />
+        <register type="NOA" address="0x00009888" value="0x12920033" />
+        <register type="NOA" address="0x00009888" value="0x20920000" />
+        <register type="NOA" address="0x00009888" value="0x10924000" />
+        <register type="NOA" address="0x00009888" value="0x1C930C00" />
+        <register type="NOA" address="0x00009888" value="0x10940013" />
+        <register type="NOA" address="0x00009888" value="0x08940000" />
+        <register type="NOA" address="0x00009888" value="0x1C950008" />
+        <register type="NOA" address="0x00009888" value="0x0EB20033" />
+        <register type="NOA" address="0x00009888" value="0x20B20000" />
+        <register type="NOA" address="0x00009888" value="0x00B24000" />
+        <register type="NOA" address="0x00009888" value="0x10B38000" />
+        <register type="NOA" address="0x00009888" value="0x1CB30200" />
+        <register type="NOA" address="0x00009888" value="0x00B40013" />
+        <register type="NOA" address="0x00009888" value="0x10B40000" />
+        <register type="NOA" address="0x00009888" value="0x18B58000" />
+        <register type="NOA" address="0x00009888" value="0x1E0F0028" />
+        <register type="NOA" address="0x00009888" value="0x14104000" />
+        <register type="NOA" address="0x00009888" value="0x16104000" />
+        <register type="NOA" address="0x00009888" value="0x2C024000" />
+        <register type="NOA" address="0x00009888" value="0x2E020001" />
+        <register type="NOA" address="0x00009888" value="0x2A03A500" />
+        <register type="NOA" address="0x00009888" value="0x18002000" />
+        <register type="NOA" address="0x00009888" value="0x36003248" />
+        <register type="NOA" address="0x00009888" value="0x380024DB" />
+        <register type="NOA" address="0x00009888" value="0x1A004000" />
+        <register type="NOA" address="0x00009888" value="0x1C004000" />
+        <register type="NOA" address="0x00009888" value="0x00014000" />
+        <register type="NOA" address="0x00009888" value="0x1A012000" />
+        <register type="NOA" address="0x00009888" value="0x1C012000" />
+        <register type="NOA" address="0x00009888" value="0x1E012000" />
+        <register type="NOA" address="0x00009888" value="0x2405C000" />
+        <register type="NOA" address="0x00009888" value="0x26050003" />
+        <register type="NOA" address="0x00009888" value="0x220500A0" />
+        <register type="NOA" address="0x00009888" value="0x24062800" />
+        <register type="NOA" address="0x00009888" value="0x140A8000" />
+        <register type="NOA" address="0x00009888" value="0x160A8000" />
+        <register type="NOA" address="0x00009888" value="0x180A8000" />
+        <register type="NOA" address="0x00009888" value="0x1A0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105005" />
+        <register type="NOA" address="0x00009888" value="0x5D101555" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14E000" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115005" />
+        <register type="NOA" address="0x00009888" value="0x61111555" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x47101600" />
+        <register type="NOA" address="0x00009888" value="0x4D101000" />
+        <register type="NOA" address="0x00009888" value="0x4F101603" />
+        <register type="NOA" address="0x00009888" value="0x51100003" />
+        <register type="NOA" address="0x00009888" value="0x53101404" />
+        <register type="NOA" address="0x00009888" value="0x55101111" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100005" />
+        <register type="NOA" address="0x00009888" value="0x49100511" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0xF0800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x30800000" />
+        <register type="OA" address="0x0000DC40" value="0x003F0000" />
+        <register type="OA" address="0x0000D940" value="0x00000018" />
+        <register type="OA" address="0x0000D944" value="0x0000FFFC" />
+        <register type="OA" address="0x0000DC00" value="0x00000018" />
+        <register type="OA" address="0x0000DC04" value="0x0000FFFC" />
+        <register type="OA" address="0x0000D948" value="0x00000060" />
+        <register type="OA" address="0x0000D94C" value="0x0000FFF3" />
+        <register type="OA" address="0x0000DC08" value="0x00000060" />
+        <register type="OA" address="0x0000DC0C" value="0x0000FFF3" />
+        <register type="OA" address="0x0000D950" value="0x00000180" />
+        <register type="OA" address="0x0000D954" value="0x0000FFCF" />
+        <register type="OA" address="0x0000DC10" value="0x00000180" />
+        <register type="OA" address="0x0000DC14" value="0x0000FFCF" />
+        <register type="OA" address="0x0000D958" value="0x00000600" />
+        <register type="OA" address="0x0000D95C" value="0x0000FF3F" />
+        <register type="OA" address="0x0000DC18" value="0x00000600" />
+        <register type="OA" address="0x0000DC1C" value="0x0000FF3F" />
+        <register type="OA" address="0x0000D960" value="0x00001800" />
+        <register type="OA" address="0x0000D964" value="0x0000FCFF" />
+        <register type="OA" address="0x0000DC20" value="0x00001800" />
+        <register type="OA" address="0x0000DC24" value="0x0000FCFF" />
+        <register type="OA" address="0x0000D968" value="0x00006000" />
+        <register type="OA" address="0x0000D96C" value="0x0000F3FF" />
+        <register type="OA" address="0x0000DC28" value="0x00006000" />
+        <register type="OA" address="0x0000DC2C" value="0x0000F3FF" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="TDL_1"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="tdl_1"
+       hw_config_guid="2e49d25e-93e8-4e2b-b91b-51731f5fb315"
+       chipset="TGL"
+       symbol_name="TDL_1"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice1 Thread Dispatcher"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice1 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header01_ready"
+             units="percent"
+             symbol_name="ThreadHeader01Ready"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Non-PS Thread Ready For Dispatch on Slice0 DualSubslice2 Thread Dispatcher"
+             description="The percentage of time in which non-PS thread is ready for dispatch on slice0 dualsubslice2 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_ps_thread02_ready_for_dispatch"
+             units="percent"
+             symbol_name="NonPSThread02ReadyForDispatch"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice1 Thread Dispatcher Port 2"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice1 thread dispatcher port 2"
+             data_type="float"
+             max_equation="100"
+             equation="C 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header01_ready_port2"
+             units="percent"
+             symbol_name="ThreadHeader01ReadyPort2"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice1 Thread Dispatcher Port 3"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice1 thread dispatcher port 3"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header01_ready_port3"
+             units="percent"
+             symbol_name="ThreadHeader01ReadyPort3"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice1 Thread Dispatcher Port 0"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice1 thread dispatcher port 0"
+             data_type="float"
+             max_equation="100"
+             equation="C 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header01_ready_port0"
+             units="percent"
+             symbol_name="ThreadHeader01ReadyPort0"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice1 Thread Dispatcher Port 1"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice1 thread dispatcher port 1"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header01_ready_port1"
+             units="percent"
+             symbol_name="ThreadHeader01ReadyPort1"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Non-PS Thread Ready For Dispatch on Slice0 DualSubslice0 Thread Dispatcher"
+             description="The percentage of time in which non-PS thread is ready for dispatch on slice0 dualsubslice0 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_ps_thread00_ready_for_dispatch"
+             units="percent"
+             symbol_name="NonPSThread00ReadyForDispatch"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice0 Thread Dispatcher"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice0 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header00_ready"
+             units="percent"
+             symbol_name="ThreadHeader00Ready"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Non-PS Thread Ready For Dispatch on Slice0 DualSubslice3 Thread Dispatcher"
+             description="The percentage of time in which non-PS thread is ready for dispatch on slice0 dualsubslice3 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_ps_thread03_ready_for_dispatch"
+             units="percent"
+             symbol_name="NonPSThread03ReadyForDispatch"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="Non-PS Thread Ready For Dispatch on Slice0 DualSubslice5 Thread Dispatcher"
+             description="The percentage of time in which non-PS thread is ready for dispatch on slice0 dualsubslice5 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_ps_thread05_ready_for_dispatch"
+             units="percent"
+             symbol_name="NonPSThread05ReadyForDispatch"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Non-PS Thread Ready For Dispatch on Slice0 DualSubslice4 Thread Dispatcher"
+             description="The percentage of time in which non-PS thread is ready for dispatch on slice0 dualsubslice4 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_ps_thread04_ready_for_dispatch"
+             units="percent"
+             symbol_name="NonPSThread04ReadyForDispatch"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Non-PS Thread Ready For Dispatch on Slice0 DualSubslice1 Thread Dispatcher"
+             description="The percentage of time in which non-PS thread is ready for dispatch on slice0 dualsubslice1 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="non_ps_thread01_ready_for_dispatch"
+             units="percent"
+             symbol_name="NonPSThread01ReadyForDispatch"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice0 Thread Dispatcher Port 3"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice0 thread dispatcher port 3"
+             data_type="float"
+             max_equation="100"
+             equation="C 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header00_ready_port3"
+             units="percent"
+             symbol_name="ThreadHeader00ReadyPort3"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice0 Thread Dispatcher Port 2"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice0 thread dispatcher port 2"
+             data_type="float"
+             max_equation="100"
+             equation="C 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header00_ready_port2"
+             units="percent"
+             symbol_name="ThreadHeader00ReadyPort2"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice0 Thread Dispatcher Port 1"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice0 thread dispatcher port 1"
+             data_type="float"
+             max_equation="100"
+             equation="C 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header00_ready_port1"
+             units="percent"
+             symbol_name="ThreadHeader00ReadyPort1"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice0 Thread Dispatcher Port 0"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice0 thread dispatcher port 0"
+             data_type="float"
+             max_equation="100"
+             equation="C 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header00_ready_port0"
+             units="percent"
+             symbol_name="ThreadHeader00ReadyPort0"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x2611001C" />
+        <register type="NOA" address="0x00009888" value="0x2631001C" />
+        <register type="NOA" address="0x00009888" value="0x2651001C" />
+        <register type="NOA" address="0x00009888" value="0x2671001C" />
+        <register type="NOA" address="0x00009888" value="0x2691001C" />
+        <register type="NOA" address="0x00009888" value="0x26B1001C" />
+        <register type="NOA" address="0x00009888" value="0x1C07C000" />
+        <register type="NOA" address="0x00009888" value="0x24070002" />
+        <register type="NOA" address="0x00009888" value="0x16110103" />
+        <register type="NOA" address="0x00009888" value="0x1C110104" />
+        <register type="NOA" address="0x00009888" value="0x1E110105" />
+        <register type="NOA" address="0x00009888" value="0x02110106" />
+        <register type="NOA" address="0x00009888" value="0x04110107" />
+        <register type="NOA" address="0x00009888" value="0x10110000" />
+        <register type="NOA" address="0x00009888" value="0x0A110000" />
+        <register type="NOA" address="0x00009888" value="0x0E110000" />
+        <register type="NOA" address="0x00009888" value="0x00110000" />
+        <register type="NOA" address="0x00009888" value="0x16128000" />
+        <register type="NOA" address="0x00009888" value="0x1C128000" />
+        <register type="NOA" address="0x00009888" value="0x1E128000" />
+        <register type="NOA" address="0x00009888" value="0x02128000" />
+        <register type="NOA" address="0x00009888" value="0x04128000" />
+        <register type="NOA" address="0x00009888" value="0x1C132000" />
+        <register type="NOA" address="0x00009888" value="0x1E130003" />
+        <register type="NOA" address="0x00009888" value="0x12138000" />
+        <register type="NOA" address="0x00009888" value="0x14138000" />
+        <register type="NOA" address="0x00009888" value="0x14310103" />
+        <register type="NOA" address="0x00009888" value="0x06310104" />
+        <register type="NOA" address="0x00009888" value="0x08310105" />
+        <register type="NOA" address="0x00009888" value="0x0A310106" />
+        <register type="NOA" address="0x00009888" value="0x0C310107" />
+        <register type="NOA" address="0x00009888" value="0x10310000" />
+        <register type="NOA" address="0x00009888" value="0x02310000" />
+        <register type="NOA" address="0x00009888" value="0x04310000" />
+        <register type="NOA" address="0x00009888" value="0x14328000" />
+        <register type="NOA" address="0x00009888" value="0x06328000" />
+        <register type="NOA" address="0x00009888" value="0x08328000" />
+        <register type="NOA" address="0x00009888" value="0x0A328000" />
+        <register type="NOA" address="0x00009888" value="0x0C328000" />
+        <register type="NOA" address="0x00009888" value="0x1C331100" />
+        <register type="NOA" address="0x00009888" value="0x16338000" />
+        <register type="NOA" address="0x00009888" value="0x18338000" />
+        <register type="NOA" address="0x00009888" value="0x1A338000" />
+        <register type="NOA" address="0x00009888" value="0x12510103" />
+        <register type="NOA" address="0x00009888" value="0x10510000" />
+        <register type="NOA" address="0x00009888" value="0x08510000" />
+        <register type="NOA" address="0x00009888" value="0x12528000" />
+        <register type="NOA" address="0x00009888" value="0x1C530800" />
+        <register type="NOA" address="0x00009888" value="0x10710103" />
+        <register type="NOA" address="0x00009888" value="0x08710000" />
+        <register type="NOA" address="0x00009888" value="0x10728000" />
+        <register type="NOA" address="0x00009888" value="0x1C730400" />
+        <register type="NOA" address="0x00009888" value="0x0E910103" />
+        <register type="NOA" address="0x00009888" value="0x10910000" />
+        <register type="NOA" address="0x00009888" value="0x06910000" />
+        <register type="NOA" address="0x00009888" value="0x0E928000" />
+        <register type="NOA" address="0x00009888" value="0x1C930200" />
+        <register type="NOA" address="0x00009888" value="0x00B10103" />
+        <register type="NOA" address="0x00009888" value="0x10B10000" />
+        <register type="NOA" address="0x00009888" value="0x00B28000" />
+        <register type="NOA" address="0x00009888" value="0x10B38000" />
+        <register type="NOA" address="0x00009888" value="0x1C0F8000" />
+        <register type="NOA" address="0x00009888" value="0x10104000" />
+        <register type="NOA" address="0x00009888" value="0x10024000" />
+        <register type="NOA" address="0x00009888" value="0x1C032000" />
+        <register type="NOA" address="0x00009888" value="0x1E034000" />
+        <register type="NOA" address="0x00009888" value="0x18002000" />
+        <register type="NOA" address="0x00009888" value="0x360026CA" />
+        <register type="NOA" address="0x00009888" value="0x38002402" />
+        <register type="NOA" address="0x00009888" value="0x1A004000" />
+        <register type="NOA" address="0x00009888" value="0x1C004000" />
+        <register type="NOA" address="0x00009888" value="0x1E004000" />
+        <register type="NOA" address="0x00009888" value="0x34001200" />
+        <register type="NOA" address="0x00009888" value="0x00014000" />
+        <register type="NOA" address="0x00009888" value="0x1A012000" />
+        <register type="NOA" address="0x00009888" value="0x240582C0" />
+        <register type="NOA" address="0x00009888" value="0x26050002" />
+        <register type="NOA" address="0x00009888" value="0x2205FFA0" />
+        <register type="NOA" address="0x00009888" value="0x24060020" />
+        <register type="NOA" address="0x00009888" value="0x100A8000" />
+        <register type="NOA" address="0x00009888" value="0x120A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105555" />
+        <register type="NOA" address="0x00009888" value="0x5D101415" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14FC00" />
+        <register type="NOA" address="0x00009888" value="0x1D140033" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115555" />
+        <register type="NOA" address="0x00009888" value="0x61111415" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x47101600" />
+        <register type="NOA" address="0x00009888" value="0x4D100111" />
+        <register type="NOA" address="0x00009888" value="0x4F100006" />
+        <register type="NOA" address="0x00009888" value="0x51101114" />
+        <register type="NOA" address="0x00009888" value="0x53100001" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x55101110" />
+        <register type="NOA" address="0x00009888" value="0x57100001" />
+        <register type="NOA" address="0x00009888" value="0x49101111" />
+        <register type="NOA" address="0x00009888" value="0x4B101111" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0xF0800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0xF0800000" />
+        <register type="OA" address="0x0000DC40" value="0x00FF0000" />
+        <register type="OA" address="0x0000D940" value="0x00000002" />
+        <register type="OA" address="0x0000D944" value="0x0000FFFE" />
+        <register type="OA" address="0x0000DC00" value="0x00000002" />
+        <register type="OA" address="0x0000DC04" value="0x0000FFFE" />
+        <register type="OA" address="0x0000D948" value="0x00000002" />
+        <register type="OA" address="0x0000D94C" value="0x0000FFFD" />
+        <register type="OA" address="0x0000DC08" value="0x00000002" />
+        <register type="OA" address="0x0000DC0C" value="0x0000FFFD" />
+        <register type="OA" address="0x0000D950" value="0x00000002" />
+        <register type="OA" address="0x0000D954" value="0x0000FFFB" />
+        <register type="OA" address="0x0000DC10" value="0x00000002" />
+        <register type="OA" address="0x0000DC14" value="0x0000FFFB" />
+        <register type="OA" address="0x0000D958" value="0x00000002" />
+        <register type="OA" address="0x0000D95C" value="0x0000FFF7" />
+        <register type="OA" address="0x0000DC18" value="0x00000002" />
+        <register type="OA" address="0x0000DC1C" value="0x0000FFF7" />
+        <register type="OA" address="0x0000D960" value="0x00000002" />
+        <register type="OA" address="0x0000D964" value="0x0000FFEF" />
+        <register type="OA" address="0x0000DC20" value="0x00000002" />
+        <register type="OA" address="0x0000DC24" value="0x0000FFEF" />
+        <register type="OA" address="0x0000D968" value="0x00000002" />
+        <register type="OA" address="0x0000D96C" value="0x0000FFDF" />
+        <register type="OA" address="0x0000DC28" value="0x00000002" />
+        <register type="OA" address="0x0000DC2C" value="0x0000FFDF" />
+        <register type="OA" address="0x0000D970" value="0x00007800" />
+        <register type="OA" address="0x0000D974" value="0x0000F0FF" />
+        <register type="OA" address="0x0000DC30" value="0x00007800" />
+        <register type="OA" address="0x0000DC34" value="0x0000F0FF" />
+        <register type="OA" address="0x0000D978" value="0x00078000" />
+        <register type="OA" address="0x0000D97C" value="0x00000FFF" />
+        <register type="OA" address="0x0000DC38" value="0x00078000" />
+        <register type="OA" address="0x0000DC3C" value="0x00000FFF" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="TDL_2"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="tdl_2"
+       hw_config_guid="2a42ff25-99b1-4048-a121-f0664ed42c90"
+       chipset="TGL"
+       symbol_name="TDL_2"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice5 Thread Dispatcher Port 1"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice5 thread dispatcher port 1"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header05_ready_port1"
+             units="percent"
+             symbol_name="ThreadHeader05ReadyPort1"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="PS Thread Ready For Dispatch on Slice0 Dualsubslice0 Thread Dispatcher"
+             description="The percentage of time in which PS thread is ready for dispatch on slice0 dualsubslice0 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_thread00_ready_for_dispatch"
+             units="percent"
+             symbol_name="PSThread00ReadyForDispatch"
+             availability="$DualSubsliceMask 1 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="PS Thread Ready For Dispatch on Slice0 Dualsubslice3 Thread Dispatcher"
+             description="The percentage of time in which PS thread is ready for dispatch on slice0 dualsubslice3 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_thread03_ready_for_dispatch"
+             units="percent"
+             symbol_name="PSThread03ReadyForDispatch"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="PS Thread Ready For Dispatch on Slice0 Dualsubslice1 Thread Dispatcher"
+             description="The percentage of time in which PS thread is ready for dispatch on slice0 dualsubslice1 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_thread01_ready_for_dispatch"
+             units="percent"
+             symbol_name="PSThread01ReadyForDispatch"
+             availability="$DualSubsliceMask 2 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="PS Thread Ready For Dispatch on Slice0 Dualsubslice2 Thread Dispatcher"
+             description="The percentage of time in which PS thread is ready for dispatch on slice0 dualsubslice2 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_thread02_ready_for_dispatch"
+             units="percent"
+             symbol_name="PSThread02ReadyForDispatch"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice5 Thread Dispatcher Port 3"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice5 thread dispatcher port 3"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header05_ready_port3"
+             units="percent"
+             symbol_name="ThreadHeader05ReadyPort3"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice5 Thread Dispatcher Port 0"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice5 thread dispatcher port 0"
+             data_type="float"
+             max_equation="100"
+             equation="C 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header05_ready_port0"
+             units="percent"
+             symbol_name="ThreadHeader05ReadyPort0"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="PS Thread Ready For Dispatch on Slice0 Dualsubslice5 Thread Dispatcher"
+             description="The percentage of time in which PS thread is ready for dispatch on slice0 dualsubslice5 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_thread05_ready_for_dispatch"
+             units="percent"
+             symbol_name="PSThread05ReadyForDispatch"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice5 Thread Dispatcher"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice5 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header05_ready"
+             units="percent"
+             symbol_name="ThreadHeader05Ready"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice5 Thread Dispatcher Port 2"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice5 thread dispatcher port 2"
+             data_type="float"
+             max_equation="100"
+             equation="C 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header05_ready_port2"
+             units="percent"
+             symbol_name="ThreadHeader05ReadyPort2"
+             availability="$DualSubsliceMask 32 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="PS Thread Ready For Dispatch on Slice0 Dualsubslice4 Thread Dispatcher"
+             description="The percentage of time in which PS thread is ready for dispatch on slice0 dualsubslice4 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="ps_thread04_ready_for_dispatch"
+             units="percent"
+             symbol_name="PSThread04ReadyForDispatch"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x24110340" />
+        <register type="NOA" address="0x00009888" value="0x24310340" />
+        <register type="NOA" address="0x00009888" value="0x24510340" />
+        <register type="NOA" address="0x00009888" value="0x24710340" />
+        <register type="NOA" address="0x00009888" value="0x24910340" />
+        <register type="NOA" address="0x00009888" value="0x24B10340" />
+        <register type="NOA" address="0x00009888" value="0x26B1001C" />
+        <register type="NOA" address="0x00009888" value="0x1C07C000" />
+        <register type="NOA" address="0x00009888" value="0x2407002B" />
+        <register type="NOA" address="0x00009888" value="0x2207FF00" />
+        <register type="NOA" address="0x00009888" value="0x021100F3" />
+        <register type="NOA" address="0x00009888" value="0x041100F2" />
+        <register type="NOA" address="0x00009888" value="0x10110000" />
+        <register type="NOA" address="0x00009888" value="0x00110000" />
+        <register type="NOA" address="0x00009888" value="0x02128000" />
+        <register type="NOA" address="0x00009888" value="0x04128000" />
+        <register type="NOA" address="0x00009888" value="0x12138000" />
+        <register type="NOA" address="0x00009888" value="0x14138000" />
+        <register type="NOA" address="0x00009888" value="0x1C3100F3" />
+        <register type="NOA" address="0x00009888" value="0x1E3100F2" />
+        <register type="NOA" address="0x00009888" value="0x10310000" />
+        <register type="NOA" address="0x00009888" value="0x0E310000" />
+        <register type="NOA" address="0x00009888" value="0x1C328000" />
+        <register type="NOA" address="0x00009888" value="0x1E328000" />
+        <register type="NOA" address="0x00009888" value="0x1E330003" />
+        <register type="NOA" address="0x00009888" value="0x185100F3" />
+        <register type="NOA" address="0x00009888" value="0x1A5100F2" />
+        <register type="NOA" address="0x00009888" value="0x10510000" />
+        <register type="NOA" address="0x00009888" value="0x0C510000" />
+        <register type="NOA" address="0x00009888" value="0x18528000" />
+        <register type="NOA" address="0x00009888" value="0x1A528000" />
+        <register type="NOA" address="0x00009888" value="0x1C53C000" />
+        <register type="NOA" address="0x00009888" value="0x147100F3" />
+        <register type="NOA" address="0x00009888" value="0x167100F2" />
+        <register type="NOA" address="0x00009888" value="0x10710000" />
+        <register type="NOA" address="0x00009888" value="0x0A710000" />
+        <register type="NOA" address="0x00009888" value="0x14728000" />
+        <register type="NOA" address="0x00009888" value="0x16728000" />
+        <register type="NOA" address="0x00009888" value="0x1C733000" />
+        <register type="NOA" address="0x00009888" value="0x109100F3" />
+        <register type="NOA" address="0x00009888" value="0x129100F2" />
+        <register type="NOA" address="0x00009888" value="0x08910000" />
+        <register type="NOA" address="0x00009888" value="0x10928000" />
+        <register type="NOA" address="0x00009888" value="0x12928000" />
+        <register type="NOA" address="0x00009888" value="0x1C930C00" />
+        <register type="NOA" address="0x00009888" value="0x00B100F3" />
+        <register type="NOA" address="0x00009888" value="0x0EB100F2" />
+        <register type="NOA" address="0x00009888" value="0x06B10104" />
+        <register type="NOA" address="0x00009888" value="0x08B10105" />
+        <register type="NOA" address="0x00009888" value="0x0AB10106" />
+        <register type="NOA" address="0x00009888" value="0x0CB10107" />
+        <register type="NOA" address="0x00009888" value="0x10B10000" />
+        <register type="NOA" address="0x00009888" value="0x02B10000" />
+        <register type="NOA" address="0x00009888" value="0x04B10000" />
+        <register type="NOA" address="0x00009888" value="0x00B28000" />
+        <register type="NOA" address="0x00009888" value="0x0EB28000" />
+        <register type="NOA" address="0x00009888" value="0x06B28000" />
+        <register type="NOA" address="0x00009888" value="0x08B28000" />
+        <register type="NOA" address="0x00009888" value="0x0AB28000" />
+        <register type="NOA" address="0x00009888" value="0x0CB28000" />
+        <register type="NOA" address="0x00009888" value="0x10B38000" />
+        <register type="NOA" address="0x00009888" value="0x1CB30300" />
+        <register type="NOA" address="0x00009888" value="0x16B38000" />
+        <register type="NOA" address="0x00009888" value="0x18B38000" />
+        <register type="NOA" address="0x00009888" value="0x1AB38000" />
+        <register type="NOA" address="0x00009888" value="0x1E0F0028" />
+        <register type="NOA" address="0x00009888" value="0x14104000" />
+        <register type="NOA" address="0x00009888" value="0x16104000" />
+        <register type="NOA" address="0x00009888" value="0x2C024000" />
+        <register type="NOA" address="0x00009888" value="0x2E020001" />
+        <register type="NOA" address="0x00009888" value="0x2A03A500" />
+        <register type="NOA" address="0x00009888" value="0x18002000" />
+        <register type="NOA" address="0x00009888" value="0x36003249" />
+        <register type="NOA" address="0x00009888" value="0x380024DB" />
+        <register type="NOA" address="0x00009888" value="0x1A004000" />
+        <register type="NOA" address="0x00009888" value="0x1C004000" />
+        <register type="NOA" address="0x00009888" value="0x1E002000" />
+        <register type="NOA" address="0x00009888" value="0x34000900" />
+        <register type="NOA" address="0x00009888" value="0x00014000" />
+        <register type="NOA" address="0x00009888" value="0x1A012000" />
+        <register type="NOA" address="0x00009888" value="0x1C012000" />
+        <register type="NOA" address="0x00009888" value="0x1E012000" />
+        <register type="NOA" address="0x00009888" value="0x06014000" />
+        <register type="NOA" address="0x00009888" value="0x08014000" />
+        <register type="NOA" address="0x00009888" value="0x0A014000" />
+        <register type="NOA" address="0x00009888" value="0x18012000" />
+        <register type="NOA" address="0x00009888" value="0x2405C000" />
+        <register type="NOA" address="0x00009888" value="0x26050003" />
+        <register type="NOA" address="0x00009888" value="0x220500A0" />
+        <register type="NOA" address="0x00009888" value="0x24062800" />
+        <register type="NOA" address="0x00009888" value="0x140A8000" />
+        <register type="NOA" address="0x00009888" value="0x160A8000" />
+        <register type="NOA" address="0x00009888" value="0x180A8000" />
+        <register type="NOA" address="0x00009888" value="0x1A0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x41104000" />
+        <register type="NOA" address="0x00009888" value="0x5B105555" />
+        <register type="NOA" address="0x00009888" value="0x5D101555" />
+        <register type="NOA" address="0x00009888" value="0x11148000" />
+        <register type="NOA" address="0x00009888" value="0x1B14FC00" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x4B112000" />
+        <register type="NOA" address="0x00009888" value="0x5F115555" />
+        <register type="NOA" address="0x00009888" value="0x61111555" />
+        <register type="NOA" address="0x00009888" value="0x01128000" />
+        <register type="NOA" address="0x00009888" value="0x0F128000" />
+        <register type="NOA" address="0x00009888" value="0x11128000" />
+        <register type="NOA" address="0x00009888" value="0x13128000" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x47101600" />
+        <register type="NOA" address="0x00009888" value="0x4D100606" />
+        <register type="NOA" address="0x00009888" value="0x4F100606" />
+        <register type="NOA" address="0x00009888" value="0x51100006" />
+        <register type="NOA" address="0x00009888" value="0x53100400" />
+        <register type="NOA" address="0x00009888" value="0x55101114" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100001" />
+        <register type="NOA" address="0x00009888" value="0x49100111" />
+        <register type="NOA" address="0x00009888" value="0x4B100606" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0xF0800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x70800000" />
+        <register type="OA" address="0x0000DC40" value="0x007F0000" />
+        <register type="OA" address="0x0000D940" value="0x00000000" />
+        <register type="OA" address="0x0000D944" value="0x0000FFFC" />
+        <register type="OA" address="0x0000DC00" value="0x00000000" />
+        <register type="OA" address="0x0000DC04" value="0x0000FFFC" />
+        <register type="OA" address="0x0000D948" value="0x00000000" />
+        <register type="OA" address="0x0000D94C" value="0x0000FFF3" />
+        <register type="OA" address="0x0000DC08" value="0x00000000" />
+        <register type="OA" address="0x0000DC0C" value="0x0000FFF3" />
+        <register type="OA" address="0x0000D950" value="0x00000000" />
+        <register type="OA" address="0x0000D954" value="0x0000FFCF" />
+        <register type="OA" address="0x0000DC10" value="0x00000000" />
+        <register type="OA" address="0x0000DC14" value="0x0000FFCF" />
+        <register type="OA" address="0x0000D958" value="0x00000000" />
+        <register type="OA" address="0x0000D95C" value="0x0000FF3F" />
+        <register type="OA" address="0x0000DC18" value="0x00000000" />
+        <register type="OA" address="0x0000DC1C" value="0x0000FF3F" />
+        <register type="OA" address="0x0000D960" value="0x00000000" />
+        <register type="OA" address="0x0000D964" value="0x0000FCFF" />
+        <register type="OA" address="0x0000DC20" value="0x00000000" />
+        <register type="OA" address="0x0000DC24" value="0x0000FCFF" />
+        <register type="OA" address="0x0000D968" value="0x00000000" />
+        <register type="OA" address="0x0000D96C" value="0x0000F3FF" />
+        <register type="OA" address="0x0000DC28" value="0x00000000" />
+        <register type="OA" address="0x0000DC2C" value="0x0000F3FF" />
+        <register type="OA" address="0x0000D970" value="0x00078000" />
+        <register type="OA" address="0x0000D974" value="0x00000FFF" />
+        <register type="OA" address="0x0000DC30" value="0x00078000" />
+        <register type="OA" address="0x0000DC34" value="0x00000FFF" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="TDL_3"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="tdl_3"
+       hw_config_guid="b763fa13-834e-4468-bba6-5f0d40db9813"
+       chipset="TGL"
+       symbol_name="TDL_3"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice3 Thread Dispatcher"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice3 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header03_ready"
+             units="percent"
+             symbol_name="ThreadHeader03Ready"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice3 Thread Dispatcher Port 3"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice3 thread dispatcher port 3"
+             data_type="float"
+             max_equation="100"
+             equation="C 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header03_ready_port3"
+             units="percent"
+             symbol_name="ThreadHeader03ReadyPort3"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice3 Thread Dispatcher Port 0"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice3 thread dispatcher port 0"
+             data_type="float"
+             max_equation="100"
+             equation="C 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header03_ready_port0"
+             units="percent"
+             symbol_name="ThreadHeader03ReadyPort0"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice3 Thread Dispatcher Port 1"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice3 thread dispatcher port 1"
+             data_type="float"
+             max_equation="100"
+             equation="C 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header03_ready_port1"
+             units="percent"
+             symbol_name="ThreadHeader03ReadyPort1"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice3 Thread Dispatcher Port 2"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice3 thread dispatcher port 2"
+             data_type="float"
+             max_equation="100"
+             equation="C 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header03_ready_port2"
+             units="percent"
+             symbol_name="ThreadHeader03ReadyPort2"
+             availability="$DualSubsliceMask 8 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice4 Thread Dispatcher Port 3"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice4 thread dispatcher port 3"
+             data_type="float"
+             max_equation="100"
+             equation="B 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header04_ready_port3"
+             units="percent"
+             symbol_name="ThreadHeader04ReadyPort3"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice4 Thread Dispatcher Port 2"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice4 thread dispatcher port 2"
+             data_type="float"
+             max_equation="100"
+             equation="B 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header04_ready_port2"
+             units="percent"
+             symbol_name="ThreadHeader04ReadyPort2"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice4 Thread Dispatcher Port 1"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice4 thread dispatcher port 1"
+             data_type="float"
+             max_equation="100"
+             equation="B 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header04_ready_port1"
+             units="percent"
+             symbol_name="ThreadHeader04ReadyPort1"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice4 Thread Dispatcher Port 0"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice4 thread dispatcher port 0"
+             data_type="float"
+             max_equation="100"
+             equation="B 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header04_ready_port0"
+             units="percent"
+             symbol_name="ThreadHeader04ReadyPort0"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice4 Thread Dispatcher"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice4 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header04_ready"
+             units="percent"
+             symbol_name="ThreadHeader04Ready"
+             availability="$DualSubsliceMask 16 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice2 Thread Dispatcher Port 1"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice2 thread dispatcher port 1"
+             data_type="float"
+             max_equation="100"
+             equation="C 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header02_ready_port1"
+             units="percent"
+             symbol_name="ThreadHeader02ReadyPort1"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice2 Thread Dispatcher Port 0"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice2 thread dispatcher port 0"
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header02_ready_port0"
+             units="percent"
+             symbol_name="ThreadHeader02ReadyPort0"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice2 Thread Dispatcher Port 3"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice2 thread dispatcher port 3"
+             data_type="float"
+             max_equation="100"
+             equation="C 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header02_ready_port3"
+             units="percent"
+             symbol_name="ThreadHeader02ReadyPort3"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice2 Thread Dispatcher Port 2"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice2 thread dispatcher port 2"
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header02_ready_port2"
+             units="percent"
+             symbol_name="ThreadHeader02ReadyPort2"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="Thread Header Ready on Slice0 DualSubslice2 Thread Dispatcher"
+             description="The percentage of time in which thread header is ready on slice0 dualsubslice2 thread dispatcher"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="thread_header02_ready"
+             units="percent"
+             symbol_name="ThreadHeader02Ready"
+             availability="$DualSubsliceMask 4 AND"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview Frame Batch Draw"
+             mdapi_group="GPU/Thread Dispatcher"
+             mdapi_hw_unit_type="dualsubslice"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x2651001C" />
+        <register type="NOA" address="0x00009888" value="0x2671001C" />
+        <register type="NOA" address="0x00009888" value="0x2691001C" />
+        <register type="NOA" address="0x00009888" value="0x24072A80" />
+        <register type="NOA" address="0x00009888" value="0x06510107" />
+        <register type="NOA" address="0x00009888" value="0x08510106" />
+        <register type="NOA" address="0x00009888" value="0x0A510105" />
+        <register type="NOA" address="0x00009888" value="0x0C510104" />
+        <register type="NOA" address="0x00009888" value="0x10510000" />
+        <register type="NOA" address="0x00009888" value="0x02510000" />
+        <register type="NOA" address="0x00009888" value="0x04510000" />
+        <register type="NOA" address="0x00009888" value="0x06528000" />
+        <register type="NOA" address="0x00009888" value="0x08528000" />
+        <register type="NOA" address="0x00009888" value="0x0A528000" />
+        <register type="NOA" address="0x00009888" value="0x0C528000" />
+        <register type="NOA" address="0x00009888" value="0x16538000" />
+        <register type="NOA" address="0x00009888" value="0x18538000" />
+        <register type="NOA" address="0x00009888" value="0x1A538000" />
+        <register type="NOA" address="0x00009888" value="0x1C530100" />
+        <register type="NOA" address="0x00009888" value="0x1C710107" />
+        <register type="NOA" address="0x00009888" value="0x1E710106" />
+        <register type="NOA" address="0x00009888" value="0x02710105" />
+        <register type="NOA" address="0x00009888" value="0x04710104" />
+        <register type="NOA" address="0x00009888" value="0x10710000" />
+        <register type="NOA" address="0x00009888" value="0x0E710000" />
+        <register type="NOA" address="0x00009888" value="0x00710000" />
+        <register type="NOA" address="0x00009888" value="0x1C728000" />
+        <register type="NOA" address="0x00009888" value="0x1E728000" />
+        <register type="NOA" address="0x00009888" value="0x02728000" />
+        <register type="NOA" address="0x00009888" value="0x04728000" />
+        <register type="NOA" address="0x00009888" value="0x1E730003" />
+        <register type="NOA" address="0x00009888" value="0x12738000" />
+        <register type="NOA" address="0x00009888" value="0x14738000" />
+        <register type="NOA" address="0x00009888" value="0x14910107" />
+        <register type="NOA" address="0x00009888" value="0x16910106" />
+        <register type="NOA" address="0x00009888" value="0x18910105" />
+        <register type="NOA" address="0x00009888" value="0x1A910104" />
+        <register type="NOA" address="0x00009888" value="0x10910000" />
+        <register type="NOA" address="0x00009888" value="0x0A910000" />
+        <register type="NOA" address="0x00009888" value="0x0C910000" />
+        <register type="NOA" address="0x00009888" value="0x14928000" />
+        <register type="NOA" address="0x00009888" value="0x16928000" />
+        <register type="NOA" address="0x00009888" value="0x18928000" />
+        <register type="NOA" address="0x00009888" value="0x1A928000" />
+        <register type="NOA" address="0x00009888" value="0x1C93F000" />
+        <register type="NOA" address="0x00009888" value="0x1E0F2800" />
+        <register type="NOA" address="0x00009888" value="0x1C0F000A" />
+        <register type="NOA" address="0x00009888" value="0x1C104000" />
+        <register type="NOA" address="0x00009888" value="0x1E104000" />
+        <register type="NOA" address="0x00009888" value="0x02104000" />
+        <register type="NOA" address="0x00009888" value="0x04104000" />
+        <register type="NOA" address="0x00009888" value="0x2E020140" />
+        <register type="NOA" address="0x00009888" value="0x02024000" />
+        <register type="NOA" address="0x00009888" value="0x04024000" />
+        <register type="NOA" address="0x00009888" value="0x2C030005" />
+        <register type="NOA" address="0x00009888" value="0x02034000" />
+        <register type="NOA" address="0x00009888" value="0x04034000" />
+        <register type="NOA" address="0x00009888" value="0x06038000" />
+        <register type="NOA" address="0x00009888" value="0x08038000" />
+        <register type="NOA" address="0x00009888" value="0x0A038000" />
+        <register type="NOA" address="0x00009888" value="0x18034000" />
+        <register type="NOA" address="0x00009888" value="0x36001003" />
+        <register type="NOA" address="0x00009888" value="0x38003649" />
+        <register type="NOA" address="0x00009888" value="0x1A006000" />
+        <register type="NOA" address="0x00009888" value="0x1C006000" />
+        <register type="NOA" address="0x00009888" value="0x1E006000" />
+        <register type="NOA" address="0x00009888" value="0x34001B00" />
+        <register type="NOA" address="0x00009888" value="0x2A015500" />
+        <register type="NOA" address="0x00009888" value="0x2206AA00" />
+        <register type="NOA" address="0x00009888" value="0x1C0A8000" />
+        <register type="NOA" address="0x00009888" value="0x1E0A8000" />
+        <register type="NOA" address="0x00009888" value="0x020A8000" />
+        <register type="NOA" address="0x00009888" value="0x040A8000" />
+        <register type="NOA" address="0x00009888" value="0x060A8000" />
+        <register type="NOA" address="0x00009888" value="0x080A8000" />
+        <register type="NOA" address="0x00009888" value="0x0A0A8000" />
+        <register type="NOA" address="0x00009888" value="0x0C0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x5D101554" />
+        <register type="NOA" address="0x00009888" value="0x5B100555" />
+        <register type="NOA" address="0x00009888" value="0x1D14003F" />
+        <register type="NOA" address="0x00009888" value="0x13148000" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x17148000" />
+        <register type="NOA" address="0x00009888" value="0x1B141C00" />
+        <register type="NOA" address="0x00009888" value="0x61111554" />
+        <register type="NOA" address="0x00009888" value="0x5F110555" />
+        <register type="NOA" address="0x00009888" value="0x15128000" />
+        <register type="NOA" address="0x00009888" value="0x17128000" />
+        <register type="NOA" address="0x00009888" value="0x19128000" />
+        <register type="NOA" address="0x00009888" value="0x1B128000" />
+        <register type="NOA" address="0x00009888" value="0x1D128000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x03128000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x07128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x0D128000" />
+        <register type="NOA" address="0x00009888" value="0x51100600" />
+        <register type="NOA" address="0x00009888" value="0x53100606" />
+        <register type="NOA" address="0x00009888" value="0x55100006" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009888" value="0x57100000" />
+        <register type="NOA" address="0x00009888" value="0x47100000" />
+        <register type="NOA" address="0x00009888" value="0x49100000" />
+        <register type="NOA" address="0x00009888" value="0x4B100404" />
+        <register type="NOA" address="0x00009888" value="0x4D100404" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x70800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00070000" />
+        <register type="OA" address="0x0000D940" value="0x00078000" />
+        <register type="OA" address="0x0000D944" value="0x00000FFF" />
+        <register type="OA" address="0x0000DC00" value="0x00078000" />
+        <register type="OA" address="0x0000DC04" value="0x00000FFF" />
+        <register type="OA" address="0x0000D948" value="0x00007800" />
+        <register type="OA" address="0x0000D94C" value="0x0000F0FF" />
+        <register type="OA" address="0x0000DC08" value="0x00007800" />
+        <register type="OA" address="0x0000DC0C" value="0x0000F0FF" />
+        <register type="OA" address="0x0000D950" value="0x00000780" />
+        <register type="OA" address="0x0000D954" value="0x0000FF0F" />
+        <register type="OA" address="0x0000DC10" value="0x00000780" />
+        <register type="OA" address="0x0000DC14" value="0x0000FF0F" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="GpuBusyness"
+       mdapi_supported_apis="OGL OGL4 OCL MEDIA IO BB"
+       underscore_name="gpu_busyness"
+       hw_config_guid="cc935a3e-8d96-4b47-bc46-3d84247e9a3a"
+       chipset="TGL"
+       symbol_name="GpuBusyness"
+       >
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="EU Active"
+             description="The percentage of time in which the Execution Units were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 7 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_active"
+             units="percent"
+             symbol_name="EuActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Vebox Ring Busy"
+             description="The percentage of time when vebox command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="C 7 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vebox_busy"
+             units="percent"
+             symbol_name="VeboxBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="System Frame Batch"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Any Engine Busy"
+             description="The percentage of time when any command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="B 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="any_engine_busy"
+             units="percent"
+             symbol_name="AnyEngineBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GS Threads Dispatched"
+             description="The total number of geometry shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 5 READ"
+             underscore_name="gs_threads"
+             units="threads"
+             symbol_name="GsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Geometry Shader"
+             />
+    <counter name="VS Threads Dispatched"
+             description="The total number of vertex shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 1 READ"
+             underscore_name="vs_threads"
+             units="threads"
+             symbol_name="VsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Vertex Shader"
+             />
+    <counter name="FS Threads Dispatched"
+             description="The total number of fragment shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 6 READ"
+             underscore_name="ps_threads"
+             units="threads"
+             symbol_name="PsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Fragment Shader"
+             />
+    <counter name="Compute Ring Busy"
+             description="The percentage of time when render command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="C 3 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="compute_busy"
+             units="percent"
+             symbol_name="ComputeBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="System Frame Batch"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Render Ring Busy"
+             description="The percentage of time when render command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="C 6 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="render_busy"
+             units="percent"
+             symbol_name="RenderBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="System Frame Batch"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="CS Threads Dispatched"
+             description="The total number of compute shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 4 READ"
+             underscore_name="cs_threads"
+             units="threads"
+             symbol_name="CsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Compute Shader"
+             />
+    <counter name="Posh Ring Busy"
+             description="The percentage of time when posh command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="C 5 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="posh_engine_busy"
+             units="percent"
+             symbol_name="PoshEngineBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="System Frame Batch"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="GPU Busy"
+             description="The percentage of time in which the GPU has been processing GPU commands."
+             data_type="float"
+             max_equation="100"
+             equation="A 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="gpu_busy"
+             units="percent"
+             symbol_name="GpuBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Vdbox1 Ring Busy"
+             description="The percentage of time when Vdbox1 command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="C 2 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vdbox1_busy"
+             units="percent"
+             symbol_name="Vdbox1Busy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="System Frame Batch"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU FPU And EM Pipes Active"
+             description="The percentage of time in which EU FPU and EM pipelines were actively processing."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 9 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_fpu_em_active"
+             units="percent"
+             symbol_name="EuFpuEmActive"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Overview System Frame Batch Draw"
+             mdapi_group="EU Array/Pipes"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Render and compute engines are simultaneously busy"
+             description="The percentage of time when render and compute engines are simultaneously busy"
+             data_type="float"
+             max_equation="100"
+             equation="B 0 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="render_and_compute_busy"
+             units="percent"
+             symbol_name="RenderAndComputeBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="Vdbox0 Ring Busy"
+             description="The percentage of time when Vdbox0 command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="C 1 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="vdbox0_busy"
+             units="percent"
+             symbol_name="Vdbox0Busy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="System Frame Batch"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="DS Threads Dispatched"
+             description="The total number of domain shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 3 READ"
+             underscore_name="ds_threads"
+             units="threads"
+             symbol_name="DsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Domain Shader"
+             />
+    <counter name="EU Thread Occupancy"
+             description="The percentage of time in which hardware threads occupied EUs."
+             data_type="float"
+             max_equation="100"
+             equation="2 8 A 10 READ FMUL $EuThreadsCount FDIV FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_thread_occupancy"
+             units="percent"
+             symbol_name="EuThreadOccupancy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="EU Stall"
+             description="The percentage of time in which the Execution Units were stalled."
+             data_type="float"
+             max_equation="100"
+             equation="2 A 8 READ FMUL $EuCoresTotalCount UDIV 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="eu_stall"
+             units="percent"
+             symbol_name="EuStall"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier2 Overview System Frame Batch Draw"
+             mdapi_group="EU Array"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="HS Threads Dispatched"
+             description="The total number of hull shader hardware threads dispatched."
+             data_type="uint64"
+             equation="A 2 READ"
+             underscore_name="hs_threads"
+             units="threads"
+             symbol_name="HsThreads"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier3 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="EU Array/Hull Shader"
+             />
+    <counter name="Blitter Ring Busy"
+             description="The percentage of time when blitter command streamer was busy."
+             data_type="float"
+             max_equation="100"
+             equation="C 4 READ 100 UMUL $GpuCoreClocks FDIV"
+             underscore_name="blitter_busy"
+             units="percent"
+             symbol_name="BlitterBusy"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="System Frame Batch"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x0E0E1200" />
+        <register type="NOA" address="0x00009888" value="0x220E0009" />
+        <register type="NOA" address="0x00009888" value="0x0E101200" />
+        <register type="NOA" address="0x00009888" value="0x040E0043" />
+        <register type="NOA" address="0x00009888" value="0x0A0E00B3" />
+        <register type="NOA" address="0x00009888" value="0x180E0000" />
+        <register type="NOA" address="0x00009888" value="0x0C0E0000" />
+        <register type="NOA" address="0x00009888" value="0x1C0F0104" />
+        <register type="NOA" address="0x00009888" value="0x08100053" />
+        <register type="NOA" address="0x00009888" value="0x20100000" />
+        <register type="NOA" address="0x00009888" value="0x04104000" />
+        <register type="NOA" address="0x00009888" value="0x0A104000" />
+        <register type="NOA" address="0x00009888" value="0x04024000" />
+        <register type="NOA" address="0x00009888" value="0x08024000" />
+        <register type="NOA" address="0x00009888" value="0x0A024000" />
+        <register type="NOA" address="0x00009888" value="0x04034000" />
+        <register type="NOA" address="0x00009888" value="0x08034000" />
+        <register type="NOA" address="0x00009888" value="0x0A034000" />
+        <register type="NOA" address="0x00009888" value="0x1C006000" />
+        <register type="NOA" address="0x00009888" value="0x34001B00" />
+        <register type="NOA" address="0x00009888" value="0x040A8000" />
+        <register type="NOA" address="0x00009888" value="0x080A8000" />
+        <register type="NOA" address="0x00009888" value="0x0A0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x15102400" />
+        <register type="NOA" address="0x00009888" value="0x230B0120" />
+        <register type="NOA" address="0x00009888" value="0x15182400" />
+        <register type="NOA" address="0x00009888" value="0x232B0120" />
+        <register type="NOA" address="0x00009888" value="0x17100023" />
+        <register type="NOA" address="0x00009888" value="0x11100000" />
+        <register type="NOA" address="0x00009888" value="0x5D101000" />
+        <register type="NOA" address="0x00009888" value="0x5B100545" />
+        <register type="NOA" address="0x00009888" value="0x15148000" />
+        <register type="NOA" address="0x00009888" value="0x1B140C00" />
+        <register type="NOA" address="0x00009888" value="0x61112000" />
+        <register type="NOA" address="0x00009888" value="0x5F110945" />
+        <register type="NOA" address="0x00009888" value="0x03124000" />
+        <register type="NOA" address="0x00009888" value="0x05128000" />
+        <register type="NOA" address="0x00009888" value="0x09128000" />
+        <register type="NOA" address="0x00009888" value="0x0B128000" />
+        <register type="NOA" address="0x00009888" value="0x13138000" />
+        <register type="NOA" address="0x00009888" value="0x1B0D0040" />
+        <register type="NOA" address="0x00009888" value="0x1F0B00D3" />
+        <register type="NOA" address="0x00009888" value="0x190B0000" />
+        <register type="NOA" address="0x00009888" value="0x170B0000" />
+        <register type="NOA" address="0x00009888" value="0x1B170002" />
+        <register type="NOA" address="0x00009888" value="0x0D174000" />
+        <register type="NOA" address="0x00009888" value="0x071800A3" />
+        <register type="NOA" address="0x00009888" value="0x11180000" />
+        <register type="NOA" address="0x00009888" value="0x032D4000" />
+        <register type="NOA" address="0x00009888" value="0x032B00D3" />
+        <register type="NOA" address="0x00009888" value="0x192B0000" />
+        <register type="NOA" address="0x00009888" value="0x092B0000" />
+        <register type="NOA" address="0x00009888" value="0x55103000" />
+        <register type="NOA" address="0x00009888" value="0x57100000" />
+        <register type="NOA" address="0x00009888" value="0x47101000" />
+        <register type="NOA" address="0x00009888" value="0x49107003" />
+        <register type="NOA" address="0x00009888" value="0x4B100402" />
+        <register type="NOA" address="0x00009888" value="0x4D100230" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0x30800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0x00800000" />
+        <register type="OA" address="0x0000DC40" value="0x00030000" />
+        <register type="OA" address="0x0000D940" value="0x00024002" />
+        <register type="OA" address="0x0000D944" value="0x0000B7FF" />
+        <register type="OA" address="0x0000DC00" value="0x00024002" />
+        <register type="OA" address="0x0000DC04" value="0x0000B7FF" />
+        <register type="OA" address="0x0000D948" value="0x0007F000" />
+        <register type="OA" address="0x0000D94C" value="0x000001FF" />
+        <register type="OA" address="0x0000DC08" value="0x0007F000" />
+        <register type="OA" address="0x0000DC0C" value="0x000001FF" />
+    </register_config>
+    <register_config type="FLEX">
+        <register type="FLEX" address="0x0000E458" value="0x00005004" />
+        <register type="FLEX" address="0x0000E558" value="0x00008003" />
+    </register_config>
+  </set>
+
+  <set name="Metric set TestOa"
+       mdapi_supported_apis="OGL OCL IO BB"
+       underscore_name="test_oa"
+       hw_config_guid="80a833f0-2504-4321-8894-e9277844ce7b"
+       chipset="TGL"
+       symbol_name="TestOa"
+       >
+    <counter name="TestCounter7"
+             description="HW test counter 7. Factor: 0.6666"
+             data_type="uint64"
+             equation="B 7 READ"
+             underscore_name="counter7"
+             units="events"
+             symbol_name="Counter7"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="GPU Time Elapsed"
+             description="Time elapsed on the GPU during the measurement."
+             data_type="uint64"
+             equation="GPU_TIME 0 READ 1000000000 UMUL $GpuTimestampFrequency UDIV"
+             underscore_name="gpu_time"
+             units="ns"
+             symbol_name="GpuTime"
+             semantic_type="duration"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="GPU Core Clocks"
+             description="The total number of GPU core clocks elapsed during the measurement."
+             data_type="uint64"
+             equation="GPU_CLOCK 0 READ"
+             underscore_name="gpu_core_clocks"
+             units="cycles"
+             symbol_name="GpuCoreClocks"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="AVG GPU Core Frequency"
+             description="Average GPU Core Frequency in the measurement."
+             data_type="uint64"
+             max_equation="$GpuMaxFrequency"
+             equation="$GpuCoreClocks 1000000000 UMUL $GpuTime UDIV"
+             underscore_name="avg_gpu_core_frequency"
+             units="hz"
+             symbol_name="AvgGpuCoreFrequency"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Tier1 Overview System Frame Batch Draw"
+             mdapi_group="GPU"
+             mdapi_hw_unit_type="gpu"
+             />
+    <counter name="TestCounter8"
+             description="HW test counter 8. Should be equal to 1 in IOStream or in OAG query mode"
+             data_type="uint64"
+             equation="C 0 READ"
+             underscore_name="counter8"
+             units="events"
+             symbol_name="Counter8"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter9 - OAR enable"
+             description="HW test counter 9. Should be equal to 1 in query."
+             data_type="uint64"
+             equation="C 1 READ"
+             underscore_name="counter9"
+             units="events"
+             symbol_name="Counter9"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter4"
+             description="HW test counter 4. Factor: 0.3333"
+             data_type="uint64"
+             equation="B 4 READ"
+             underscore_name="counter4"
+             units="events"
+             symbol_name="Counter4"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter5"
+             description="HW test counter 5. Factor: 0.3333"
+             data_type="uint64"
+             equation="B 5 READ"
+             underscore_name="counter5"
+             units="events"
+             symbol_name="Counter5"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter6"
+             description="HW test counter 6. Factor: 0.16666"
+             data_type="uint64"
+             equation="B 6 READ"
+             underscore_name="counter6"
+             units="events"
+             symbol_name="Counter6"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter3"
+             description="HW test counter 3. Factor: 0.5"
+             data_type="uint64"
+             equation="B 3 READ"
+             underscore_name="counter3"
+             units="events"
+             symbol_name="Counter3"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter0"
+             description="HW test counter 0. Factor: 0.0"
+             data_type="uint64"
+             equation="B 0 READ"
+             underscore_name="counter0"
+             units="events"
+             symbol_name="Counter0"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter1"
+             description="HW test counter 1. Factor: 1.0"
+             data_type="uint64"
+             equation="B 1 READ"
+             underscore_name="counter1"
+             units="events"
+             symbol_name="Counter1"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <counter name="TestCounter2"
+             description="HW test counter 2. Factor: 1.0"
+             data_type="uint64"
+             equation="B 2 READ"
+             underscore_name="counter2"
+             units="events"
+             symbol_name="Counter2"
+             semantic_type="event"
+             mdapi_supported_apis=""
+             mdapi_usage_flags="Frame Batch Draw"
+             mdapi_hw_unit_type="gpu"
+             mdapi_group="GPU"
+             />
+    <register_config type="NOA">
+        <register type="NOA" address="0x00000D04" value="0x00000200" />
+        <register type="NOA" address="0x00009840" value="0x00000000" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x280E0000" />
+        <register type="NOA" address="0x00009888" value="0x1E0E0147" />
+        <register type="NOA" address="0x00009888" value="0x180E0000" />
+        <register type="NOA" address="0x00009888" value="0x160E0000" />
+        <register type="NOA" address="0x00009888" value="0x1E0F1000" />
+        <register type="NOA" address="0x00009888" value="0x1E104000" />
+        <register type="NOA" address="0x00009888" value="0x2E020100" />
+        <register type="NOA" address="0x00009888" value="0x2C030004" />
+        <register type="NOA" address="0x00009888" value="0x38003000" />
+        <register type="NOA" address="0x00009888" value="0x1E0A8000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x49110000" />
+        <register type="NOA" address="0x00009888" value="0x5D101400" />
+        <register type="NOA" address="0x00009888" value="0x1D140020" />
+        <register type="NOA" address="0x00009888" value="0x1D1103A3" />
+        <register type="NOA" address="0x00009888" value="0x01110000" />
+        <register type="NOA" address="0x00009888" value="0x61111000" />
+        <register type="NOA" address="0x00009888" value="0x1F128000" />
+        <register type="NOA" address="0x00009888" value="0x17100000" />
+        <register type="NOA" address="0x00009888" value="0x55100630" />
+        <register type="NOA" address="0x00009888" value="0x57100000" />
+        <register type="NOA" address="0x00009888" value="0x31100000" />
+        <register type="NOA" address="0x00009884" value="0x00000003" />
+        <register type="NOA" address="0x00009888" value="0x65100002" />
+        <register type="NOA" address="0x00009884" value="0x00000000" />
+        <register type="NOA" address="0x00009888" value="0x42000001" />
+    </register_config>
+    <register_config type="OA">
+        <register type="OA" address="0x0000D920" value="0x00000000" />
+        <register type="OA" address="0x0000D900" value="0x00000000" />
+        <register type="OA" address="0x0000D904" value="0xF0800000" />
+        <register type="OA" address="0x0000D910" value="0x00000000" />
+        <register type="OA" address="0x0000D914" value="0xF0800000" />
+        <register type="OA" address="0x0000DC40" value="0x00FF0000" />
+        <register type="OA" address="0x0000D940" value="0x00000004" />
+        <register type="OA" address="0x0000D944" value="0x0000FFFF" />
+        <register type="OA" address="0x0000DC00" value="0x00000004" />
+        <register type="OA" address="0x0000DC04" value="0x0000FFFF" />
+        <register type="OA" address="0x0000D948" value="0x00000003" />
+        <register type="OA" address="0x0000D94C" value="0x0000FFFF" />
+        <register type="OA" address="0x0000DC08" value="0x00000003" />
+        <register type="OA" address="0x0000DC0C" value="0x0000FFFF" />
+        <register type="OA" address="0x0000D950" value="0x00000007" />
+        <register type="OA" address="0x0000D954" value="0x0000FFFF" />
+        <register type="OA" address="0x0000DC10" value="0x00000007" />
+        <register type="OA" address="0x0000DC14" value="0x0000FFFF" />
+        <register type="OA" address="0x0000D958" value="0x00100002" />
+        <register type="OA" address="0x0000D95C" value="0x0000FFF7" />
+        <register type="OA" address="0x0000DC18" value="0x00100002" />
+        <register type="OA" address="0x0000DC1C" value="0x0000FFF7" />
+        <register type="OA" address="0x0000D960" value="0x00100002" />
+        <register type="OA" address="0x0000D964" value="0x0000FFCF" />
+        <register type="OA" address="0x0000DC20" value="0x00100002" />
+        <register type="OA" address="0x0000DC24" value="0x0000FFCF" />
+        <register type="OA" address="0x0000D968" value="0x00100082" />
+        <register type="OA" address="0x0000D96C" value="0x0000FFEF" />
+        <register type="OA" address="0x0000DC28" value="0x00100082" />
+        <register type="OA" address="0x0000DC2C" value="0x0000FFEF" />
+        <register type="OA" address="0x0000D970" value="0x001000C2" />
+        <register type="OA" address="0x0000D974" value="0x0000FFE7" />
+        <register type="OA" address="0x0000DC30" value="0x001000C2" />
+        <register type="OA" address="0x0000DC34" value="0x0000FFE7" />
+        <register type="OA" address="0x0000D978" value="0x00100001" />
+        <register type="OA" address="0x0000D97C" value="0x0000FFE7" />
+        <register type="OA" address="0x0000DC38" value="0x00100001" />
+        <register type="OA" address="0x0000DC3C" value="0x0000FFE7" />
+    </register_config>
+  </set>
+
+</metrics>