diff --git a/CMakeLists.txt b/CMakeLists.txt
index ac5dd2feb9..8c03d08f95 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -216,11 +216,11 @@ install(PROGRAMS src/omniperf TYPE BIN)
install(FILES src/parser.py TYPE BIN)
install(FILES src/common.py TYPE BIN)
install(FILES VERSION VERSION.sha DESTINATION ${CMAKE_INSTALL_PREFIX})
-# src/omniperf_cli
+# src/omniperf_analyze
install(
- DIRECTORY src/omniperf_cli
+ DIRECTORY src/omniperf_analyze
TYPE BIN
- PATTERN src/omniperf_cli/tests EXCLUDE
+ PATTERN src/omniperf_analyze/tests EXCLUDE
PATTERN "__pycache__" EXCLUDE)
# src/utils
install(
@@ -228,9 +228,11 @@ install(
TYPE BIN
PATTERN "rooflines*" EXCLUDE)
# src/utils/rooflines
-install(PROGRAMS src/utils/rooflines/roofline-rhel8-mi200-rocm5
- src/utils/rooflines/roofline-sle15sp3-mi200-rocm5
- DESTINATION ${CMAKE_INSTALL_BINDIR}/utils/rooflines)
+install(
+ PROGRAMS src/utils/rooflines/roofline-rhel8-mi200-rocm5
+ src/utils/rooflines/roofline-sle15sp3-mi200-rocm5
+ src/utils/rooflines/roofline-ubuntu20_04-mi200-rocm5
+ DESTINATION ${CMAKE_INSTALL_BINDIR}/utils/rooflines)
# src/perfmon_pub
install(
DIRECTORY src/perfmon_pub
diff --git a/dashboards/Omniperf_v1.0.5_pub.json b/dashboards/Omniperf_v1.0.5_pub.json
new file mode 100644
index 0000000000..4cbfd4a8ec
--- /dev/null
+++ b/dashboards/Omniperf_v1.0.5_pub.json
@@ -0,0 +1,13331 @@
+{
+ "annotations": {
+ "list": [
+ {
+ "builtIn": 1,
+ "datasource": {
+ "type": "datasource",
+ "uid": "grafana"
+ },
+ "enable": true,
+ "hide": true,
+ "iconColor": "rgba(0, 211, 255, 1)",
+ "name": "Annotations & Alerts",
+ "target": {
+ "limit": 100,
+ "matchAny": false,
+ "tags": [],
+ "type": "dashboard"
+ },
+ "type": "dashboard"
+ }
+ ]
+ },
+ "editable": true,
+ "fiscalYearStartMonth": 0,
+ "graphTooltip": 0,
+ "id": 41,
+ "iteration": 1670355676329,
+ "links": [],
+ "liveNow": false,
+ "panels": [
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 0
+ },
+ "id": 217,
+ "panels": [
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 23,
+ "w": 13,
+ "x": 0,
+ "y": 1
+ },
+ "id": 159,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.sysinfo.aggregate([\n {\"$project\": {\n \"_id\": 0,\n \"date\":1,\n \"host_name\": 1,\n \"host_cpu\": 1,\n \"host_distro\": 1,\n \"host_kernel\": 1,\n \"host_rocmver\": 1,\n \"gpu_soc\": 1,\n \"name\": 1,\n \"numSE\": 1,\n \"numSQC\": 1,\n \"numCU\": 1,\n \"numSIMD\": 1,\n \"waveSize\": 1,\n \"maxWavesPerCU\": 1,\n \"maxWorkgroupSize\":1,\n \"L1\":1,\n \"L2\":1,\n \"L2Banks\": 1,\n \"sclk\":1,\n \"mclk\":1,\n \"cur_sclk\": 1,\n \"cur_mclk\":1,\n \"hbmBW\":1\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\":\"Date\",\n \"Value\": \"&date\"\n },\n {\n \"Metric\":\"Host Name\",\n \"Value\": \"&host_name\"\n },\n {\n \"Metric\":\"Host CPU\",\n \"Value\": \"&host_cpu\"\n },\n {\n \"Metric\":\"Host Distro\",\n \"Value\": \"&host_distro\"\n },\n {\n \"Metric\":\"Host Kernel\",\n \"Value\": \"&host_kernel\"\n },\n {\n \"Metric\":\"ROCm Version\",\n \"Value\": \"&host_rocmver\"\n },\n {\n \"Metric\":\"GFX SoC\",\n \"Value\": \"&name\"\n },\n {\n \"Metric\":\"GFX ID\",\n \"Value\": \"&gpu_soc\"\n },\n {\n \"Metric\":\"Total SEs\",\n \"Value\":\"&numSE\"\n },\n {\n \"Metric\":\"Total SQCs\",\n \"Value\":\"&numSQC\"\n },\n {\n\n \"Metric\":\"Total CUs\",\n \"Value\":\"&numCU\"\n },\n {\n \"Metric\":\"SIMDs/CU\",\n \"Value\": \"&numSIMD\"\n },\n {\n \"Metric\":\"Max Wavefronts Occupancy Per CU\",\n \"Value\":\"&maxWavesPerCU\"\n },\n {\n \"Metric\":\"Max Workgroup Size\",\n \"Value\":\"&maxWorkgroupSize\"\n },\n {\n \"Metric\":\"L1Cache per CU (KB)\",\n \"Value\":\"&L1\"\n },\n {\n \"Metric\":\"L2Cache (KB)\",\n \"Value\":\"&L2\"\n },\n {\n \"Metric\":\"L2Cache Channels\",\n \"Value\":\"&L2Banks\"\n },\n {\n \"Metric\":\"Sys Clock (Max) - MHz\",\n \"Value\":\"&sclk\"\n \n },\n {\n \"Metric\":\"Memory Clock (Max) - MHz\",\n \"Value\":\"&mclk\"\n },\n {\n \"Metric\":\"Sys Clock (Cur) - MHz\",\n \"Value\":\"&cur_sclk\"\n \n },\n {\n \"Metric\":\"Memory Clock (Cur) - MHz\",\n \"Value\":\"&cur_mclk\"\n },\n {\n \"Metric\":\"HBM Bandwidth - GB/s\",\n \"Value\":\"&hbmBW\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.sysinfo.aggregate([\n {\"$match\": {\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(System Info)\"}}\n }},\n\n {\"$project\": {\n \"_id\": 0,\n \"date\":1,\n \"host_name\": 1,\n \"host_cpu\": 1,\n \"host_distro\": 1,\n \"host_kernel\": 1,\n \"host_rocmver\": 1,\n \"gpu_soc\": 1,\n \"name\": 1,\n \"numSE\": 1,\n \"numSQC\": 1,\n \"numCU\": 1,\n \"numSIMD\": 1,\n \"waveSize\": 1,\n \"maxWavesPerCU\": 1,\n \"maxWorkgroupSize\":1,\n \"L1\":1,\n \"L2\":1,\n \"L2Banks\": 1,\n \"sclk\":1,\n \"mclk\":1,\n \"cur_sclk\": 1,\n \"cur_mclk\":1,\n \"hbmBW\":1\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\":\"Date\",\n \"Value\": \"&date\"\n },\n {\n \"Metric\":\"Host Name\",\n \"Value\": \"&host_name\"\n },\n {\n \"Metric\":\"Host CPU\",\n \"Value\": \"&host_cpu\"\n },\n {\n \"Metric\":\"Host Distro\",\n \"Value\": \"&host_distro\"\n },\n {\n \"Metric\":\"Host Kernel\",\n \"Value\": \"&host_kernel\"\n },\n {\n \"Metric\":\"ROCm Version\",\n \"Value\": \"&host_rocmver\"\n },\n {\n \"Metric\":\"GFX SoC\",\n \"Value\": \"&name\"\n },\n {\n \"Metric\":\"GFX ID\",\n \"Value\": \"&gpu_soc\"\n },\n {\n \"Metric\":\"Total SEs\",\n \"Value\":\"&numSE\"\n },\n {\n \"Metric\":\"Total SQCs\",\n \"Value\":\"&numSQC\"\n },\n {\n\n \"Metric\":\"Total CUs\",\n \"Value\":\"&numCU\"\n },\n {\n \"Metric\":\"SIMDs/CU\",\n \"Value\": \"&numSIMD\"\n },\n {\n \"Metric\":\"Max Wavefronts Occupancy Per CU\",\n \"Value\":\"&maxWavesPerCU\"\n },\n {\n \"Metric\":\"Max Workgroup Size\",\n \"Value\":\"&maxWorkgroupSize\"\n },\n {\n \"Metric\":\"L1Cache per CU (KB)\",\n \"Value\":\"&L1\"\n },\n {\n \"Metric\":\"L2Cache (KB)\",\n \"Value\":\"&L2\"\n },\n {\n \"Metric\":\"L2Cache Channels\",\n \"Value\":\"&L2Banks\"\n },\n {\n \"Metric\":\"Sys Clock (Max) - MHz\",\n \"Value\":\"&sclk\"\n \n },\n {\n \"Metric\":\"Memory Clock (Max) - MHz\",\n \"Value\":\"&mclk\"\n },\n {\n \"Metric\":\"Sys Clock (Cur) - MHz\",\n \"Value\":\"&cur_sclk\"\n \n },\n {\n \"Metric\":\"Memory Clock (Cur) - MHz\",\n \"Value\":\"&cur_mclk\"\n },\n {\n \"Metric\":\"HBM Bandwidth - GB/s\",\n \"Value\":\"&hbmBW\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "System Info",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true
+ },
+ "indexByName": {},
+ "renameByName": {
+ "Value 1": "Current",
+ "Value 2": "Baseline"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "System Info",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 1
+ },
+ "id": 108,
+ "panels": [
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto",
+ "filterable": false
+ },
+ "decimals": 0,
+ "links": [],
+ "mappings": [
+ {
+ "options": {
+ "match": "false",
+ "result": {
+ "index": 0
+ }
+ },
+ "type": "special"
+ }
+ ],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "text"
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Percent of Peak - PoP"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "percent"
+ },
+ {
+ "id": "thresholds",
+ "value": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "transparent"
+ },
+ {
+ "color": "orange",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ {
+ "id": "custom.displayMode",
+ "value": "color-background"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.displayMode",
+ "value": "color-text"
+ },
+ {
+ "id": "custom.width",
+ "value": 252
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit 1"
+ },
+ "properties": [
+ {
+ "id": "custom.displayMode",
+ "value": "color-background"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 137
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 110
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 125
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 161
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 29,
+ "w": 15,
+ "x": 0,
+ "y": 2
+ },
+ "id": 110,
+ "interval": "2h",
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"valu_flops_val\": {\n \"$avg\": { \"$divide\": [ { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }] }] }\n ]}\n ,{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }]\n }},\n \n \"valu_intOps_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] }] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }\n },\n \n \"mfma_flops_f16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_bf16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f32_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f64_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_i8_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \n \n \"salu_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU] }] }\n },\n \n \"valu_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU] }] }\n },\n \n \"mfma_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU, 4] }] }\n },\n\n \n \"lds_bconf\": {\n \"$avg\": {\"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n } \n },\n \n \n \"lds_bw\": {\n \"$avg\": {\"$divide\":[ \n { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks\"}\n ]}, \n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]}\n },\n \n \"lds_bw_pop\": {\n \"$avg\": {\"$divide\": [\n {\"$divide\":[ \n { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks\"}\n ]}, \n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]}, \n {\"$multiply\": [$sclk, $numCU, 0.00128]}\n ]}\n },\n \n \"unpredthreads_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n \n \"ipcIssue_val\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [\"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\", \"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n \"eaWriteLat_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\" , 0]},\n { \"$divide\": [\"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\"] },\n null \n ]\n }\n },\n \"eaReadLat_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\" , 0]},\n { \"$divide\": [\"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\"] },\n null \n ]\n }\n },\n \"eaWriteBW_val\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64] }, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }\n }, \n \"eaReadBW_val\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32] }, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] }] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }\n },\n \"l2_cacheHits_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&TCC_HIT_sum\", \"&TCC_MISS_sum\"] }, 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [\"&TCC_HIT_sum\", \"&TCC_MISS_sum\"] }] },\n null \n ]\n }\n },\n \"vecl1_cacheHits_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]},\n { \"$subtract\": [100, { \"$divide\": [{ \"$multiply\": [100, { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }] }, \"&TCP_TOTAL_CACHE_ACCESSES_sum\"] }] },\n null\n ]\n }\n },\n \"vecl1_BW_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \"l1k_cacheHits_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\"]} , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\"]}] },\n null\n ]\n }\n },\n \"l1i_hitRate_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\"]}] }\n },\n \"l1i_BW_val\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [\"&SQC_ICACHE_REQ\",{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }, 64] }\n },\n \"l1k_BW_val\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [\"&SQC_DCACHE_REQ\", { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }, 64] }\n }\n \n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"VALU FLOPs\",\n \"Value\": \"&valu_flops_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 64, 2 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&valu_flops_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 64, 2 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"VALU IOPs\",\n \"Value\": \"&valu_intOps_val\",\n \"Unit\": \"GIOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 64, 2 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&valu_intOps_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 64, 2 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (BF16)\",\n \"Value\": \"&mfma_flops_bf16_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 512 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_bf16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 512 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (F16)\",\n \"Value\": \"&mfma_flops_f16_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 1024 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 1024 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (F32)\",\n \"Value\": \"&mfma_flops_f32_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 256 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f32_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 256 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (F64)\",\n \"Value\": \"&mfma_flops_f64_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 256 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f64_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 256 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA IOPs (Int8)\",\n \"Value\": \"&mfma_flops_i8_val\",\n \"Unit\": \"GIOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 1024 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_i8_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 1024 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"Active CUs\",\n \"Value\": $numActiveCUs,\n \"Unit\": \"CUs\",\n \"peak\": $numCU,\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, $numActiveCUs] }, $numCU]}\n },\n \n {\n \"Metric\": \"SALU Util\",\n \"Value\": \"&salu_val\",\n \"Unit\": \"pct\",\n \"peak\": 100,\n \"Percent of Peak - PoP\": \"&salu_val\"\n },\n {\n \"Metric\": \"VALU Util\",\n \"Value\": \"&valu_val\",\n \"Unit\": \"pct\",\n \"peak\": 100,\n \"Percent of Peak - PoP\": \"&valu_val\"\n },\n {\n \"Metric\": \"MFMA Util\",\n \"Value\": \"&mfma_val\",\n \"Unit\": \"pct\",\n \"peak\": 100,\n \"Percent of Peak - PoP\": \"&mfma_val\"\n },\n {\n \"Metric\": \"VALU Active Threads/Wave\",\n \"Value\": \"&unpredthreads_val\",\n \"Unit\": \"Threads\",\n \"peak\": 64,\n \"Percent of Peak - PoP\": { \"$multiply\": [\"&unpredthreads_val\", 1.5625]}\n },\n {\n \"Metric\": \"IPC - Issue\",\n \"Value\": \"&ipcIssue_val\",\n \"Unit\": \"Instr/cycle\",\n \"peak\": 5,\n \"Percent of Peak - PoP\": {\"$divide\": [{ \"$multiply\": [100, \"&ipcIssue_val\"] }, 5] }\n },\n {\n \"Metric\": \"LDS BW\",\n \"Value\": \"&lds_bw\",\n \"Unit\": \"GB/sec\",\n \"peak\": {\"$multiply\": [$sclk, $numCU, 0.128]},\n \"Percent of Peak - PoP\": \"&lds_bw_pop\"\n },\n {\n \"Metric\": \"LDS Bank Conflict\",\n \"Value\": \"&lds_bconf\",\n \"Unit\": \"Conflicts/access\",\n \"peak\": \"32\",\n \"Percent of Peak - PoP\": {\"$divide\": [{ \"$multiply\": [100, \"&lds_bconf\"] }, 32] }\n },\n {\n \"Metric\": \"Instr Cache Hit Rate\",\n \"Value\": \"&l1i_hitRate_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&l1i_hitRate_val\"\n }, \n {\n \"Metric\": \"Instr Cache BW\",\n \"Value\": \"&l1i_BW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 64] }, $numSQC]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&l1i_BW_val\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 64] }, $numSQC]}] }\n },\n {\n \"Metric\": \"Scalar L1D Cache Hit Rate\",\n \"Value\": \"&l1k_cacheHits_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&l1k_cacheHits_val\"\n },\n {\n \"Metric\": \"Scalar L1D Cache BW\",\n \"Value\": \"&l1k_BW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 64] }, $numSQC]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&l1k_BW_val\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 64] }, $numSQC]}] }\n },\n\n {\n \"Metric\": \"Vector L1D Cache Hit Rate\",\n \"Value\": \"&vecl1_cacheHits_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&vecl1_cacheHits_val\"\n },\n {\n \"Metric\": \"Vector L1D Cache BW\",\n \"Value\": \"&vecl1_BW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 64] }, $numCU]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&vecl1_BW_val\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 64] }, $numCU]}] }\n },\n {\n \"Metric\": \"L2 Cache Hit Rate\",\n \"Value\": \"&l2_cacheHits_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&l2_cacheHits_val\"\n },\n {\n \"Metric\": \"L2-Fabric Read BW\",\n \"Value\": \"&eaReadBW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": \"$hbmBW\",\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&eaReadBW_val\"] }, $hbmBW] }\n },\n {\n \"Metric\": \"L2-Fabric Write BW\",\n \"Value\": \"&eaWriteBW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": \"$hbmBW\",\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&eaWriteBW_val\"] }, $hbmBW] }\n },\n {\n \"Metric\": \"L2-Fabric Read Latency\",\n \"Value\": \"&eaReadLat_val\",\n \"Unit\": \"Cycles\",\n \"peak\": \"\",\n \"Percent of Peak - PoP\": \"\"\n },\n {\n \"Metric\": \"L2-Fabric Write Latency\",\n \"Value\": \"&eaWriteLat_val\",\n \"Unit\": \"Cycles\",\n \"peak\": \"\",\n \"Percent of Peak - PoP\": \"\"\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_LEVEL_WAVES\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n \n {\"$group\": {\n \"_id\": null,\n \"waveOcc_val\": {\n \"$avg\": { \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\"] }\n },\n \"waveOcc_pop\": {\n \"$avg\": { \"$divide\": [{ \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\"] },{ \"$multiply\": [$maxWavesPerCU, $numCU] }] }\n }\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Wave Occupancy\",\n \"Value\": \"&waveOcc_val\",\n \"Unit\": \"Wavefronts\",\n \"peak\": { \"$multiply\": [$maxWavesPerCU, $numCU] },\n \"Percent of Peak - PoP\": { \"$multiply\": [100, \"&waveOcc_pop\"] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n ]\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_IFETCH_LEVEL\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n \n {\"$group\": {\n \"_id\": null,\n \"instrFetchBW_val\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [\"&SQ_IFETCH\", { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }, 32] }\n },\n \"instrFetchLat_val\": {\n \"$avg\": { \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\"] }\n }\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Instr Fetch BW\",\n \"Value\": \"&instrFetchBW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 32] }, $numSQC]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&instrFetchBW_val\"]}, { \"$multiply\": [$numSQC, { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 32] }] }] }\n },\n {\n \"Metric\": \"Instr Fetch Latency\",\n \"Value\": \"&instrFetchLat_val\",\n \"Unit\": \"Cycles\",\n \"peak\": \"\",\n \"Percent of Peak - PoP\": \"\"\n\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n ]\n }}\n\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"System Speed-of-Light\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"valu_flops_val\": {\n \"$avg\": { \"$divide\": [ { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }] }] }\n ]}\n ,{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }]\n }},\n \n \"valu_intOps_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] }] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }\n },\n \n \"mfma_flops_f16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_bf16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f32_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f64_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_i8_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \n \n \"salu_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2] }] }\n },\n \n \"valu_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2] }] }\n },\n \n \"mfma_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2, 4] }] }\n },\n \n \"lds_bconf\": {\n \"$avg\": {\"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n } \n },\n \n \"lds_bw\": {\n \"$avg\": {\"$divide\":[ \n { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks2\"}\n ]}, \n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]}\n },\n \n \"lds_bw_pop\": {\n \"$avg\": {\"$divide\": [\n {\"$divide\":[ \n { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks2\"}\n ]}, \n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]}, \n {\"$multiply\": [$sclk2, $numCU2, 0.00128]}\n ]}\n },\n \n \"unpredthreads_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n \n \"ipcIssue_val\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [\"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\", \"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n \"eaWriteLat_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\" , 0]},\n { \"$divide\": [\"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\"] },\n null \n ]\n }\n },\n \"eaReadLat_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\" , 0]},\n { \"$divide\": [\"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\"] },\n null \n ]\n }\n },\n \"eaWriteBW_val\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64] }, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }\n }, \n \"eaReadBW_val\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32] }, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] }] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }\n },\n \"l2_cacheHits_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&TCC_HIT_sum\", \"&TCC_MISS_sum\"] }, 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [\"&TCC_HIT_sum\", \"&TCC_MISS_sum\"] }] },\n null \n ]\n }\n },\n \"vecl1_cacheHits_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]},\n { \"$subtract\": [100, { \"$divide\": [{ \"$multiply\": [100, { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }] }, \"&TCP_TOTAL_CACHE_ACCESSES_sum\"] }] },\n null\n ]\n }\n },\n \"vecl1_BW_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \"l1k_cacheHits_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\"]} , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\"]}] },\n null\n ]\n }\n },\n \"l1i_hitRate_val\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\"]}] }\n },\n \"l1i_BW_val\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [\"&SQC_ICACHE_REQ\",{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }, 64] }\n },\n \"l1k_BW_val\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [\"&SQC_DCACHE_REQ\", { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }, 64] }\n }\n \n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"VALU FLOPs\",\n \"Value\": \"&valu_flops_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 64, 2 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&valu_flops_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 64, 2 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"VALU IOPs\",\n \"Value\": \"&valu_intOps_val\",\n \"Unit\": \"GIOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 64, 2 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&valu_intOps_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 64, 2 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (BF16)\",\n \"Value\": \"&mfma_flops_bf16_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 512 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_bf16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 512 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (F16)\",\n \"Value\": \"&mfma_flops_f16_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 1024 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 1024 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (F32)\",\n \"Value\": \"&mfma_flops_f32_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 256 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f32_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 256 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA FLOPs (F64)\",\n \"Value\": \"&mfma_flops_f64_val\",\n \"Unit\": \"GFLOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 256 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f64_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 256 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"MFMA IOPs (Int8)\",\n \"Value\": \"&mfma_flops_i8_val\",\n \"Unit\": \"GIOP\",\n \"peak\": { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 1024 ]}, 1000] },\n \"Percent of Peak - PoP\": {\n \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_i8_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 1024 ]}, 1000] }]\n }\n },\n {\n \"Metric\": \"Active CUs\",\n \"Value\": $numActiveCUs2,\n \"Unit\": \"CUs\",\n \"peak\": $numCU2,\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, $numActiveCUs2] }, $numCU2]}\n },\n \n {\n \"Metric\": \"SALU Util\",\n \"Value\": \"&salu_val\",\n \"Unit\": \"pct\",\n \"peak\": 100,\n \"Percent of Peak - PoP\": \"&salu_val\"\n },\n {\n \"Metric\": \"VALU Util\",\n \"Value\": \"&valu_val\",\n \"Unit\": \"pct\",\n \"peak\": 100,\n \"Percent of Peak - PoP\": \"&valu_val\"\n },\n {\n \"Metric\": \"MFMA Util\",\n \"Value\": \"&mfma_val\",\n \"Unit\": \"pct\",\n \"peak\": 100,\n \"Percent of Peak - PoP\": \"&mfma_val\"\n },\n {\n \"Metric\": \"VALU Active Threads/Wave\",\n \"Value\": \"&unpredthreads_val\",\n \"Unit\": \"Threads\",\n \"peak\": 64,\n \"Percent of Peak - PoP\": { \"$multiply\": [\"&unpredthreads_val\", 1.5625]}\n },\n {\n \"Metric\": \"IPC - Issue\",\n \"Value\": \"&ipcIssue_val\",\n \"Unit\": \"Instr/cycle\",\n \"peak\": 5,\n \"Percent of Peak - PoP\": {\"$divide\": [{ \"$multiply\": [100, \"&ipcIssue_val\"] }, 5] }\n },\n {\n \"Metric\": \"LDS BW\",\n \"Value\": \"&lds_bw\",\n \"Unit\": \"GB/sec\",\n \"peak\": {\"$multiply\": [$sclk2, $numCU2, 0.128]},\n \"Percent of Peak - PoP\": \"&lds_bw_pop\"\n },\n {\n \"Metric\": \"LDS Bank Conflict\",\n \"Value\": \"&lds_bconf\",\n \"Unit\": \"Conflicts/access\",\n \"peak\": \"32\",\n \"Percent of Peak - PoP\": {\"$divide\": [{ \"$multiply\": [100, \"&lds_bconf\"] }, 32] }\n },\n {\n \"Metric\": \"Instr Cache Hit Rate\",\n \"Value\": \"&l1i_hitRate_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&l1i_hitRate_val\"\n }, \n {\n \"Metric\": \"Instr Cache BW\",\n \"Value\": \"&l1i_BW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 64] }, $numSQC2]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&l1i_BW_val\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 64] }, $numSQC2]}] }\n },\n {\n \"Metric\": \"Scalar L1D Cache Hit Rate\",\n \"Value\": \"&l1k_cacheHits_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&l1k_cacheHits_val\"\n },\n {\n \"Metric\": \"Scalar L1D Cache BW\",\n \"Value\": \"&l1k_BW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 64] }, $numSQC2]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&l1k_BW_val\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 64] }, $numSQC2]}] }\n },\n\n {\n \"Metric\": \"Vector L1D Cache Hit Rate\",\n \"Value\": \"&vecl1_cacheHits_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&vecl1_cacheHits_val\"\n },\n {\n \"Metric\": \"Vector L1D Cache BW\",\n \"Value\": \"&vecl1_BW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 64] }, $numCU2]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&vecl1_BW_val\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 64] }, $numCU2]}] }\n },\n {\n \"Metric\": \"L2 Cache Hit Rate\",\n \"Value\": \"&l2_cacheHits_val\",\n \"Unit\": \"pct\",\n \"peak\": \"100\",\n \"Percent of Peak - PoP\": \"&l2_cacheHits_val\"\n }, \n {\n \"Metric\": \"L2-Fabric Read BW\",\n \"Value\": \"&eaReadBW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": \"$hbmBW2\",\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&eaReadBW_val\"] }, $hbmBW2] }\n },\n {\n \"Metric\": \"L2-Fabric Write BW\",\n \"Value\": \"&eaWriteBW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": \"$hbmBW2\",\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&eaWriteBW_val\"] }, $hbmBW2] }\n },\n {\n \"Metric\": \"L2-Fabric Read Latency\",\n \"Value\": \"&eaReadLat_val\",\n \"Unit\": \"Cycles\",\n \"peak\": \"\",\n \"Percent of Peak - PoP\": \"\"\n },\n {\n \"Metric\": \"L2-Fabric Write Latency\",\n \"Value\": \"&eaWriteLat_val\",\n \"Unit\": \"Cycles\",\n \"peak\": \"\",\n \"Percent of Peak - PoP\": \"\"\n }\n \n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_LEVEL_WAVES\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"System Speed-of-Light\"}}\n }},\n \n {\"$group\": {\n \"_id\": null,\n \"waveOcc_val\": {\n \"$avg\": { \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\"] }\n },\n \"waveOcc_pop\": {\n \"$avg\": { \"$divide\": [{ \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\"] },{ \"$multiply\": [$maxWavesPerCU2, $numCU2] }] }\n }\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Wave Occupancy\",\n \"Value\": \"&waveOcc_val\",\n \"Unit\": \"Wavefronts\",\n \"peak\": { \"$multiply\": [$maxWavesPerCU2, $numCU2] },\n \"Percent of Peak - PoP\": { \"$multiply\": [100, \"&waveOcc_pop\"] }\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n ]\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_IFETCH_LEVEL\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"System Speed-of-Light\"}}\n }},\n \n {\"$group\": {\n \"_id\": null,\n \"instrFetchBW_val\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [\"&SQ_IFETCH\", { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }, 32] }\n },\n \"instrFetchLat_val\": {\n \"$avg\": { \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\"] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Instr Fetch BW\",\n \"Value\": \"&instrFetchBW_val\",\n \"Unit\": \"GB/s\",\n \"peak\": { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 32] }, $numSQC2]},\n \"Percent of Peak - PoP\": { \"$divide\": [{ \"$multiply\": [100, \"&instrFetchBW_val\"]}, { \"$multiply\": [$numSQC2, { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 32] }] }] }\n },\n {\n \"Metric\": \"Instr Fetch Latency\",\n \"Value\": \"&instrFetchLat_val\",\n \"Unit\": \"Cycles\",\n \"peak\": \"\",\n \"Percent of Peak - PoP\": \"\"\n\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]\n }}\n\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "Speed of Light",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Metric 1": 0,
+ "Metric 2": 7,
+ "Percent of Peak - PoP 1": 5,
+ "Percent of Peak - PoP 2": 6,
+ "Unit 1": 8,
+ "Unit 2": 9,
+ "Value 1": 1,
+ "Value 2": 2,
+ "peak 1": 3,
+ "peak 2": 4
+ },
+ "renameByName": {
+ "Percent of Peak - PoP": "Pct-of-Peak",
+ "Percent of Peak - PoP 1": "Pct-of-Peak (Current)",
+ "Percent of Peak - PoP 2": "Pct-of-Peak (Baseline)",
+ "Unit": "",
+ "Value": "Avg",
+ "Value 1": "Avg (Current)",
+ "Value 2": "Avg (Baseline)",
+ "peak": "Theoretical Max",
+ "peak 1": "Theoretical Max (Current)",
+ "peak 2": "Theoretical Max (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Dispatch ID"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 126
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 29,
+ "w": 4,
+ "x": 16,
+ "y": 2
+ },
+ "id": 175,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Dispatch ID\": \"&Index\",\n \"Kernel Name\": \"&KernelName\"\n }},\n {\"$sort\": {\n \"Dispatch ID\": 1\n }}\n],\n{ allowDiskUse: true }\n);",
+ "type": "table"
+ }
+ ],
+ "title": "Dispatch IDs - Current",
+ "transformations": [
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {},
+ "renameByName": {
+ "_id": "Dispatch ID"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Dispatch ID"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 127
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 29,
+ "w": 4,
+ "x": 20,
+ "y": 2
+ },
+ "id": 215,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "tlh8EwUnk"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "$Workload2.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Dispatch ID\": \"&Index\",\n \"Kernel Name\": \"&KernelName\"\n }},\n {\"$sort\": {\n \"Dispatch ID\": 1\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Dispatch IDs - Baseline",
+ "transformations": [
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {},
+ "renameByName": {
+ "_id": "Dispatch ID"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "System Speed-of-Light",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 2
+ },
+ "id": 36,
+ "panels": [
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "fillOpacity": 80,
+ "gradientMode": "none",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineWidth": 1
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ }
+ ]
+ },
+ "unit": "µs"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 9,
+ "w": 24,
+ "x": 0,
+ "y": 3
+ },
+ "id": 157,
+ "options": {
+ "bucketOffset": 0,
+ "legend": {
+ "calcs": [],
+ "displayMode": "hidden",
+ "placement": "bottom"
+ }
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "u5Z2zJhnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"elapsedTime1\": {\n \"$divide\": [{\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}, 1000]\n }\n }},\n\n {\"$project\": {\n \"_id\": 0,\n \"elapsedTime1\": 1\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Kernel Time Histogram",
+ "transparent": true,
+ "type": "histogram"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "percentage",
+ "steps": [
+ {
+ "color": "transparent"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "TotalDuration"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "ns"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg Duration"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "ns"
+ },
+ {
+ "id": "custom.width",
+ "value": 107
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "LDS"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "decbytes"
+ },
+ {
+ "id": "custom.width",
+ "value": 110
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L1 Cache"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "decbytes"
+ },
+ {
+ "id": "custom.width",
+ "value": 95
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L2 Cache"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "decbytes"
+ },
+ {
+ "id": "custom.width",
+ "value": 123
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "HBM BW "
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "GBs"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Calls"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 69
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Name"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 165
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Total Duration"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 126
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (F16)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 143
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (BF16)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 155
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (F32)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 146
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (F64)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 146
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Throughput"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "gflops"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Total FLOPs"
+ },
+ "properties": [
+ {
+ "id": "decimals",
+ "value": 0
+ },
+ {
+ "id": "custom.width",
+ "value": 141
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "VALU FLOPs"
+ },
+ "properties": [
+ {
+ "id": "decimals",
+ "value": 0
+ },
+ {
+ "id": "custom.width",
+ "value": 130
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "AI (HBM)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 89
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "AI (L2 Cache)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 103
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "AI (L1 Cache)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 114
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Performance"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 144
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Peak FLOPs"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "gflops"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "HBM"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "decbytes"
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 12,
+ "w": 24,
+ "x": 0,
+ "y": 12
+ },
+ "id": 213,
+ "interval": "2h",
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": [
+ {
+ "desc": true,
+ "displayName": "L1 Cache (Bytes)"
+ }
+ ]
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "HV80ot2nz"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n\n { \"$group\": { \n \"_id\": \"&KernelName\", \n \"Calls\": { \"$sum\": 1} ,\n \"TotalDuration\": { \"$sum\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n \"AvgDuration\": { \"$avg\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n\n \"Throughput\": {\n \"$avg\": { \"$divide\": [\n \n {\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]},\n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]}\n },\n\n \"total_flops\": {\n \"$avg\":{\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]}\n },\n\n \"valu_flops\": {\n \"$avg\": { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] }\n ]}\n },\n \n \"mfma_flops_f16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] } },\n \"mfma_flops_bf16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] } },\n \"mfma_flops_f32\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] } },\n \"mfma_flops_f64\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] } },\n\n\n \"LDS_data\": {\n \"$avg\": { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 128 ]} \n },\n\n \"L1cache_data\": {\n \"$avg\": { \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64] } \n },\n\n \"L2cache_data\": {\n \"$avg\": {\n \"$multiply\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \n \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, 64]}\n },\n\n \"hbm_data\": {\n \"$avg\": {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n }\n },\n \"hbm_bw\": {\n \"$avg\": {\n \"$divide\": [\n {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n },\n {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}\n ]\n\n }\n }\n\n }},\n \n {\"$sort\": { \"TotalDuration\": -1 }},\n \n { \"$limit\": $TopN },\n\n {\"$addFields\": {\n \"ai_L1\": { \"$cond\": [\n {\"$ne\": [\"&L1cache_data\", 0]},\n {\"$divide\": [\"&total_flops\", \"&L1cache_data\"]},\n \"\"\n ]},\n \"ai_L2\": { \"$cond\": [\n {\"$ne\": [\"&L2cache_data\", 0]},\n {\"$divide\": [\"&total_flops\", \"&L2cache_data\"]},\n \"\"\n ]},\n \"ai_hbm\": { \"$cond\": [\n {\"$ne\": [\"&hbm_data\", 0]},\n {\"$divide\": [\"&total_flops\", \"&hbm_data\"]},\n \"\"\n ]}\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Top Kernels",
+ "transformations": [
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "AvgDuration": 5,
+ "Calls": 1,
+ "L1cache_data": 16,
+ "L2cache_data": 17,
+ "LDS_data": 15,
+ "Throughput": 2,
+ "TotalDuration": 4,
+ "_id": 0,
+ "ai_L1": 6,
+ "ai_L2": 7,
+ "ai_hbm": 8,
+ "hbm_bw": 3,
+ "hbm_data": 18,
+ "mfma_flops_bf16": 12,
+ "mfma_flops_f16": 11,
+ "mfma_flops_f32": 13,
+ "mfma_flops_f64": 14,
+ "total_flops": 9,
+ "valu_flops": 10
+ },
+ "renameByName": {
+ "AvgDuration": "Avg Duration",
+ "Calls": "",
+ "L1cache_data": "Vector L1D Cache",
+ "L2cache_data": "L2 Cache",
+ "LDS_data": "LDS",
+ "Throughput": "Performance",
+ "TotalDuration": "Total Duration",
+ "_id": "Name",
+ "ai_L1": "AI (Vector L1D Cache)",
+ "ai_L2": "AI (L2 Cache)",
+ "ai_hbm": "AI (HBM)",
+ "hbm_bw": "HBM BW ",
+ "hbm_data": "HBM",
+ "mfma_flops_bf16": "MFMA FLOPs (BF16)",
+ "mfma_flops_f16": "MFMA FLOPs (F16)",
+ "mfma_flops_f32": "MFMA FLOPs (F32)",
+ "mfma_flops_f64": "MFMA FLOPs (F64)",
+ "peak_flops": "Peak FLOPs",
+ "total_flops": "Total FLOPs",
+ "valu_flops": "VALU FLOPs"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "percentage",
+ "steps": [
+ {
+ "color": "transparent"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "TotalDuration"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "ns"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg Duration"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "ns"
+ },
+ {
+ "id": "custom.width",
+ "value": 138
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "LDS "
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "decbytes"
+ },
+ {
+ "id": "custom.width",
+ "value": 110
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L1 Cache"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "decbytes"
+ },
+ {
+ "id": "custom.width",
+ "value": 95
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L2 Cache"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "decbytes"
+ },
+ {
+ "id": "custom.width",
+ "value": 87
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "HBM BW "
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "GBs"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Calls"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 69
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Name"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 165
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Total Duration"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 153
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (F16)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 143
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (BF16)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 155
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (F32)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 146
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "MFMA FLOPs (F64)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 146
+ },
+ {
+ "id": "decimals",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Throughput"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "gflops"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Total FLOPs"
+ },
+ "properties": [
+ {
+ "id": "decimals",
+ "value": 0
+ },
+ {
+ "id": "custom.width",
+ "value": 141
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "VALU FLOPs"
+ },
+ "properties": [
+ {
+ "id": "decimals",
+ "value": 0
+ },
+ {
+ "id": "custom.width",
+ "value": 130
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "AI (HBM)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 89
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "AI (L2 Cache)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 103
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "AI (L1 Cache)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 114
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "LDS (Bytes)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 98
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "HBM"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 124
+ },
+ {
+ "id": "unit",
+ "value": "decbytes"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Dispatch"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 108
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 12,
+ "w": 24,
+ "x": 0,
+ "y": 24
+ },
+ "id": 251,
+ "interval": "2h",
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "HV80ot2nz"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n\n { \"$group\": { \n \"_id\": \"&Index\", \n \"Calls\": { \"$sum\": 1} ,\n \"TotalDuration\": { \"$sum\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n \"AvgDuration\": { \"$avg\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n\n \"Throughput\": {\n \"$avg\": { \"$divide\": [\n \n {\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]},\n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]}\n },\n\n \"total_flops\": {\n \"$avg\":{\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]}\n },\n\n \"valu_flops\": {\n \"$avg\": { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] }\n ]}\n },\n \n \"mfma_flops_f16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] } },\n \"mfma_flops_bf16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] } },\n \"mfma_flops_f32\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] } },\n \"mfma_flops_f64\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] } },\n\n\n \"LDS_data\": {\n \"$avg\": { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 128]\n } \n },\n\n \"L1cache_data\": {\n \"$avg\": { \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64] } \n },\n\n \"L2cache_data\": {\n \"$avg\": {\n \"$multiply\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \n \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, 64]}\n },\n\n \"hbm_data\": {\n \"$avg\": {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n }\n },\n\n \"hbm_bw\": {\n \"$avg\": {\n \"$divide\": [\n {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n },\n {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}\n ]\n\n }\n }\n\n }},\n \n {\"$sort\": { \"TotalDuration\": -1 }},\n { \"$limit\": $TopN },\n\n {\"$addFields\": {\n \"ai_L1\": { \"$cond\": [\n {\"$ne\": [\"&L1cache_data\", 0]},\n {\"$divide\": [\"&total_flops\", \"&L1cache_data\"]},\n \"\"\n ]},\n \"ai_L2\": { \"$cond\": [\n {\"$ne\": [\"&L2cache_data\", 0]},\n {\"$divide\": [\"&total_flops\", \"&L2cache_data\"]},\n \"\"\n ]},\n \"ai_hbm\": { \"$cond\": [\n {\"$ne\": [\"&hbm_data\", 0]},\n {\"$divide\": [\"&total_flops\", \"&hbm_data\"]},\n \"\"\n ]}\n\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Top Dispatches",
+ "transformations": [
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "AvgDuration": 5,
+ "Calls": 1,
+ "L1cache_data": 16,
+ "L2cache_data": 17,
+ "LDS_data": 15,
+ "Throughput": 2,
+ "TotalDuration": 4,
+ "_id": 0,
+ "ai_L1": 6,
+ "ai_L2": 7,
+ "ai_hbm": 8,
+ "hbm_bw": 3,
+ "hbm_data": 18,
+ "mfma_flops_bf16": 12,
+ "mfma_flops_f16": 11,
+ "mfma_flops_f32": 13,
+ "mfma_flops_f64": 14,
+ "peak_flops": 19,
+ "total_flops": 9,
+ "valu_flops": 10
+ },
+ "renameByName": {
+ "AvgDuration": "Avg Duration",
+ "Calls": "",
+ "L1cache_data": "Vector L1D Cache",
+ "L2cache_data": "L2 Cache",
+ "LDS_data": "LDS ",
+ "Throughput": "Performance",
+ "TotalDuration": "Total Duration",
+ "_id": "Dispatch",
+ "ai_L1": "AI (Vector L1D Cache)",
+ "ai_L2": "AI (L2 Cache)",
+ "ai_hbm": "AI (HBM)",
+ "hbm_bw": "HBM BW ",
+ "hbm_data": "HBM",
+ "mfma_flops_bf16": "MFMA FLOPs (BF16)",
+ "mfma_flops_f16": "MFMA FLOPs (F16)",
+ "mfma_flops_f32": "MFMA FLOPs (F32)",
+ "mfma_flops_f64": "MFMA FLOPs (F64)",
+ "total_flops": "Total FLOPs",
+ "valu_flops": "VALU FLOPs"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Kernel Statistics",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 3
+ },
+ "id": 40,
+ "panels": [
+ {
+ "description": "All transaction units default to Billion, when per-sec norm is used",
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 13,
+ "w": 24,
+ "x": 0,
+ "y": 4
+ },
+ "id": 285,
+ "options": {
+ "addAllIDs": false,
+ "captureMappings": false,
+ "eventAutoComplete": true,
+ "eventSource": "options.animateLogo(svgmap, data);\r\nconsole.log(\"Starting render\");\r\nlet buff = data.series[0].fields[2].values.buffer;\r\nlet valueCount = buff.length;\r\nconsole.log(\"The buff is \", valueCount, \" long\");\r\n\r\nsvgmap.wave_life_.text(buff[0]);\r\nsvgmap.active_cu_.text(buff[1]);\r\nsvgmap.salu_.text(buff[2]);\r\nsvgmap.smem_.text(buff[3]);\r\nsvgmap.valu_.text(buff[4]);\r\nsvgmap.mfma_.text(buff[5]);\r\nsvgmap.vmem_.text(buff[6]);\r\nsvgmap.lds_.text(buff[7]);\r\nsvgmap.gws_.text(buff[8]);\r\nsvgmap.br_.text(buff[9]);\r\nsvgmap.vgpr_.text(buff[10]);\r\nsvgmap.sgpr_.text(buff[11]);\r\nsvgmap.lds_alloc_.text(buff[12]);\r\nsvgmap.scratch_alloc_.text(buff[13]);\r\nsvgmap.wavefronts_.text(buff[14]);\r\nsvgmap.workgroups_.text(buff[15]);\r\nsvgmap.lds_req_.text(buff[16]);\r\nsvgmap.il1_fetch_.text(buff[17]);\r\nsvgmap.il1_hit_.text(buff[18]);\r\nsvgmap.il1_l2_rd_.text(buff[19]);\r\nsvgmap.sl1_rd_.text(buff[20]);\r\nsvgmap.sl1_hit_.text(buff[21]);\r\nsvgmap.sl1_l2_rd_.text(buff[22]);\r\nsvgmap.sl1_l2_wr_.text(buff[23]);\r\nsvgmap.sl1_l2_atom_.text(buff[24]);\r\nsvgmap.vl1_rd_.text(buff[25]);\r\nsvgmap.vl1_wr_.text(buff[26]);\r\nsvgmap.vl1_atom_.text(buff[27]);\r\nsvgmap.vl1_hit_.text(buff[28]);\r\nsvgmap.vl1_lat_.text(buff[29]);\r\nsvgmap.vl1_l2_rd_.text(buff[30]);\r\nsvgmap.vl1_l2_wr_.text(buff[31]);\r\nsvgmap.vl1_l2_atom_.text(buff[32]);\r\nsvgmap.l2_rd_.text(buff[33]);\r\nsvgmap.l2_wr_.text(buff[34])\r\nsvgmap.l2_atom_.text(buff[35]);\r\nsvgmap.l2_hit_.text(buff[36]);\r\nsvgmap.l2_rd_lat_.text(buff[37]);\r\nsvgmap.l2_wr_lat_.text(buff[38]);\r\nsvgmap.fabric_rd_lat_.text(buff[39]);\r\nsvgmap.fabric_wr_lat_.text(buff[40]);\r\nsvgmap.fabric_atom_lat_.text(buff[41]);\r\nsvgmap.l2_fabric_rd_.text(buff[42]);\r\nsvgmap.l2_fabric_wr_.text(buff[43]);\r\nsvgmap.l2_fabric_atom_.text(buff[44]);\r\nsvgmap.hbm_rd_.text(buff[45]);\r\nsvgmap.hbm_wr_.text(buff[46]);\r\nsvgmap.lds_util_.text(buff[47]);\r\nsvgmap.vl1_coales_.text(buff[48]);\r\nsvgmap.vl1_stall_.text(buff[49]);\r\nsvgmap.wave_occ_.text(buff[50]);\r\nsvgmap.lds_lat_.text(buff[51]);\r\nsvgmap.il1_lat_.text(buff[52]);\r\nsvgmap.sl1_lat_.text(buff[53]);\r\nsvgmap.gds_req_.text(buff[54]);",
+ "initAutoComplete": true,
+ "initSource": "options.animateLogo = (svgmap, data) => {\r\n \r\n}\r\n ",
+ "svgMappings": [
+ {
+ "mappedName": "wave_life_",
+ "svgId": "wave_life"
+ },
+ {
+ "mappedName": "wave_occ_",
+ "svgId": "wave_occ"
+ },
+ {
+ "mappedName": "salu_",
+ "svgId": "salu"
+ },
+ {
+ "mappedName": "smem_",
+ "svgId": "smem"
+ },
+ {
+ "mappedName": "valu_",
+ "svgId": "valu"
+ },
+ {
+ "mappedName": "mfma_",
+ "svgId": "mfma"
+ },
+ {
+ "mappedName": "vmem_",
+ "svgId": "vmem"
+ },
+ {
+ "mappedName": "lds_",
+ "svgId": "lds"
+ },
+ {
+ "mappedName": "gws_",
+ "svgId": "gws"
+ },
+ {
+ "mappedName": "br_",
+ "svgId": "br"
+ },
+ {
+ "mappedName": "active_cu_",
+ "svgId": "active_cu"
+ },
+ {
+ "mappedName": "vgpr_",
+ "svgId": "vgpr"
+ },
+ {
+ "mappedName": "sgpr_",
+ "svgId": "sgpr"
+ },
+ {
+ "mappedName": "lds_alloc_",
+ "svgId": "lds_alloc"
+ },
+ {
+ "mappedName": "scratch_alloc_",
+ "svgId": "scratch_alloc"
+ },
+ {
+ "mappedName": "wavefronts_",
+ "svgId": "wavefronts"
+ },
+ {
+ "mappedName": "workgroups_",
+ "svgId": "workgroups"
+ },
+ {
+ "mappedName": "lds_req_",
+ "svgId": "lds_req"
+ },
+ {
+ "mappedName": "vl1_wr_",
+ "svgId": "vl1_wr"
+ },
+ {
+ "mappedName": "vl1_atom_",
+ "svgId": "vl1_atom"
+ },
+ {
+ "mappedName": "sl1_rd_",
+ "svgId": "sl1_rd"
+ },
+ {
+ "mappedName": "il1_fetch_",
+ "svgId": "il1_fetch"
+ },
+ {
+ "mappedName": "lds_lat_",
+ "svgId": "lds_lat"
+ },
+ {
+ "mappedName": "lds_bw_",
+ "svgId": "lds_bw"
+ },
+ {
+ "mappedName": "lds_util_",
+ "svgId": "lds_util"
+ },
+ {
+ "mappedName": "vl1_hit_",
+ "svgId": "vl1_hit"
+ },
+ {
+ "mappedName": "vl1_lat_",
+ "svgId": "vl1_lat"
+ },
+ {
+ "mappedName": "vl1_coales_",
+ "svgId": "vl1_coales"
+ },
+ {
+ "mappedName": "vl1_stall_",
+ "svgId": "vl1_stall"
+ },
+ {
+ "mappedName": "sl1_hit_",
+ "svgId": "sl1_hit"
+ },
+ {
+ "mappedName": "sl1_lat_",
+ "svgId": "sl1_lat"
+ },
+ {
+ "mappedName": "il1_hit_",
+ "svgId": "il1_hit"
+ },
+ {
+ "mappedName": "il1_lat_",
+ "svgId": "il1_lat"
+ },
+ {
+ "mappedName": "sl1_l2_rd_",
+ "svgId": "sl1_l2_rd"
+ },
+ {
+ "mappedName": "sl1_l2_wr_",
+ "svgId": "sl1_l2_wr"
+ },
+ {
+ "mappedName": "sl1_l2_atom_",
+ "svgId": "sl1_l2_atom"
+ },
+ {
+ "mappedName": "il1_l2_rd_",
+ "svgId": "il1_l2_rd"
+ },
+ {
+ "mappedName": "sl1_l2_rd_",
+ "svgId": "sl1_l2_rd"
+ },
+ {
+ "mappedName": "sl1_l2_wr_",
+ "svgId": "sl1_l2_wr"
+ },
+ {
+ "mappedName": "sl1_l2_atom_",
+ "svgId": "sl1_l2_atom"
+ },
+ {
+ "mappedName": "l2_rd_",
+ "svgId": "l2_rd"
+ },
+ {
+ "mappedName": "l2_wr_",
+ "svgId": "l2_wr"
+ },
+ {
+ "mappedName": "l2_atom_",
+ "svgId": "l2_atom"
+ },
+ {
+ "mappedName": "l2_hit_",
+ "svgId": "l2_hit"
+ },
+ {
+ "mappedName": "l2_rd_lat_",
+ "svgId": "l2_rd_lat"
+ },
+ {
+ "mappedName": "l2_wr_lat_",
+ "svgId": "l2_wr_lat"
+ },
+ {
+ "mappedName": "l2_fabric_rd_",
+ "svgId": "l2_fabric_rd"
+ },
+ {
+ "mappedName": "l2_fabric_wr_",
+ "svgId": "l2_fabric_wr"
+ },
+ {
+ "mappedName": "l2_fabric_atom_",
+ "svgId": "l2_fabric_atom"
+ },
+ {
+ "mappedName": "fabric_rd_lat_",
+ "svgId": "fabric_rd_lat"
+ },
+ {
+ "mappedName": "fabric_wr_lat_",
+ "svgId": "fabric_wr_lat"
+ },
+ {
+ "mappedName": "fabric_atom_lat_",
+ "svgId": "fabric_atom_lat"
+ },
+ {
+ "mappedName": "fabric_hbm_rd_",
+ "svgId": "fabric_hbm_rd"
+ },
+ {
+ "mappedName": "fabric_hbm_wr_",
+ "svgId": "fabric_hbm_wr"
+ },
+ {
+ "mappedName": "vl1_rd_",
+ "svgId": "vl1_rd"
+ },
+ {
+ "mappedName": "vl1_l2_rd_",
+ "svgId": "vl1_l2_rd"
+ },
+ {
+ "mappedName": "vl1_l2_wr_",
+ "svgId": "vl1_l2_wr"
+ },
+ {
+ "mappedName": "vl1_l2_atom_",
+ "svgId": "vl1_l2_atom"
+ },
+ {
+ "mappedName": "hbm_rd_",
+ "svgId": "hbm_rd"
+ },
+ {
+ "mappedName": "hbm_wr_",
+ "svgId": "hbm_wr"
+ }
+ ],
+ "svgSource": "\r\n"
+ },
+ "pluginVersion": "8.4.0",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "rawQuery": true,
+ "refId": "pmc_perf",
+ "target": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"wave_life\": {\n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [\"&SQ_WAVES\", 0] },\n { \"$multiply\": [4, { \"$divide\": [\"&SQ_WAVE_CYCLES\", \"&SQ_WAVES\"] }] },\n null\n ]\n }\n },\n \"salu\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_SALU\", \"&denom\" ] }\n },\n \"smem\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_SMEM\", \"&denom\" ] }\n },\n \"valu\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_VALU\", \"&denom\"] }\n },\n \"mfma\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_MFMA\", \"&denom\"] }\n },\n \"vmem\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_VMEM\", \"&denom\"] }\n },\n \"lds_instr\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_LDS\", \"&denom\"] }\n },\n \"gws\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_GDS\", \"&denom\"] }\n },\n \"br\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_BRANCH\", \"&denom\"] }\n },\n \"vgpr\": {\n \"$avg\": \"&vgpr\"\n },\n \"sgpr\": {\n \"$avg\": \"&sgpr\"\n },\n \"lds_alloc\": {\n \"$avg\": \"&lds\"\n },\n \"scratch_alloc\": {\n \"$avg\": \"&scr\"\n },\n \"wavefronts\": {\n \"$avg\": \"&SPI_CSN_WAVE\"\n },\n \"workgroups\": {\n \"$avg\": \"&SPI_CSN_NUM_THREADGROUPS\"\n },\n \"lds_req\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_LDS\", \"&denom\"] }\n }, \n \"lds_util\": {\n \"$avg\": {\"$divide\":[ \n { \"$multiply\": [ 100, \"&SQ_LDS_IDX_ACTIVE\" ]}, \n {\"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}\n ]}\n },\n \"vl1_rd\": {\n \"$avg\": { \"$divide\": [\"&TCP_TOTAL_READ_sum\", \"&denom\"] }\n },\n \"vl1_wr\": {\n \"$avg\": { \"$divide\": [\"&TCP_TOTAL_WRITE_sum\", \"&denom\"] }\n },\n \"vl1_atom\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [\"&TCP_TOTAL_ATOMIC_WITH_RET_sum\", \"&TCP_TOTAL_ATOMIC_WITHOUT_RET_sum\"] }, \"&denom\"] }\n },\n \"il1_fetch\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_REQ\", \"&denom\"] }\n },\n \"il1_hit\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_REQ\"] }\n },\n \"il1_l2_req\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_INST_REQ\", \"&denom\"] }\n },\n \"sl1_rd\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ\", \"&denom\"] }\n },\n \"sl1_hit\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQC_DCACHE_REQ\", 0]},\n { \"$divide\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_REQ\"] },\n \"\"\n ]\n }\n},\n \"sl1_l2_rd\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_READ_REQ\", \"&denom\"] }\n },\n \"sl1_l2_wr\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_WRITE_REQ\", \"&denom\"] }\n },\n \"sl1_l2_atom\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_ATOMIC_REQ\", \"&denom\"] }\n },\n \"vl1_hit\": {\n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0] },\n { \"$subtract\": [100, { \"$divide\": [{ \"$multiply\": [100, { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }] }, \"&TCP_TOTAL_CACHE_ACCESSES_sum\"] }] },\n null\n ]\n }\n },\n \"vl1_lat\": {\n \"$avg\": { \n \"$cond\": [\n { \"$ne\": [\"&TCP_TA_TCP_STATE_READ_sum\", 0] },\n { \"$divide\": [\"&TCP_TCP_LATENCY_sum\", \"&TCP_TA_TCP_STATE_READ_sum\"] },\n null\n ]\n }\n },\n \"vl1_coales\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [\"&TCP_TOTAL_ACCESSES_sum\", 0] },\n { \"$divide\": [{\"$multiply\": [\"&TA_TOTAL_WAVEFRONTS_sum\", 64, 100]}, {\"$multiply\": [\"&TCP_TOTAL_ACCESSES_sum\", 4]}] },\n 0\n ]\n }\n },\n \"vl1_stall\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_TCR_TCP_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n \"\"\n ]\n }},\n \"vl1_l2_rd\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_READ_REQ_sum\", \"&denom\"] }\n },\n \"vl1_l2_wr\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"vl1_l2_atom\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [\"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, \"&denom\"] }\n },\n \"l2_rd\": {\n \"$avg\": { \"$divide\": [\"&TCC_READ_sum\", \"&denom\"] }\n },\n \"l2_wr\": {\n \"$avg\": { \"$divide\": [\"&TCC_WRITE_sum\", \"&denom\"] }\n },\n \"l2_atom\": {\n \"$avg\": { \"$divide\": [\"&TCC_ATOMIC_sum\", \"&denom\"] }\n },\n \"l2_hit\": {\n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [{ \"$add\": [\"&TCC_HIT_sum\", \"&TCC_MISS_sum\"] }, 0] },\n { \"$divide\": [{ \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [\"&TCC_HIT_sum\", \"&TCC_MISS_sum\"] }] },\n null\n ]\n }\n },\n \"l2_rd_lat\": {\n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [{ \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }, 0] },\n { \"$divide\": [\"&TCP_TCC_READ_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }] },\n null\n ]\n }\n },\n \"l2_wr_lat\": {\n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [{ \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, 0] },\n { \"$divide\": [\"&TCP_TCC_WRITE_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }] },\n null\n ]\n }\n },\n \"fabric_rd_lat\": {\n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [\"&TCC_EA_RDREQ_sum\", 0] },\n { \"$divide\": [\"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\"] },\n null\n ]\n }\n },\n \"fabric_wr_lat\": { \n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [\"&TCC_EA_WRREQ_sum\", 0] },\n { \"$divide\": [\"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\"] },\n null\n ]\n }\n },\n \"fabric_atom_lat\": {\n \"$avg\": {\n \"$cond\": [\n { \"$ne\": [\"&TCC_EA_ATOMIC_sum\", 0] },\n { \"$divide\": [\"&TCC_EA_ATOMIC_LEVEL_sum\", \"&TCC_EA_ATOMIC_sum\"] },\n null\n ]\n }\n },\n \"l2_fabric_rd\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_RDREQ_sum\", \"&denom\"] }\n },\n \"l2_fabric_wr\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_WRREQ_sum\", \"&denom\"] }\n },\n \"l2_fabric_atom\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_ATOMIC_sum\", \"&denom\"] }\n },\n \"hbm_rd\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_RDREQ_DRAM_sum\", \"&denom\"] }\n },\n \"hbm_wr\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_WRREQ_DRAM_sum\", \"&denom\"] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Wave Life\",\n \"Alias\": \"wave_life_\",\n \"Value\": { \"$round\": [\"&wave_life\", 0] }\n },\n {\n \"Metric\": \"Active CUs\",\n \"Alias\": \"active_cu_\",\n \"Value\": {\"$concat\": [\"$numActiveCUs\", \"/\", \"$numCU\"]}\n },\n {\n \"Metric\": \"SALU\",\n \"Alias\": \"salu_\",\n \"Value\": { \"$round\": [\"&salu\", 0] }\n },\n {\n \"Metric\": \"SMEM\",\n \"Alias\": \"smem_\",\n \"Value\": { \"$round\": [\"&smem\", 0] }\n },\n {\n \"Metric\": \"VALU\",\n \"Alias\": \"valu_\",\n \"Value\": { \"$round\": [\"&valu\", 0] }\n },\n {\n \"Metric\": \"MFMA\",\n \"Alias\": \"mfma_\",\n \"Value\": { \"$round\": [\"&mfma\", 0] }\n },\n {\n \"Metric\": \"VMEM\",\n \"Alias\": \"vmem_\",\n \"Value\": { \"$round\": [\"&vmem\", 0] }\n },\n {\n \"Metric\": \"LDS\",\n \"Alias\": \"lds_\",\n \"Value\": { \"$round\": [\"&lds_instr\", 0] }\n },\n {\n \"Metric\": \"GWS\",\n \"Alias\": \"gws_\",\n \"Value\": { \"$round\": [\"&gws\", 0] }\n },\n {\n \"Metric\": \"BR\",\n \"Alias\": \"br_\",\n \"Value\": { \"$round\": [\"&br\", 0] }\n },\n {\n \"Metric\": \"VGPR\",\n \"Alias\": \"vgpr_\",\n \"Value\": { \"$round\": [\"&vgpr\", 0] }\n },\n {\n \"Metric\": \"SGPR\",\n \"Alias\": \"sgpr_\",\n \"Value\": { \"$round\": [\"&sgpr\", 0] }\n },\n {\n \"Metric\": \"LDS Allocation\",\n \"Alias\": \"lds_alloc_\",\n \"Value\": { \"$round\": [\"&lds_alloc\", 0] }\n },\n {\n \"Metric\": \"Scratch Allocation\",\n \"Alias\": \"scratch_alloc_\",\n \"Value\": { \"$round\": [\"&scratch_alloc\", 0] }\n },\n {\n \"Metric\": \"Wavefronts\",\n \"Alias\": \"wavefronts_\",\n \"Value\": { \"$round\": [\"&wavefronts\", 0] }\n },\n {\n \"Metric\": \"Workgroups\",\n \"Alias\": \"workgroups_\",\n \"Value\": { \"$round\": [\"&workgroups\", 0] }\n },\n {\n \"Metric\": \"LDS Req\",\n \"Alias\": \"lds_req_\",\n \"Value\": { \"$round\": [\"&lds_req\", 0] }\n },\n {\n \"Metric\": \"IL1 Fetch\",\n \"Alias\": \"il1_fetch_\",\n \"Value\": { \"$round\": [\"&il1_fetch\", 0] }\n },\n {\n \"Metric\": \"IL1 Hit\",\n \"Alias\": \"il1_hit_\",\n \"Value\": { \"$round\": [{ \"$multiply\": [\"&il1_hit\", 100] }, 0] }\n },\n {\n \"Metric\": \"IL1_L2 Rd\",\n \"Alias\": \"il1_l2_req_\",\n \"Value\": { \"$round\": [\"&il1_l2_req\", 0] }\n },\n {\n \"Metric\": \"vL1D Rd\",\n \"Alias\": \"sl1_rd_\",\n \"Value\": { \"$round\": [\"&sl1_rd\", 0] }\n },\n {\n \"Metric\": \"vL1D Hit\",\n \"Alias\": \"sl1_hit_\",\n \"Value\": { \"$round\": [{ \"$multiply\": [\"&sl1_hit\", 100] }, 0] }\n },\n {\n \"Metric\": \"vL1D_L2 Rd\",\n \"Alias\": \"sl1_l2_rd_\",\n \"Value\": { \"$round\": [\"&sl1_l2_rd\", 0] }\n },\n {\n \"Metric\": \"vL1D_L2 Wr\",\n \"Alias\": \"sl1_l2_wr_\",\n \"Value\": { \"$round\": [\"&sl1_l2_wr\", 0] }\n },\n {\n \"Metric\": \"vL1D_L2 Atomic\",\n \"Alias\": \"sl1_l2_atom_\",\n \"Value\": { \"$round\": [\"&sl1_l2_atom\", 0] }\n },\n {\n \"Metric\": \"VL1 Rd\",\n \"Alias\": \"vl1_rd_\",\n \"Value\": { \"$round\": [\"&vl1_rd\", 0] }\n },\n {\n \"Metric\": \"VL1 Wr\",\n \"Alias\": \"vl1_wr_\",\n \"Value\": { \"$round\": [\"&vl1_wr\", 0] }\n },\n {\n \"Metric\": \"VL1 Atomic\",\n \"Alias\": \"vl1_atom_\",\n \"Value\": { \"$round\": [\"&vl1_atom\", 0] }\n },\n {\n \"Metric\": \"VL1 Hit\",\n \"Alias\": \"vl1_hit_\",\n \"Value\": { \"$round\": [\"&vl1_hit\", 0] }\n },\n {\n \"Metric\": \"VL1 Lat\",\n \"Alias\": \"vl1_lat_\",\n \"Value\": { \"$round\": [\"&vl1_lat\", 0] }\n },\n {\n \"Metric\": \"VL1_L2 Rd\",\n \"Alias\": \"vl1_l2_rd_\",\n \"Value\": { \"$round\": [\"&vl1_l2_rd\", 0] }\n },\n {\n \"Metric\": \"VL1_L2 Wr\",\n \"Alias\": \"vl1_l2_wr_\",\n \"Value\": { \"$round\": [\"&vl1_l2_wr\", 0] }\n },\n {\n \"Metric\": \"vL1_L2 Atomic\",\n \"Alias\": \"vl1_l2_atom_\",\n \"Value\": { \"$round\": [\"&vl1_l2_atom\", 0] }\n },\n {\n \"Metric\": \"L2 Rd\",\n \"Alias\": \"l2_rd_\",\n \"Value\": { \"$round\": [\"&l2_rd\", 0] }\n },\n {\n \"Metric\": \"L2 Wr\",\n \"Alias\": \"l2_wr_\",\n \"Value\": { \"$round\": [\"&l2_wr\", 0] }\n },\n {\n \"Metric\": \"L2 Atomic\",\n \"Alias\": \"l2_atom_\",\n \"Value\": { \"$round\": [\"&l2_atom\", 0] }\n },\n {\n \"Metric\": \"L2 Hit\",\n \"Alias\": \"l2_hit_\",\n \"Value\": { \"$round\": [\"&l2_hit\", 0] }\n },\n {\n \"Metric\": \"L2 Rd Lat\",\n \"Alias\": \"l2_rd_lat_\",\n \"Value\": { \"$round\": [\"&l2_rd_lat\", 0] }\n },\n {\n \"Metric\": \"L2 Wr Lat\",\n \"Alias\": \"l2_wr_lat_\",\n \"Value\": { \"$round\": [\"&l2_wr_lat\", 0] }\n },\n {\n \"Metric\": \"Fabric Rd Lat\",\n \"Alias\": \"fabric_rd_lat_\",\n \"Value\": { \"$round\": [\"&fabric_rd_lat\", 0] }\n },\n {\n \"Metric\": \"Fabric Wr Lat\",\n \"Alias\": \"fabric_wr_lat_\",\n \"Value\": { \"$round\": [\"&fabric_wr_lat\", 0] }\n },\n {\n \"Metric\": \"Fabric Atomic Lat\",\n \"Alias\": \"fabric_atom_lat_\",\n \"Value\": { \"$round\": [\"&fabric_atom_lat\", 0] }\n },\n {\n \"Metric\": \"Fabric_L2 Rd\",\n \"Alias\": \"l2_fabric_rd_\",\n \"Value\": { \"$round\": [\"&l2_fabric_rd\", 0] }\n },\n {\n \"Metric\": \"Fabric_L2 Wr\",\n \"Alias\": \"l2_fabric_wr_\",\n \"Value\": { \"$round\": [\"&l2_fabric_wr\", 0] }\n },\n {\n \"Metric\": \"Fabric_l2 Atomic\",\n \"Alias\": \"l2_fabric_atom_\",\n \"Value\": { \"$round\": [\"&l2_fabric_atom\", 0] }\n },\n {\n \"Metric\": \"HBM Rd\",\n \"Alias\": \"hbm_rd_\",\n \"Value\": { \"$round\": [\"&hbm_rd\", 0] }\n },\n {\n \"Metric\": \"HBM Wr\",\n \"Alias\": \"hbm_wr_\",\n \"Value\": { \"$round\": [\"&hbm_wr\", 0] }\n },\n {\n \"Metric\": \"LDS Util\",\n \"Alias\": \"lds_util_\",\n \"Value\": { \"$round\": [\"&lds_util\", 0] }\n },\n {\n \"Metric\": \"VL1 Coalesce\",\n \"Alias\": \"vl1_coales_\",\n \"Value\": { \"$round\": [\"&vl1_coales\", 0]}\n },\n {\n \"Metric\": \"VL1 Stall\",\n \"Alias\": \"vl1_stall_\",\n \"Value\": { \"$round\": [\"&vl1_stall\", 0]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"$array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"$array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_LEVEL_WAVES",
+ "target": "$Workload1.SQ_LEVEL_WAVES.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"wave_occ\": {\n \"$avg\": { \"$divide\": [{ \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\",\"&GRBM_GUI_ACTIVE\"] }, $numActiveCUs]}\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Wave Occupancy\",\n \"Alias\": \"wave_occ_\",\n \"Value\":{ \"$round\": [\"&wave_occ\", 0] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_INST_LEVEL_LDS",
+ "target": "$Workload1.SQ_INST_LEVEL_LDS.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"lds_lat\": {\n \"$avg\": { \n \"$cond\": [\n { \"$ne\": [\"&SQ_INSTS_LDS\", 0] },\n { \"$divide\": [\"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\"] },\n null\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"LDS Lat\",\n \"Alias\": \"lds_lat_\",\n \"Value\":{ \"$round\": [\"&lds_lat\", 0] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQC_ICACHE_INFLIGHT",
+ "target": "$Workload1.pmc_perf.aggregate([\n\t{\"$match\": {\n\t\t\"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \t\t\"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \t\t\"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n \t}},\n\t{\"$lookup\": {\n\t\t\"from\": \"SQ_IFETCH_LEVEL\",\n\t\t\"localField\": \"Index\",\n\t\t\"foreignField\": \"Index\",\n\t\t\"as\": \"SQ_IFETCH_LEVEL\",\n\t\t\"pipeline\": [\n\t\t\t{\"$match\": {\n\t\t\t\t\"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \t\t\t\t\"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \t\t\t\t\"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n \t\t\t}},\n\t\t\t{\"$project\":{\n\t\t\t\t\"_id\": 0,\n\t\t\t\t\"SQ_ACCUM_PREV_HIRES\": 1\n\t\t\t}}\n\t\t]\n\t}},\n\t{\"$unwind\":{\n\t\t\"path\": \"&SQ_IFETCH_LEVEL\"\n\t}},\n\t{\"$group\":{\n\t\t\"_id\": null,\n\t\t\"il1_lat\": {\n\t\t\t\"$avg\":{\n\t\t\t\t\"$cond\":[\n\t\t\t\t\t\t{\"$ne\":[\"&SQC_ICACHE_REQ\",0]},\n\t\t\t\t\t\t{\"$divide\":[\"&SQ_IFETCH_LEVEL.SQ_ACCUM_PREV_HIRES\",\"&SQC_ICACHE_REQ\"]},\n\t\t\t\t\t\tnull\n\t\t\t\t\t]\n\t\t\t}\n\t\t} \n\t}},\n\t{\"$set\": {\n \t\t\"array\": [\n \t\t{\n \t\t\t\"Metric\": \"IL1 Lat\",\n \t\t\t\"Alias\": \"il1_lat_\",\n \t\t\t\"Value\": { \"$round\": [\"&il1_lat\", 0] }\n \t\t}\n \t\t]\n\t}},\n \t{\"$unwind\": {\n \t\t\"path\": \"&array\"\n \t}},\n \t{\"$replaceRoot\": {\n \t\t\"newRoot\": \"&array\"\n \t}}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQC_DCACHE_INFLIGHT_LEVEL",
+ "target": "$Workload1.pmc_perf.aggregate([\n\t{\"$match\": {\n\t\t\"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \t\t\"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \t\t\"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n \t}},\n\t{\"$lookup\": {\n\t\t\"from\": \"SQ_IFETCH_LEVEL\",\n\t\t\"localField\": \"Index\",\n\t\t\"foreignField\": \"Index\",\n\t\t\"as\": \"SQ_IFETCH_LEVEL\",\n\t\t\"pipeline\": [\n\t\t\t{\"$match\": {\n\t\t\t\t\"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \t\t\t\t\"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \t\t\t\t\"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n \t\t\t}},\n\t\t\t{\"$project\":{\n\t\t\t\t\"_id\": 0,\n\t\t\t\t\"SQ_ACCUM_PREV_HIRES\": 1\n\t\t\t}}\n\t\t]\n\t}},\n\t{\"$unwind\":{\n\t\t\"path\": \"&SQ_IFETCH_LEVEL\"\n\t}},\n\t{\"$group\":{\n\t\t\"_id\": null,\n\t\t\"sl1_lat\": {\n\t\t\t\"$avg\":{\n\t\t\t\t\"$cond\":[\n\t\t\t\t\t\t{\"$ne\":[\"&SQC_DCACHE_REQ\",0]},\n\t\t\t\t\t\t{\"$divide\":[\"&SQ_IFETCH_LEVEL.SQ_ACCUM_PREV_HIRES\",\"&SQC_DCACHE_REQ\"]},\n\t\t\t\t\t\tnull\n\t\t\t\t\t]\n\t\t\t}\n\t\t} \n\t}},\n\t{\"$set\": {\n \t\t\"array\": [\n \t\t{\n \t\t\t\"Metric\": \"vL1D Lat\",\n \t\t\t\"Alias\": \"sl1_lat_\",\n \t\t\t\"Value\": { \"$round\": [\"&sl1_lat\", 0] }\n \t\t}\n \t\t]\n\t}},\n \t{\"$unwind\": {\n \t\t\"path\": \"&array\"\n \t}},\n \t{\"$replaceRoot\": {\n \t\t\"newRoot\": \"&array\"\n \t}}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Memory Chart (Normalization: $normUnit\")",
+ "transformations": [
+ {
+ "id": "convertFieldType",
+ "options": {
+ "conversions": [
+ {
+ "destinationType": "string",
+ "targetField": "Value"
+ }
+ ],
+ "fields": {}
+ }
+ },
+ {
+ "id": "merge",
+ "options": {}
+ }
+ ],
+ "type": "amd-custom-svg"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Memory Chart Analysis",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 4
+ },
+ "id": 241,
+ "panels": [
+ {
+ "gridPos": {
+ "h": 28,
+ "w": 24,
+ "x": 0,
+ "y": 5
+ },
+ "id": 253,
+ "pconfig": {
+ "fixScale": "",
+ "layout": {
+ "dragmode": "zoom",
+ "font": {
+ "family": "\"Open Sans\", Helvetica, Arial, sans-serif"
+ },
+ "hovermode": "closest",
+ "legend": {
+ "orientation": "v"
+ },
+ "showlegend": true,
+ "xaxis": {
+ "range": [
+ -2,
+ 3.8
+ ],
+ "rangemode": "between",
+ "showgrid": true,
+ "title": "Arithmetic Intensity (FLOP/Byte)",
+ "type": "log",
+ "zeroline": false
+ },
+ "yaxis": {
+ "rangemode": "normal",
+ "showgrid": true,
+ "title": "Performance (GFLOP/sec)",
+ "type": "log",
+ "zeroline": false
+ },
+ "zaxis": {
+ "rangemode": "normal",
+ "showgrid": true,
+ "type": "linear",
+ "zeroline": false
+ }
+ },
+ "loadFromCDN": false,
+ "settings": {
+ "displayModeBar": false,
+ "type": "scatter"
+ },
+ "showAnnotations": true,
+ "traces": [
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "xrange",
+ "y": "roofline_hbm"
+ },
+ "name": "HBM-VLAU",
+ "settings": {
+ "color_option": "ramp",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#33B5E5",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 15,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "circle"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L2"
+ },
+ "name": "L2-VALU",
+ "settings": {
+ "color_option": "ramp",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#33B5E5",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 15,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "circle"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L1"
+ },
+ "name": "vL1D-VALU",
+ "settings": {
+ "color_option": "ramp",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#33B5E5",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 15,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "circle"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "LDSBw_peak",
+ "x": "xrange",
+ "y": "roofline_LDS"
+ },
+ "name": "LDS-VALU",
+ "settings": {
+ "color_option": "ramp",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#33B5E5",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 15,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "circle"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "cur_ai_hbm",
+ "y": "cur_perf"
+ },
+ "name": "Cur - HBM",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#F2495C",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "square"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "cur_ai_L2",
+ "y": "cur_perf"
+ },
+ "name": "Cur - L2",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#5794F2",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "diamond"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "cur_ai_L1",
+ "y": "cur_perf"
+ },
+ "name": "Cur - vL1D",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "base_ai_hbm",
+ "y": "base_perf"
+ },
+ "name": "Baseline - HBM",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#F2495C",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "square-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "base_ai_L2",
+ "y": "base_perf"
+ },
+ "name": "Baseline - L2",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#5794F2",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "diamond-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "base_ai_L1",
+ "y": "base_perf"
+ },
+ "name": "Baseline - vL1D",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "xrange",
+ "y": "roofline_hbm_MFMA"
+ },
+ "name": "HBM-MFMA",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L2_MFMA"
+ },
+ "name": "L2-MFMA",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L1_MFMA"
+ },
+ "name": "vL1D-MFMA",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "LDSBw_peak",
+ "x": "xrange",
+ "y": "roofline_LDS_MFMA"
+ },
+ "name": "LDS-MFMA",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ }
+ ]
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "rawQuery": true,
+ "refId": "HBM-VALU",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&FP32Flops\", \"&FP64Flops\"]\n },\n \"then\": \"&FP64Flops\",\n \"else\": \"&FP32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_hbm\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&HBMBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&HBMBw\"] },\n \"else\": \"$high_flop\"\n }\n },\n \"hbmBw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&HBMBw\", 1] },0, 32]}, \" GB/s\"] }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "HBM-MFMA",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&MFMAF32Flops\", \"&MFMAF64Flops\"]\n },\n \"then\": \"&MFMAF64Flops\",\n \"else\": \"&MFMAF32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_hbm_MFMA\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&HBMBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&HBMBw\"] },\n \"else\": \"$high_flop\"\n }\n }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L2-VALU",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&FP32Flops\", \"&FP64Flops\"]\n },\n \"then\": \"&FP64Flops\",\n \"else\": \"&FP32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L2\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L2Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L2Bw\"] },\n \"else\": \"$high_flop\"\n }\n },\n\n \"L2Bw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&L2Bw\", 1] },0, 32]}, \" GB/s\"] }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L1-VALU",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&FP32Flops\", \"&FP64Flops\"]\n },\n \"then\": \"&FP64Flops\",\n \"else\": \"&FP32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L1\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L1Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L1Bw\"] },\n \"else\": \"&high_flop\"\n }\n },\n\n \"L1Bw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&L1Bw\", 1] },0, 32]}, \" GB/s\"] }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "LDS",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&FP32Flops\", \"&FP64Flops\"]\n },\n \"then\": \"&FP64Flops\",\n \"else\": \"&FP32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_LDS\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&LDSBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&LDSBw\"] },\n \"else\": \"$high_flop\"\n }\n },\n\n \"LDSBw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&LDSBw\", 1] },0, 32]}, \" GB/s\"] }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "Cur Workload",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n { \"$group\": { \n \"_id\": \"&KernelName\", \n \"Calls\": { \"$sum\": 1} ,\n \"TotalDuration\": { \"$sum\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n \"AvgDuration\": { \"$avg\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n\n \"total_flops\": {\n \"$avg\":{\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]}\n },\n\n \"valu_flops\": {\n \"$avg\": { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] }\n ]}\n },\n \n \"mfma_flops_f16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] } },\n \"mfma_flops_bf16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] } },\n \"mfma_flops_f32\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] } },\n \"mfma_flops_f64\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] } },\n\n\n \"lds_data\": {\n \"$avg\": { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks\"}\n ]\n } \n },\n\n \"L1cache_data\": {\n \"$avg\": { \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64] } \n },\n\n \"L2cache_data\": {\n \"$avg\": {\n \"$multiply\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \n \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, 64]}\n },\n\n \"hbm_data\": {\n \"$avg\": {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n }\n }\n\n\n }},\n {\"$sort\": { \"TotalDuration\": -1 }},\n { \"$limit\": 10 },\n {\"$project\": {\n \"_id\": 0,\n \"Kernel\": \"&KernelName\",\n \"cur_ai_L1\": {\n \"$cond\": [\n { \"$ne\": [\"&L1cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L1cache_data\"] },\n 0\n ]\n },\n \"cur_ai_L2\": {\n \"$cond\": [\n { \"$ne\": [\"&L2cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L2cache_data\"] },\n 0\n ]\n },\n \"cur_ai_hbm\": {\n \"$cond\": [\n { \"$ne\": [\"&hbm_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&hbm_data\"] },\n 0\n ]\n },\n \"cur_perf\": { \n \"$cond\": [\n { \"$ne\": [\"&AvgDuration\", 0] },\n { \"$divide\": [\"&total_flops\", \"&AvgDuration\"] },\n 0\n ]\n }\n }}\n\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "Baseline Workload",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Roofline)\"}}\n }},\n { \"$group\": { \n \"_id\": \"&KernelName\", \n \"Calls\": { \"$sum\": 1} ,\n \"TotalDuration\": { \"$sum\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n \"AvgDuration\": { \"$avg\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n\n \"total_flops\": {\n \"$avg\":{\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]}\n },\n\n \"valu_flops\": {\n \"$avg\": { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] }\n ]}\n },\n \n \"mfma_flops_f16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] } },\n \"mfma_flops_bf16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] } },\n \"mfma_flops_f32\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] } },\n \"mfma_flops_f64\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] } },\n\n\n \"lds_data\": {\n \"$avg\": { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks\"}\n ]\n } \n },\n\n \"L1cache_data\": {\n \"$avg\": { \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64] } \n },\n\n \"L2cache_data\": {\n \"$avg\": {\n \"$multiply\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \n \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, 64]}\n },\n\n \"hbm_data\": {\n \"$avg\": {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n }\n }\n\n\n }},\n {\"$sort\": { \"TotalDuration\": -1 }},\n { \"$limit\": 10 },\n {\"$project\": {\n \"_id\": 0,\n \"Kernel\": \"&KernelName\",\n \"base_ai_L1\": {\n \"$cond\": [\n { \"$ne\": [\"&L1cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L1cache_data\"] },\n 0\n ]\n },\n \"base_ai_L2\": {\n \"$cond\": [\n { \"$ne\": [\"&L2cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L2cache_data\"] },\n 0\n ]\n },\n \"base_ai_hbm\": {\n \"$cond\": [\n { \"$ne\": [\"&hbm_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&hbm_data\"] },\n 0\n ]\n },\n \"base_perf\": { \n \"$cond\": [\n { \"$ne\": [\"&AvgDuration\", 0] },\n { \"$divide\": [\"&total_flops\", \"&AvgDuration\"] },\n 0\n ]\n }\n }}\n\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L2-MFMA",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&MFMAF32Flops\", \"&MFMAF64Flops\"]\n },\n \"then\": \"&MFMAF64Flops\",\n \"else\": \"&MFMAF32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L2_MFMA\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L2Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L2Bw\"] },\n \"else\": \"$high_flop\"\n }\n }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L1-MFMA",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&MFMAF32Flops\", \"&MFMAF64Flops\"]\n },\n \"then\": \"&MFMAF64Flops\",\n \"else\": \"&MFMAF32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L1_MFMA\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L1Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L1Bw\"] },\n \"else\": \"$high_flop\"\n }\n }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "jYrBWHfnz"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "LDS-MFMA",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [\"&MFMAF32Flops\", \"&MFMAF64Flops\"]\n },\n \"then\": \"&MFMAF64Flops\",\n \"else\": \"&MFMAF32Flops\"\n }\n }\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_LDS_MFMA\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&LDSBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&LDSBw\"] },\n \"else\": \"$high_flop\"\n }\n }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Empirical Roofline FP32/FP64 (MI200)",
+ "type": "natel-plotly-panel",
+ "version": 1
+ },
+ {
+ "gridPos": {
+ "h": 28,
+ "w": 24,
+ "x": 0,
+ "y": 33
+ },
+ "id": 312,
+ "pconfig": {
+ "fixScale": "",
+ "layout": {
+ "dragmode": "zoom",
+ "font": {
+ "family": "\"Open Sans\", Helvetica, Arial, sans-serif"
+ },
+ "hovermode": "closest",
+ "legend": {
+ "orientation": "v"
+ },
+ "showlegend": true,
+ "xaxis": {
+ "range": [
+ -2,
+ 3.8
+ ],
+ "rangemode": "between",
+ "showgrid": true,
+ "title": "Arithmetic Intensity (FLOP/Byte)",
+ "type": "log",
+ "zeroline": false
+ },
+ "yaxis": {
+ "rangemode": "normal",
+ "showgrid": true,
+ "title": "Performance (GFLOP/sec)",
+ "type": "log",
+ "zeroline": false
+ },
+ "zaxis": {
+ "rangemode": "normal",
+ "showgrid": true,
+ "type": "linear",
+ "zeroline": false
+ }
+ },
+ "loadFromCDN": false,
+ "settings": {
+ "displayModeBar": false,
+ "type": "scatter"
+ },
+ "showAnnotations": true,
+ "traces": [
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "cur_ai_hbm",
+ "y": "cur_perf"
+ },
+ "name": "Cur - HBM",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#F2495C",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "square"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "cur_ai_L2",
+ "y": "cur_perf"
+ },
+ "name": "Cur - L2",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#5794F2",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "diamond"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "cur_ai_L1",
+ "y": "cur_perf"
+ },
+ "name": "Cur - vL1D",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "base_ai_hbm",
+ "y": "base_perf"
+ },
+ "name": "Baseline - HBM",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#F2495C",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "square-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "base_ai_L2",
+ "y": "base_perf"
+ },
+ "name": "Baseline - L2",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#5794F2",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "diamond-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "base_ai_L1",
+ "y": "base_perf"
+ },
+ "name": "Baseline - vL1D",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": false,
+ "markers": true
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "xrange",
+ "y": "roofline_hbm_MFMA_fp16"
+ },
+ "name": "HBM-MFMA-FP16",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L2_MFMA_fp16"
+ },
+ "name": "L2-MFMA-FP16",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L1_MFMA_fp16"
+ },
+ "name": "vL1D-MFMA-FP16",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "LDSBw_peak",
+ "x": "xrange",
+ "y": "roofline_LDS_MFMA_fp16"
+ },
+ "name": "LDS-MFMA-FP16",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#005f81",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "hbmBw_peak",
+ "x": "xrange",
+ "y": "roofline_hbm_MFMA_i8"
+ },
+ "name": "HBM-MFMA-I8",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#FA6400",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L2Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L2_MFMA_i8"
+ },
+ "name": "L2-MFMA-I8",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#FA6400",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "L1Bw_peak",
+ "x": "xrange",
+ "y": "roofline_L1_MFMA_i8"
+ },
+ "name": "vL1D-MFMA-I8",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#FA6400",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ },
+ {
+ "mapping": {
+ "color": "n",
+ "text": "LDSBw_peak",
+ "x": "xrange",
+ "y": "roofline_LDS_MFMA_i8"
+ },
+ "name": "LDS-MFMA-I8",
+ "settings": {
+ "color_option": "solid",
+ "line": {
+ "color": "#FA6400",
+ "dash": "solid",
+ "shape": "linear",
+ "width": 2
+ },
+ "marker": {
+ "color": "#B877D9",
+ "colorscale": "YlOrRd",
+ "line": {
+ "color": "#DDD",
+ "width": 0
+ },
+ "showscale": false,
+ "size": 12,
+ "sizemin": 3,
+ "sizemode": "diameter",
+ "sizeref": 0.2,
+ "symbol": "star-open"
+ }
+ },
+ "show": {
+ "line": true,
+ "lines": true,
+ "markers": false
+ }
+ }
+ ]
+ },
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "HBM-MFMA-FP16",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAF16Flops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_hbm_MFMA_fp16\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&HBMBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&HBMBw\"] },\n \"else\": \"$high_flop\"\n }\n },\n \"hbmBw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&HBMBw\", 1] },0, 32]}, \" GB/s\"] }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "HBM-MFMA-I8",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAI8Ops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_hbm_MFMA_i8\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&HBMBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&HBMBw\"] },\n \"else\": \"$high_flop\"\n }\n }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "Cur Workload",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n { \"$group\": { \n \"_id\": \"&KernelName\", \n \"Calls\": { \"$sum\": 1} ,\n \"TotalDuration\": { \"$sum\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n \"AvgDuration\": { \"$avg\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n\n \"total_flops\": {\n \"$avg\":{\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]}\n },\n\n \"valu_flops\": {\n \"$avg\": { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] }\n ]}\n },\n \n \"mfma_flops_f16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] } },\n \"mfma_flops_bf16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] } },\n \"mfma_flops_f32\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] } },\n \"mfma_flops_f64\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] } },\n\n\n \"lds_data\": {\n \"$avg\": { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks\"}\n ]\n } \n },\n\n \"L1cache_data\": {\n \"$avg\": { \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64] } \n },\n\n \"L2cache_data\": {\n \"$avg\": {\n \"$multiply\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \n \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, 64]}\n },\n\n \"hbm_data\": {\n \"$avg\": {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n }\n }\n\n\n }},\n {\"$sort\": { \"TotalDuration\": -1 }},\n { \"$limit\": 10 },\n {\"$project\": {\n \"_id\": 0,\n \"Kernel\": \"&KernelName\",\n \"cur_ai_L1\": {\n \"$cond\": [\n { \"$ne\": [\"&L1cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L1cache_data\"] },\n 0\n ]\n },\n \"cur_ai_L2\": {\n \"$cond\": [\n { \"$ne\": [\"&L2cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L2cache_data\"] },\n 0\n ]\n },\n \"cur_ai_hbm\": {\n \"$cond\": [\n { \"$ne\": [\"&hbm_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&hbm_data\"] },\n 0\n ]\n },\n \"cur_perf\": { \n \"$cond\": [\n { \"$ne\": [\"&AvgDuration\", 0] },\n { \"$divide\": [\"&total_flops\", \"&AvgDuration\"] },\n 0\n ]\n }\n }}\n\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "Baseline Workload",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Roofline)\"}}\n }},\n { \"$group\": { \n \"_id\": \"&KernelName\", \n \"Calls\": { \"$sum\": 1} ,\n \"TotalDuration\": { \"$sum\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n \"AvgDuration\": { \"$avg\": {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]}},\n\n \"total_flops\": {\n \"$avg\":{\"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] },\n { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }\n ]}\n },\n\n \"valu_flops\": {\n \"$avg\": { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }, \"&SQ_INSTS_VALU_TRANS_F16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }, \"&SQ_INSTS_VALU_TRANS_F32\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }, \"&SQ_INSTS_VALU_TRANS_F64\"] }] }\n ]}\n },\n \n \"mfma_flops_f16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] } },\n \"mfma_flops_bf16\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] } },\n \"mfma_flops_f32\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] } },\n \"mfma_flops_f64\": { \"$avg\": { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] } },\n\n\n \"lds_data\": {\n \"$avg\": { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks\"}\n ]\n } \n },\n\n \"L1cache_data\": {\n \"$avg\": { \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64] } \n },\n\n \"L2cache_data\": {\n \"$avg\": {\n \"$multiply\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \n \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, 64]}\n },\n\n \"hbm_data\": {\n \"$avg\": {\n \"$add\": [ { \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] },\n { \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]},\n { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] }\n ]\n }\n }\n\n\n }},\n {\"$sort\": { \"TotalDuration\": -1 }},\n { \"$limit\": 10 },\n {\"$project\": {\n \"_id\": 0,\n \"Kernel\": \"&KernelName\",\n \"base_ai_L1\": {\n \"$cond\": [\n { \"$ne\": [\"&L1cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L1cache_data\"] },\n 0\n ]\n },\n \"base_ai_L2\": {\n \"$cond\": [\n { \"$ne\": [\"&L2cache_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&L2cache_data\"] },\n 0\n ]\n },\n \"base_ai_hbm\": {\n \"$cond\": [\n { \"$ne\": [\"&hbm_data\", 0] },\n {\"$divide\": [\"&total_flops\", \"&hbm_data\"] },\n 0\n ]\n },\n \"base_perf\": { \n \"$cond\": [\n { \"$ne\": [\"&AvgDuration\", 0] },\n { \"$divide\": [\"&total_flops\", \"&AvgDuration\"] },\n 0\n ]\n }\n }}\n\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L2-MFMA-FP16",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAF16Flops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L2_MFMA_fp16\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L2Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L2Bw\"] },\n \"else\": \"$high_flop\"\n }\n },\n \"L2Bw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&L2Bw\", 1] },0, 32]}, \" GB/s\"] }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L2-MFMA-I8",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAI8Ops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L2_MFMA_i8\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L2Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L2Bw\"] },\n \"else\": \"$high_flop\"\n }\n }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L1-MFMA-FP16",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAF16Flops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L1_MFMA_fp16\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L1Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L1Bw\"] },\n \"else\": \"$high_flop\"\n }\n },\n \"L1Bw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&L1Bw\", 1] },0, 32]}, \" GB/s\"] }\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "LJKvMZank"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "L1-MFMA-I8",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAI8Ops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_L1_MFMA_i8\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&L1Bw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&L1Bw\"] },\n \"else\": \"$high_flop\"\n }\n }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "jYrBWHfnz"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "LDS-MFMA-FP16",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAF16Flops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_LDS_MFMA_fp16\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&LDSBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&LDSBw\"] },\n \"else\": \"$high_flop\"\n }\n },\n \"LDSBw_peak\": { \"$concat\": [{\"$substr\":[{ \"$round\":[\"&LDSBw\", 1] },0, 32]}, \" GB/s\"] }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "jYrBWHfnz"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "LDS-MFMA-I8",
+ "target": "${Workload1}.roofline.aggregate([\n {\"$match\": {\n \"device\": { \"$in\": [${gpuFilter:raw}] }\n }},\n { \"$addFields\": {\n \"xaxis\": {\"$range\": [0, 50000]}\n }},\n { \"$addFields\": {\n \"high_flop\": \"&MFMAI8Ops\"\n }},\n { \"$addFields\": {\n \"cte\": {\n \"$map\": {\n \"input\": \"$xaxis\",\n \"as\": \"n\",\n \"in\": {\n \"xrange\": {\"$multiply\": [0.1, \"$$n\"]},\n \"roofline_LDS_MFMA_i8\": {\n \"$cond\": {\n \"if\": {\n \"$lt\": [ {\"$multiply\": [0.1, \"$$n\", \"&LDSBw\"]}, \"$high_flop\" ]\n },\n \"then\": { \"$multiply\": [0.1, \"$$n\", \"&LDSBw\"] },\n \"else\": \"$high_flop\"\n }\n }\n\n } \n }}\n }},\n \n {\"$unwind\": \"$cte\"\n },\n {\"$replaceRoot\": {\n \"newRoot\": \"$cte\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Empirical Roofline FP16/INT8 (MI200)",
+ "type": "natel-plotly-panel",
+ "version": 1
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Roofline Analysis",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 5
+ },
+ "id": 2,
+ "panels": [
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 115
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 118
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 13,
+ "w": 13,
+ "x": 0,
+ "y": 62
+ },
+ "id": 6,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1 \n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"gpuBusy_avg\": {\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_min\": {\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_max\": {\"$max\": \"&GRBM_GUI_ACTIVE\"},\n\n\n \"cpfBusy_avg\": {\"$avg\": \"&CPF_CPF_STAT_BUSY\"},\n \"cpfBusy_min\": {\"$min\": \"&CPF_CPF_STAT_BUSY\"},\n \"cpfBusy_max\": {\"$max\": \"&CPF_CPF_STAT_BUSY\"},\n\n \"cpfUtil_avg\": {\"$avg\": {\n \"$cond\":[\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }, 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_BUSY\"] }, { \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }]},\n null\n ]\n }},\n \"cpfUtil_min\": {\"$min\": {\n \"$cond\":[\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }, 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_BUSY\"] }, { \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }]},\n null\n ]\n }},\n \"cpfUtil_max\": {\"$max\": {\n \"$cond\":[\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }, 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_BUSY\"] }, { \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }]},\n null\n ]\n }},\n\n \"cpfStall_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_STAT_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_STALL\"] }, \"&CPF_CPF_STAT_BUSY\"] } ,\n null\n ]\n }},\n \"cpfStall_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_STAT_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_STALL\"] }, \"&CPF_CPF_STAT_BUSY\"] } ,\n null\n ]\n }},\n \"cpfStall_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_STAT_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_STALL\"] }, \"&CPF_CPF_STAT_BUSY\"] } ,\n null\n ]\n }},\n\n \"l2CacheBusy_avg\": {\"$avg\": \"&CPF_CPF_TCIU_BUSY\"},\n \"l2CacheBusy_min\": {\"$min\": \"&CPF_CPF_TCIU_BUSY\"},\n \"l2CacheBusy_max\": {\"$max\": \"&CPF_CPF_TCIU_BUSY\"},\n\n \"l2CacheUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_BUSY\"] }, { \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }]},\n null\n ]\n }},\n \"l2CacheUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_BUSY\"] }, { \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }]},\n null\n ]\n }},\n \"l2CacheUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_BUSY\"] }, { \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }]},\n null\n ]\n }},\n \"l2CacheStall_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_TCIU_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_STALL\"] }, \"&CPF_CPF_TCIU_BUSY\"] },\n null\n ]\n }},\n \"l2CacheStall_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_TCIU_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_STALL\"] }, \"&CPF_CPF_TCIU_BUSY\"] },\n null\n ]\n }},\n \"l2CacheStall_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_TCIU_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_STALL\"] }, \"&CPF_CPF_TCIU_BUSY\"] },\n null\n ]\n }},\n\n \"utcL1Stall_avg\": {\"$avg\": \"&CPF_CMP_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_min\": {\"$min\": \"&CPF_CMP_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_max\": {\"$max\": \"&CPF_CMP_UTCL1_STALL_ON_TRANSLATION\"}\n\n\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"GPU Busy Cycles\",\n \"Avg\": \"&gpuBusy_avg\",\n \"Min\": \"&gpuBusy_min\",\n \"Max\": \"&gpuBusy_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"CPF Busy\",\n \"Avg\": \"&cpfBusy_avg\",\n \"Min\": \"&cpfBusy_min\",\n \"Max\": \"&cpfBusy_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"CPF Util\",\n \"Avg\": \"&cpfUtil_avg\",\n \"Min\": \"&cpfUtil_min\",\n \"Max\": \"&cpfUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"CPF Stall\",\n \"Avg\": \"&cpfStall_avg\",\n \"Min\": \"&cpfStall_min\",\n \"Max\": \"&cpfStall_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"L2Cache Intf Busy\",\n \"Avg\": \"&l2CacheBusy_avg\",\n \"Min\": \"&l2CacheBusy_min\",\n \"Max\": \"&l2CacheBusy_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"L2Cache Intf Util\",\n \"Avg\": \"&l2CacheUtil_avg\",\n \"Min\": \"&l2CacheUtil_min\",\n \"Max\": \"&l2CacheUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"L2Cache Intf Stall\",\n \"Avg\": \"&l2CacheStall_avg\",\n \"Min\": \"&l2CacheStall_min\",\n \"Max\": \"&l2CacheStall_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"UTCL1 Stall\",\n \"Avg\": \"&utcL1Stall_avg\",\n \"Min\": \"&utcL1Stall_min\",\n \"Max\": \"&utcL1Stall_max\", \n \"Unit\": \"Cycles/Kernel\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Command Processor)\"}}\n }},\n\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1 \n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"gpuBusy_avg\": {\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_min\": {\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_max\": {\"$max\": \"&GRBM_GUI_ACTIVE\"},\n\n \"cpfBusy_avg\": {\"$avg\": \"&CPF_CPF_STAT_BUSY\"},\n \"cpfBusy_min\": {\"$min\": \"&CPF_CPF_STAT_BUSY\"},\n \"cpfBusy_max\": {\"$max\": \"&CPF_CPF_STAT_BUSY\"},\n\n \"cpfUtil_avg\": {\"$avg\": {\n \"$cond\":[\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }, 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_BUSY\"] }, { \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }]},\n null\n ]\n }},\n \"cpfUtil_min\": {\"$min\": {\n \"$cond\":[\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }, 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_BUSY\"] }, { \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }]},\n null\n ]\n }},\n \"cpfUtil_max\": {\"$max\": {\n \"$cond\":[\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }, 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_BUSY\"] }, { \"$add\": [\"&CPF_CPF_STAT_BUSY\", \"&CPF_CPF_STAT_IDLE\"] }]},\n null\n ]\n }},\n\n \"cpfStall_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_STAT_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_STALL\"] }, \"&CPF_CPF_STAT_BUSY\"] } ,\n null\n ]\n }},\n \"cpfStall_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_STAT_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_STALL\"] }, \"&CPF_CPF_STAT_BUSY\"] } ,\n null\n ]\n }},\n \"cpfStall_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_STAT_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_STAT_STALL\"] }, \"&CPF_CPF_STAT_BUSY\"] } ,\n null\n ]\n }},\n\n \"l2CacheBusy_avg\": {\"$avg\": \"&CPF_CPF_TCIU_BUSY\"},\n \"l2CacheBusy_min\": {\"$min\": \"&CPF_CPF_TCIU_BUSY\"},\n \"l2CacheBusy_max\": {\"$max\": \"&CPF_CPF_TCIU_BUSY\"},\n\n \"l2CacheUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_BUSY\"] }, { \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }]},\n null\n ]\n }},\n \"l2CacheUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_BUSY\"] }, { \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }]},\n null\n ]\n }},\n \"l2CacheUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_BUSY\"] }, { \"$add\": [\"&CPF_CPF_TCIU_BUSY\", \"&CPF_CPF_TCIU_IDLE\"] }]},\n null\n ]\n }},\n \"l2CacheStall_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_TCIU_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_STALL\"] }, \"&CPF_CPF_TCIU_BUSY\"] },\n null\n ]\n }},\n \"l2CacheStall_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_TCIU_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_STALL\"] }, \"&CPF_CPF_TCIU_BUSY\"] },\n null\n ]\n }},\n \"l2CacheStall_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPF_CPF_TCIU_BUSY\", 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&CPF_CPF_TCIU_STALL\"] }, \"&CPF_CPF_TCIU_BUSY\"] },\n null\n ]\n }},\n\n \"utcL1Stall_avg\": {\"$avg\": \"&CPF_CMP_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_min\": {\"$min\": \"&CPF_CMP_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_max\": {\"$max\": \"&CPF_CMP_UTCL1_STALL_ON_TRANSLATION\"}\n\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"GPU Busy Cycles\",\n \"Avg\": \"&gpuBusy_avg\",\n \"Min\": \"&gpuBusy_min\",\n \"Max\": \"&gpuBusy_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"CPF Busy\",\n \"Avg\": \"&cpfBusy_avg\",\n \"Min\": \"&cpfBusy_min\",\n \"Max\": \"&cpfBusy_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"CPF Util\",\n \"Avg\": \"&cpfUtil_avg\",\n \"Min\": \"&cpfUtil_min\",\n \"Max\": \"&cpfUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"CPF Stall\",\n \"Avg\": \"&cpfStall_avg\",\n \"Min\": \"&cpfStall_min\",\n \"Max\": \"&cpfStall_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"L2Cache Intf Busy\",\n \"Avg\": \"&l2CacheBusy_avg\",\n \"Min\": \"&l2CacheBusy_min\",\n \"Max\": \"&l2CacheBusy_max\", \n \"Unit\": \"Cycles/Kernel\"\n },\n {\n \"Metric\": \"L2Cache Intf Util\",\n \"Avg\": \"&l2CacheUtil_avg\",\n \"Min\": \"&l2CacheUtil_min\",\n \"Max\": \"&l2CacheUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"L2Cache Intf Stall\",\n \"Avg\": \"&l2CacheStall_avg\",\n \"Min\": \"&l2CacheStall_min\",\n \"Max\": \"&l2CacheStall_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"UTCL1 Stall\",\n \"Avg\": \"&utcL1Stall_avg\",\n \"Min\": \"&utcL1Stall_min\",\n \"Max\": \"&utcL1Stall_max\", \n \"Unit\": \"Cycles/Kernel\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Command Processor Fetcher",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Avg 1": 3,
+ "Avg 2": 4,
+ "Max 1": 7,
+ "Max 2": 8,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Unit 1": 9,
+ "Unit 2": 2
+ },
+ "renameByName": {
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 83
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 171
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 148
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 180
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 118
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baselin)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 139
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 138
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 147
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 13,
+ "w": 11,
+ "x": 13,
+ "y": 62
+ },
+ "id": 4,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \n \"gpuBusy_avg\": {\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_min\": {\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_max\": {\"$max\": \"&GRBM_GUI_ACTIVE\"},\n\n\n \"cpcBusy_avg\": {\"$avg\": \"&CPC_CPC_STAT_BUSY\"},\n \"cpcBusy_min\": {\"$min\": \"&CPC_CPC_STAT_BUSY\"},\n \"cpcBusy_max\": {\"$max\": \"&CPC_CPC_STAT_BUSY\"},\n\n \"cpcUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_BUSY\"] }, { \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }]} ,\n null\n ]\n }},\n \"cpcUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_BUSY\"] }, { \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }]} ,\n null\n ]\n }},\n \"cpcUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_BUSY\"] }, { \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }]} ,\n null\n ]\n }},\n\n \"cpcStall_avg\": {\"$avg\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStall_min\": {\"$min\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStall_max\": {\"$max\": \"&CPC_CPC_STAT_STALL\"},\n\n \"cpcStallCycles_avg\": {\"$avg\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStallCycles_min\": {\"$min\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStallCycles_max\": {\"$max\": \"&CPC_CPC_STAT_STALL\"},\n\n \"cpcStallRate_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_STALL\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"cpcStallRate_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_STALL\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"cpcStallRate_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_STALL\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n\n \"cpcPacketDecoding_avg\":{\"$avg\": \"&CPC_ME1_BUSY_FOR_PACKET_DECODE\"},\n \"cpcPacketDecoding_min\":{\"$min\": \"&CPC_ME1_BUSY_FOR_PACKET_DECODE\"},\n \"cpcPacketDecoding_max\":{\"$max\": \"&CPC_ME1_BUSY_FOR_PACKET_DECODE\"},\n\n \"spiBusy_avg\":{\"$avg\": \"&CPC_ME1_DC0_SPI_BUSY\"},\n \"spiBusy_min\":{\"$min\": \"&CPC_ME1_DC0_SPI_BUSY\"},\n \"spiBusy_max\":{\"$max\": \"&CPC_ME1_DC0_SPI_BUSY\"},\n\n \"spiUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_ME1_DC0_SPI_BUSY\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"spiUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_ME1_DC0_SPI_BUSY\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"spiUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_ME1_DC0_SPI_BUSY\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n\n \"l2CacheBusy_avg\":{\"$avg\": \"&CPC_CPC_TCIU_BUSY\"},\n \"l2CacheBusy_min\":{\"$min\": \"&CPC_CPC_TCIU_BUSY\"},\n \"l2CacheBusy_max\":{\"$max\": \"&CPC_CPC_TCIU_BUSY\"},\n\n \"l2CacheUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_TCIU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }]} ,\n null\n ]\n }},\n \"l2CacheUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_TCIU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }]} ,\n null\n ]\n }},\n \"l2CacheUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_TCIU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }]} ,\n null\n ]\n }},\n\n \"utcL1Stall_avg\":{\"$avg\": \"&CPC_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_min\":{\"$min\": \"&CPC_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_max\":{\"$max\": \"&CPC_UTCL1_STALL_ON_TRANSLATION\"},\n\n \"utcL2Busy_avg\":{\"$avg\": \"&CPC_CPC_UTCL2IU_BUSY\"},\n \"utcL2Busy_min\":{\"$min\": \"&CPC_CPC_UTCL2IU_BUSY\"},\n \"utcL2Busy_max\":{\"$max\": \"&CPC_CPC_UTCL2IU_BUSY\"},\n\n \"utcL2Util_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_UTCL2IU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }]} ,\n null\n ]\n }},\n \"utcL2Util_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_UTCL2IU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }]} ,\n null\n ]\n }},\n \"utcL2Util_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_UTCL2IU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }]} ,\n null\n ]\n }}\n\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"GPU Busy Cycles\",\n \"Avg\": \"&gpuBusy_avg\",\n \"Min\": \"&gpuBusy_min\",\n \"Max\": \"&gpuBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CPC Busy Cycles\",\n \"Avg\": \"&cpcBusy_avg\",\n \"Min\": \"&cpcBusy_min\",\n \"Max\": \"&cpcBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CPC Util\",\n \"Avg\": \"&cpcUtil_avg\",\n \"Min\": \"&cpcUtil_min\",\n \"Max\": \"&cpcUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"CPC Stall Cycles\",\n \"Avg\": \"&cpcStallCycles_avg\",\n \"Min\": \"&cpcStallCycles_min\",\n \"Max\": \"&cpcStallCycles_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CPC Stall Rate\",\n \"Avg\": \"&cpcStallRate_avg\",\n \"Min\": \"&cpcStallRate_min\",\n \"Max\": \"&cpcStallRate_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"CPC Packet Decoding\",\n \"Avg\": \"&cpcPacketDecoding_avg\",\n \"Min\": \"&cpcPacketDecoding_min\",\n \"Max\": \"&cpcPacketDecoding_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SPI Intf Busy Cycles\",\n \"Avg\": \"&spiBusy_avg\",\n \"Min\": \"&spiBusy_min\",\n \"Max\": \"&spiBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SPI Intf Util\",\n \"Avg\": \"&spiUtil_avg\",\n \"Min\": \"&spiUtil_min\",\n \"Max\": \"&spiUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"L2Cache Intf Util\",\n \"Avg\": \"&l2CacheUtil_avg\",\n \"Min\": \"&l2CacheUtil_min\",\n \"Max\": \"&l2CacheUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"UTCL1 Stall Cycles\",\n \"Avg\": \"&utcL1Stall_avg\",\n \"Min\": \"&utcL1Stall_min\",\n \"Max\": \"&utcL1Stall_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"UTCL2 Intf Busy Cycles\",\n \"Avg\": \"&utcL2Busy_avg\",\n \"Min\": \"&utcL2Busy_min\",\n \"Max\": \"&utcL2Busy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"UTCL2 Intf Util\",\n \"Avg\": \"&utcL2Util_avg\",\n \"Min\": \"&utcL2Util_min\",\n \"Max\": \"&utcL2Util_max\", \n \"Unit\": \"pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Command Processor)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \n \"gpuBusy_avg\": {\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_min\": {\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_max\": {\"$max\": \"&GRBM_GUI_ACTIVE\"},\n\n \"cpcBusy_avg\": {\"$avg\": \"&CPC_CPC_STAT_BUSY\"},\n \"cpcBusy_min\": {\"$min\": \"&CPC_CPC_STAT_BUSY\"},\n \"cpcBusy_max\": {\"$max\": \"&CPC_CPC_STAT_BUSY\"},\n\n \"cpcUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_BUSY\"] }, { \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }]} ,\n null\n ]\n }},\n \"cpcUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_BUSY\"] }, { \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }]} ,\n null\n ]\n }},\n \"cpcUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_BUSY\"] }, { \"$add\": [\"&CPC_CPC_STAT_BUSY\", \"&CPC_CPC_STAT_IDLE\"] }]} ,\n null\n ]\n }},\n\n \"cpcStall_avg\": {\"$avg\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStall_min\": {\"$min\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStall_max\": {\"$max\": \"&CPC_CPC_STAT_STALL\"},\n\n \"cpcStallCycles_avg\": {\"$avg\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStallCycles_min\": {\"$min\": \"&CPC_CPC_STAT_STALL\"},\n \"cpcStallCycles_max\": {\"$max\": \"&CPC_CPC_STAT_STALL\"},\n\n \"cpcStallRate_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_STALL\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"cpcStallRate_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_STALL\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"cpcStallRate_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_STAT_STALL\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n\n \"cpcPacketDecoding_avg\":{\"$avg\": \"&CPC_ME1_BUSY_FOR_PACKET_DECODE\"},\n \"cpcPacketDecoding_min\":{\"$min\": \"&CPC_ME1_BUSY_FOR_PACKET_DECODE\"},\n \"cpcPacketDecoding_max\":{\"$max\": \"&CPC_ME1_BUSY_FOR_PACKET_DECODE\"},\n\n \"spiBusy_avg\":{\"$avg\": \"&CPC_ME1_DC0_SPI_BUSY\"},\n \"spiBusy_min\":{\"$min\": \"&CPC_ME1_DC0_SPI_BUSY\"},\n \"spiBusy_max\":{\"$max\": \"&CPC_ME1_DC0_SPI_BUSY\"},\n\n \"spiUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_ME1_DC0_SPI_BUSY\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"spiUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_ME1_DC0_SPI_BUSY\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n \"spiUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [\"&CPC_CPC_STAT_BUSY\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_ME1_DC0_SPI_BUSY\"] }, \"&CPC_CPC_STAT_BUSY\"]} ,\n null\n ]\n }},\n\n \"l2CacheBusy_avg\":{\"$avg\": \"&CPC_CPC_TCIU_BUSY\"},\n \"l2CacheBusy_min\":{\"$min\": \"&CPC_CPC_TCIU_BUSY\"},\n \"l2CacheBusy_max\":{\"$max\": \"&CPC_CPC_TCIU_BUSY\"},\n\n \"l2CacheUtil_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_TCIU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }]} ,\n null\n ]\n }},\n \"l2CacheUtil_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_TCIU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }]} ,\n null\n ]\n }},\n \"l2CacheUtil_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_TCIU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_TCIU_BUSY\", \"&CPC_CPC_TCIU_IDLE\"] }]} ,\n null\n ]\n }},\n\n \"utcL1Stall_avg\":{\"$avg\": \"&CPC_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_min\":{\"$min\": \"&CPC_UTCL1_STALL_ON_TRANSLATION\"},\n \"utcL1Stall_max\":{\"$max\": \"&CPC_UTCL1_STALL_ON_TRANSLATION\"},\n\n \"utcL2Busy_avg\":{\"$avg\": \"&CPC_CPC_UTCL2IU_BUSY\"},\n \"utcL2Busy_min\":{\"$min\": \"&CPC_CPC_UTCL2IU_BUSY\"},\n \"utcL2Busy_max\":{\"$max\": \"&CPC_CPC_UTCL2IU_BUSY\"},\n\n \"utcL2Util_avg\": {\"$avg\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_UTCL2IU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }]} ,\n null\n ]\n }},\n \"utcL2Util_min\": {\"$min\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_UTCL2IU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }]} ,\n null\n ]\n }},\n \"utcL2Util_max\": {\"$max\":{\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }, 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&CPC_CPC_UTCL2IU_BUSY\"] }, { \"$add\": [\"&CPC_CPC_UTCL2IU_BUSY\", \"&CPC_CPC_UTCL2IU_IDLE\"] }]} ,\n null\n ]\n }}\n\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"GPU Busy Cycles\",\n \"Avg\": \"&gpuBusy_avg\",\n \"Min\": \"&gpuBusy_min\",\n \"Max\": \"&gpuBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CPC Busy Cycles\",\n \"Avg\": \"&cpcBusy_avg\",\n \"Min\": \"&cpcBusy_min\",\n \"Max\": \"&cpcBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CPC Util\",\n \"Avg\": \"&cpcUtil_avg\",\n \"Min\": \"&cpcUtil_min\",\n \"Max\": \"&cpcUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"CPC Stall Cycles\",\n \"Avg\": \"&cpcStallCycles_avg\",\n \"Min\": \"&cpcStallCycles_min\",\n \"Max\": \"&cpcStallCycles_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CPC Stall Rate\",\n \"Avg\": \"&cpcStallRate_avg\",\n \"Min\": \"&cpcStallRate_min\",\n \"Max\": \"&cpcStallRate_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"CPC Packet Decoding\",\n \"Avg\": \"&cpcPacketDecoding_avg\",\n \"Min\": \"&cpcPacketDecoding_min\",\n \"Max\": \"&cpcPacketDecoding_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SPI Intf Busy Cycles\",\n \"Avg\": \"&spiBusy_avg\",\n \"Min\": \"&spiBusy_min\",\n \"Max\": \"&spiBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SPI Intf Util\",\n \"Avg\": \"&spiUtil_avg\",\n \"Min\": \"&spiUtil_min\",\n \"Max\": \"&spiUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"L2Cache Intf Util\",\n \"Avg\": \"&l2CacheUtil_avg\",\n \"Min\": \"&l2CacheUtil_min\",\n \"Max\": \"&l2CacheUtil_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"UTCL1 Stall Cycles\",\n \"Avg\": \"&utcL1Stall_avg\",\n \"Min\": \"&utcL1Stall_min\",\n \"Max\": \"&utcL1Stall_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"UTCL2 Intf Busy Cycles\",\n \"Avg\": \"&utcL2Busy_avg\",\n \"Min\": \"&utcL2Busy_min\",\n \"Max\": \"&utcL2Busy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"UTCL2 Intf Util\",\n \"Avg\": \"&utcL2Util_avg\",\n \"Min\": \"&utcL2Util_min\",\n \"Max\": \"&utcL2Util_max\", \n \"Unit\": \"pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Command Processor Compute",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Avg 1": 3,
+ "Avg 2": 4,
+ "Max 1": 7,
+ "Max 2": 8,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Unit 1": 9,
+ "Unit 2": 2
+ },
+ "renameByName": {
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Metric 1": "",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Command Processor (CPC/CPF)",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 6
+ },
+ "id": 102,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 101
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg 1"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 121
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min 1"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 96
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max 1"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 145
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg 2"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 97
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min 2"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 128
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 130
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 123
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 15,
+ "w": 12,
+ "x": 0,
+ "y": 63
+ },
+ "id": 106,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n\n \"csBusy_avg\":{\"$avg\": \"&SPI_CSN_BUSY\"},\n \"csBusy_min\":{\"$min\": \"&SPI_CSN_BUSY\"},\n \"csBusy_max\":{\"$max\": \"&SPI_CSN_BUSY\"},\n\n \"gpuBusy_avg\":{\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_min\":{\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_max\":{\"$max\": \"&GRBM_GUI_ACTIVE\"},\n\n \"spiBusy_avg\":{\"$avg\": \"&GRBM_SPI_BUSY\"},\n \"spiBusy_min\":{\"$min\": \"&GRBM_SPI_BUSY\"},\n \"spiBusy_max\":{\"$max\": \"&GRBM_SPI_BUSY\"},\n\n \"sqBusy_avg\":{\"$avg\": \"&SQ_BUSY_CYCLES\"},\n \"sqBusy_min\":{\"$min\": \"&SQ_BUSY_CYCLES\"},\n \"sqBusy_max\":{\"$max\": \"&SQ_BUSY_CYCLES\"},\n\n \"dispatchedWorkgroups_avg\":{\"$avg\": \"&SPI_CSN_NUM_THREADGROUPS\"},\n \"dispatchedWorkgroups_min\":{\"$min\": \"&SPI_CSN_NUM_THREADGROUPS\"},\n \"dispatchedWorkgroups_max\":{\"$max\": \"&SPI_CSN_NUM_THREADGROUPS\"},\n\n \"dispatchedWavefronts_avg\":{\"$avg\": \"&SPI_CSN_WAVE\"},\n \"dispatchedWavefronts_min\":{\"$min\": \"&SPI_CSN_WAVE\"},\n \"dispatchedWavefronts_max\":{\"$max\": \"&SPI_CSN_WAVE\"},\n\n\n \"waveAllocFail_avg\":{\"$avg\": \"&SPI_RA_REQ_NO_ALLOC\"},\n \"waveAllocFail_min\":{\"$min\": \"&SPI_RA_REQ_NO_ALLOC\"},\n \"waveAllocFail_max\":{\"$max\": \"&SPI_RA_REQ_NO_ALLOC\"},\n\n \"waveAllocFailCS_avg\":{\"$avg\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveAllocFailCS_min\":{\"$min\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveAllocFailCS_max\":{\"$max\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"}\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"GPU Busy\",\n \"Avg\": \"&gpuBusy_avg\",\n \"Min\": \"&gpuBusy_min\",\n \"Max\": \"&gpuBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CS Busy\",\n \"Avg\": \"&csBusy_avg\",\n \"Min\": \"&csBusy_min\",\n \"Max\": \"&csBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SPI Busy\",\n \"Avg\": \"&spiBusy_avg\",\n \"Min\": \"&spiBusy_min\",\n \"Max\": \"&spiBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SQ Busy\",\n \"Avg\": \"&sqBusy_avg\",\n \"Min\": \"&sqBusy_min\",\n \"Max\": \"&sqBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Dispatched Workgroups\",\n \"Avg\": \"&dispatchedWorkgroups_avg\",\n \"Min\": \"&dispatchedWorkgroups_min\",\n \"Max\": \"&dispatchedWorkgroups_max\", \n \"Unit\": \"Workgroups\"\n },\n {\n \"Metric\": \"Dispatched Wavefronts\",\n \"Avg\": \"&dispatchedWavefronts_avg\",\n \"Min\": \"&dispatchedWavefronts_min\",\n \"Max\": \"&dispatchedWavefronts_max\", \n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"Wave Alloc Failed\",\n \"Avg\": \"&waveAllocFail_avg\",\n \"Min\": \"&waveAllocFail_min\",\n \"Max\": \"&waveAllocFail_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Wave Alloc Failed - CS\",\n \"Avg\": \"&waveAllocFailCS_avg\",\n \"Min\": \"&waveAllocFailCS_min\",\n \"Max\": \"&waveAllocFailCS_max\", \n \"Unit\": \"Cycles\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Shader Processor Input)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n\n \"csBusy_avg\":{\"$avg\": \"&SPI_CSN_BUSY\"},\n \"csBusy_min\":{\"$min\": \"&SPI_CSN_BUSY\"},\n \"csBusy_max\":{\"$max\": \"&SPI_CSN_BUSY\"},\n\n \"gpuBusy_avg\":{\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_min\":{\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"gpuBusy_max\":{\"$max\": \"&GRBM_GUI_ACTIVE\"},\n\n \"spiBusy_avg\":{\"$avg\": \"&GRBM_SPI_BUSY\"},\n \"spiBusy_min\":{\"$min\": \"&GRBM_SPI_BUSY\"},\n \"spiBusy_max\":{\"$max\": \"&GRBM_SPI_BUSY\"},\n\n \"sqBusy_avg\":{\"$avg\": \"&SQ_BUSY_CYCLES\"},\n \"sqBusy_min\":{\"$min\": \"&SQ_BUSY_CYCLES\"},\n \"sqBusy_max\":{\"$max\": \"&SQ_BUSY_CYCLES\"},\n\n \"dispatchedWorkgroups_avg\":{\"$avg\": \"&SPI_CSN_NUM_THREADGROUPS\"},\n \"dispatchedWorkgroups_min\":{\"$min\": \"&SPI_CSN_NUM_THREADGROUPS\"},\n \"dispatchedWorkgroups_max\":{\"$max\": \"&SPI_CSN_NUM_THREADGROUPS\"},\n\n \"dispatchedWavefronts_avg\":{\"$avg\": \"&SPI_CSN_WAVE\"},\n \"dispatchedWavefronts_min\":{\"$min\": \"&SPI_CSN_WAVE\"},\n \"dispatchedWavefronts_max\":{\"$max\": \"&SPI_CSN_WAVE\"},\n\n \"waveAllocFail_avg\":{\"$avg\": \"&SPI_RA_REQ_NO_ALLOC\"},\n \"waveAllocFail_min\":{\"$min\": \"&SPI_RA_REQ_NO_ALLOC\"},\n \"waveAllocFail_max\":{\"$max\": \"&SPI_RA_REQ_NO_ALLOC\"},\n\n \"waveAllocFailCS_avg\":{\"$avg\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveAllocFailCS_min\":{\"$min\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveAllocFailCS_max\":{\"$max\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"}\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"GPU Busy\",\n \"Avg\": \"&gpuBusy_avg\",\n \"Min\": \"&gpuBusy_min\",\n \"Max\": \"&gpuBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CS Busy\",\n \"Avg\": \"&csBusy_avg\",\n \"Min\": \"&csBusy_min\",\n \"Max\": \"&csBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SPI Busy\",\n \"Avg\": \"&spiBusy_avg\",\n \"Min\": \"&spiBusy_min\",\n \"Max\": \"&spiBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"SQ Busy\",\n \"Avg\": \"&sqBusy_avg\",\n \"Min\": \"&sqBusy_min\",\n \"Max\": \"&sqBusy_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Dispatched Workgroups\",\n \"Avg\": \"&dispatchedWorkgroups_avg\",\n \"Min\": \"&dispatchedWorkgroups_min\",\n \"Max\": \"&dispatchedWorkgroups_max\", \n \"Unit\": \"Workgroups\"\n },\n {\n \"Metric\": \"Dispatched Wavefronts\",\n \"Avg\": \"&dispatchedWavefronts_avg\",\n \"Min\": \"&dispatchedWavefronts_min\",\n \"Max\": \"&dispatchedWavefronts_max\", \n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"Wave Alloc Failed\",\n \"Avg\": \"&waveAllocFail_avg\",\n \"Min\": \"&waveAllocFail_min\",\n \"Max\": \"&waveAllocFail_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Wave Alloc Failed - CS\",\n \"Avg\": \"&waveAllocFailCS_avg\",\n \"Min\": \"&waveAllocFailCS_min\",\n \"Max\": \"&waveAllocFailCS_max\", \n \"Unit\": \"Cycles\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "SPI Stats",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Avg 1": 3,
+ "Avg 2": 4,
+ "Max 1": 7,
+ "Max 2": 8,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Unit 1": 9,
+ "Unit 2": 2
+ },
+ "renameByName": {
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)",
+ "Unit 1": ""
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 117
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 110
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 121
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 285
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 102
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 122
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 242
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 121
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 15,
+ "w": 12,
+ "x": 12,
+ "y": 63
+ },
+ "id": 104,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n\n \"waveReqFailCS_avg\":{\"$avg\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveReqFailCS_min\":{\"$min\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveReqFailCS_max\":{\"$max\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n\n \"csStall_avg\":{\"$avg\": \"&SPI_RA_RES_STALL_CSN\"},\n \"csStall_min\":{\"$min\": \"&SPI_RA_RES_STALL_CSN\"},\n \"csStall_max\":{\"$max\": \"&SPI_RA_RES_STALL_CSN\"},\n\n \"csStallRate_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&SPI_RA_RES_STALL_CSN\"]}, \"&GRBM_SPI_BUSY\"]},\n null\n ]\n }},\n \"csStallRate_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&SPI_RA_RES_STALL_CSN\"]}, \"&GRBM_SPI_BUSY\"]},\n null\n ]\n }},\n \"csStallRate_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&SPI_RA_RES_STALL_CSN\"]}, \"&GRBM_SPI_BUSY\"]},\n null\n ]\n }},\n\n \"scratchStall_avg\":{\"$avg\": \"&SPI_RA_TMP_STALL_CSN\"},\n \"scratchStall_min\":{\"$min\": \"&SPI_RA_TMP_STALL_CSN\"},\n \"scratchStall_max\":{\"$max\": \"&SPI_RA_TMP_STALL_CSN\"},\n\n \"simdWaveslots_avg\":{\"$avg\": \"&SPI_RA_WAVE_SIMD_FULL_CSN\"},\n \"simdWaveslots_min\":{\"$min\": \"&SPI_RA_WAVE_SIMD_FULL_CSN\"},\n \"simdWaveslots_max\":{\"$max\": \"&SPI_RA_WAVE_SIMD_FULL_CSN\"},\n\n \"simdVGPRs_avg\":{\"$avg\": \"&SPI_RA_VGPR_SIMD_FULL_CSN\"},\n \"simdVGPRs_min\":{\"$min\": \"&SPI_RA_VGPR_SIMD_FULL_CSN\"},\n \"simdVGPRs_max\":{\"$max\": \"&SPI_RA_VGPR_SIMD_FULL_CSN\"},\n\n \"simdSGPRs_avg\":{\"$avg\": \"&SPI_RA_SGPR_SIMD_FULL_CSN\"},\n \"simdSGPRs_min\":{\"$min\": \"&SPI_RA_SGPR_SIMD_FULL_CSN\"},\n \"simdSGPRs_max\":{\"$max\": \"&SPI_RA_SGPR_SIMD_FULL_CSN\"},\n\n \"cuLDS_avg\":{\"$avg\": \"&SPI_RA_LDS_CU_FULL_CSN\"},\n \"cuLDS_min\":{\"$min\": \"&SPI_RA_LDS_CU_FULL_CSN\"},\n \"cuLDS_max\":{\"$max\": \"&SPI_RA_LDS_CU_FULL_CSN\"},\n\n \"cuBarries_avg\":{\"$avg\": \"&SPI_RA_BAR_CU_FULL_CSN\"},\n \"cuBarries_min\":{\"$min\": \"&SPI_RA_BAR_CU_FULL_CSN\"},\n \"cuBarries_max\":{\"$max\": \"&SPI_RA_BAR_CU_FULL_CSN\"},\n\n \"bulkyResource_avg\":{\"$avg\": \"&SPI_RA_BULKY_CU_FULL_CSN\"},\n \"bulkyResource_min\":{\"$min\": \"&SPI_RA_BULKY_CU_FULL_CSN\"},\n \"bulkyResource_max\":{\"$max\": \"&SPI_RA_BULKY_CU_FULL_CSN\"},\n\n \"threadgroupLimit_avg\":{\"$avg\": \"&SPI_RA_TGLIM_CU_FULL_CSN\"},\n \"threadgroupLimit_min\":{\"$min\": \"&SPI_RA_TGLIM_CU_FULL_CSN\"},\n \"threadgroupLimit_max\":{\"$max\": \"&SPI_RA_TGLIM_CU_FULL_CSN\"},\n\n \"waveLimit_avg\":{\"$avg\": \"&SPI_RA_WVLIM_STALL_CSN\"},\n \"waveLimit_min\":{\"$min\": \"&SPI_RA_WVLIM_STALL_CSN\"},\n \"waveLimit_max\":{\"$max\": \"&SPI_RA_WVLIM_STALL_CSN\"},\n\n \"vgprsWrites_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n {\"$divide\": [{ \"$multiply\": [4, \"&SPI_VWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"]},\n null\n ]\n }},\n \"vgprsWrites_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n {\"$divide\": [{ \"$multiply\": [4, \"&SPI_VWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"]},\n null\n ]\n }},\n \"vgprsWrites_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n {\"$divide\": [{ \"$multiply\": [4, \"&SPI_VWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"]},\n null\n ]\n }},\n\n \"sgprsWrites_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n { \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"] },\n null\n ]\n }},\n \"sgprsWrites_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n { \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"] },\n null\n ]\n }},\n \"sgprsWrites_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n { \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"] },\n null\n ]\n }},\n \n \n \"sgprsWritesUti_avg\":{\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&GRBM_SPI_BUSY\"] }, 8] },\n null\n ]\n }},\n \"sgprsWritesUti_min\":{\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&GRBM_SPI_BUSY\"] }, 8] },\n null\n ]\n }},\n \"sgprsWritesUti_max\":{\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&GRBM_SPI_BUSY\"] }, 8] },\n null\n ]\n }}\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Wave request Failed (CS)\",\n \"Avg\": \"&waveReqFailCS_avg\",\n \"Min\": \"&waveReqFailCS_min\",\n \"Max\": \"&waveReqFailCS_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CS Stall\",\n \"Avg\": \"&csStall_avg\",\n \"Min\": \"&csStall_min\",\n \"Max\": \"&csStall_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CS Stall Rate\",\n \"Avg\": \"&csStallRate_avg\",\n \"Min\": \"&csStallRate_min\",\n \"Max\": \"&csStallRate_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"Scratch Stall\",\n \"Avg\": \"&scratchStall_avg\",\n \"Min\": \"&scratchStall_min\",\n \"Max\": \"&scratchStall_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Insufficient SIMD Waveslots\",\n \"Avg\": \"&simdWaveslots_avg\",\n \"Min\": \"&simdWaveslots_min\",\n \"Max\": \"&simdWaveslots_max\", \n \"Unit\": \"#SIMD\"\n },\n {\n \"Metric\": \"Insufficient SIMD VGPRs\",\n \"Avg\": \"&simdVGPRs_avg\",\n \"Min\": \"&simdVGPRs_min\",\n \"Max\": \"&simdVGPRs_max\", \n \"Unit\": \"#SIMD\"\n },\n {\n \"Metric\": \"Insufficient SIMD SGPRs\",\n \"Avg\": \"&simdSGPRs_avg\",\n \"Min\": \"&simdSGPRs_min\",\n \"Max\": \"&simdSGPRs_max\", \n \"Unit\": \"#SIMD\"\n },\n {\n \"Metric\": \"Insufficient CU LDS\",\n \"Avg\": \"&cuLDS_avg\",\n \"Min\": \"&cuLDS_min\",\n \"Max\": \"&cuLDS_max\", \n \"Unit\": \"#CU\"\n },\n {\n \"Metric\": \"Insufficient CU Barries\",\n \"Avg\": \"&cuBarries_avg\",\n \"Min\": \"&cuBarries_min\",\n \"Max\": \"&cuBarries_max\", \n \"Unit\": \"#CU\"\n },\n {\n \"Metric\": \"Insufficient Bulky Resource\",\n \"Avg\": \"&bulkyResource_avg\",\n \"Min\": \"&bulkyResource_min\",\n \"Max\": \"&bulkyResource_max\", \n \"Unit\": \"#CU\"\n },\n {\n \"Metric\": \"Reach CU Threadgroups Limit\",\n \"Avg\": \"&threadgroupLimit_avg\",\n \"Min\": \"&threadgroupLimit_min\",\n \"Max\": \"&threadgroupLimit_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Reach CU Wave Limit\",\n \"Avg\": \"&waveLimit_avg\",\n \"Min\": \"&waveLimit_min\",\n \"Max\": \"&waveLimit_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"VGPR Writes\",\n \"Avg\": \"&vgprsWrites_avg\",\n \"Min\": \"&vgprsWrites_min\",\n \"Max\": \"&vgprsWrites_max\", \n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"SGPR Writes\",\n \"Avg\": \"&sgprsWrites_avg\",\n \"Min\": \"&sgprsWrites_min\",\n \"Max\": \"&sgprsWrites_max\", \n \"Unit\": \"Cycles/wave\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Shader Processor Input)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n\n \"waveReqFailCS_avg\":{\"$avg\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveReqFailCS_min\":{\"$min\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n \"waveReqFailCS_max\":{\"$max\": \"&SPI_RA_REQ_NO_ALLOC_CSN\"},\n\n \"csStall_avg\":{\"$avg\": \"&SPI_RA_RES_STALL_CSN\"},\n \"csStall_min\":{\"$min\": \"&SPI_RA_RES_STALL_CSN\"},\n \"csStall_max\":{\"$max\": \"&SPI_RA_RES_STALL_CSN\"},\n\n \"csStallRate_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&SPI_RA_RES_STALL_CSN\"]}, \"&GRBM_SPI_BUSY\"]},\n null\n ]\n }},\n \"csStallRate_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&SPI_RA_RES_STALL_CSN\"]}, \"&GRBM_SPI_BUSY\"]},\n null\n ]\n }},\n \"csStallRate_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$multiply\": [100, \"&SPI_RA_RES_STALL_CSN\"]}, \"&GRBM_SPI_BUSY\"]},\n null\n ]\n }},\n\n \"scratchStall_avg\":{\"$avg\": \"&SPI_RA_TMP_STALL_CSN\"},\n \"scratchStall_min\":{\"$min\": \"&SPI_RA_TMP_STALL_CSN\"},\n \"scratchStall_max\":{\"$max\": \"&SPI_RA_TMP_STALL_CSN\"},\n\n \"simdWaveslots_avg\":{\"$avg\": \"&SPI_RA_WAVE_SIMD_FULL_CSN\"},\n \"simdWaveslots_min\":{\"$min\": \"&SPI_RA_WAVE_SIMD_FULL_CSN\"},\n \"simdWaveslots_max\":{\"$max\": \"&SPI_RA_WAVE_SIMD_FULL_CSN\"},\n\n \"simdVGPRs_avg\":{\"$avg\": \"&SPI_RA_VGPR_SIMD_FULL_CSN\"},\n \"simdVGPRs_min\":{\"$min\": \"&SPI_RA_VGPR_SIMD_FULL_CSN\"},\n \"simdVGPRs_max\":{\"$max\": \"&SPI_RA_VGPR_SIMD_FULL_CSN\"},\n\n \"simdSGPRs_avg\":{\"$avg\": \"&SPI_RA_SGPR_SIMD_FULL_CSN\"},\n \"simdSGPRs_min\":{\"$min\": \"&SPI_RA_SGPR_SIMD_FULL_CSN\"},\n \"simdSGPRs_max\":{\"$max\": \"&SPI_RA_SGPR_SIMD_FULL_CSN\"},\n\n \"cuLDS_avg\":{\"$avg\": \"&SPI_RA_LDS_CU_FULL_CSN\"},\n \"cuLDS_min\":{\"$min\": \"&SPI_RA_LDS_CU_FULL_CSN\"},\n \"cuLDS_max\":{\"$max\": \"&SPI_RA_LDS_CU_FULL_CSN\"},\n\n \"cuBarries_avg\":{\"$avg\": \"&SPI_RA_BAR_CU_FULL_CSN\"},\n \"cuBarries_min\":{\"$min\": \"&SPI_RA_BAR_CU_FULL_CSN\"},\n \"cuBarries_max\":{\"$max\": \"&SPI_RA_BAR_CU_FULL_CSN\"},\n\n \"bulkyResource_avg\":{\"$avg\": \"&SPI_RA_BULKY_CU_FULL_CSN\"},\n \"bulkyResource_min\":{\"$min\": \"&SPI_RA_BULKY_CU_FULL_CSN\"},\n \"bulkyResource_max\":{\"$max\": \"&SPI_RA_BULKY_CU_FULL_CSN\"},\n\n \"threadgroupLimit_avg\":{\"$avg\": \"&SPI_RA_TGLIM_CU_FULL_CSN\"},\n \"threadgroupLimit_min\":{\"$min\": \"&SPI_RA_TGLIM_CU_FULL_CSN\"},\n \"threadgroupLimit_max\":{\"$max\": \"&SPI_RA_TGLIM_CU_FULL_CSN\"},\n\n \"waveLimit_avg\":{\"$avg\": \"&SPI_RA_WVLIM_STALL_CSN\"},\n \"waveLimit_min\":{\"$min\": \"&SPI_RA_WVLIM_STALL_CSN\"},\n \"waveLimit_max\":{\"$max\": \"&SPI_RA_WVLIM_STALL_CSN\"},\n\n \"vgprsWrites_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n {\"$divide\": [{ \"$multiply\": [4, \"&SPI_VWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"]},\n null\n ]\n }},\n \"vgprsWrites_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n {\"$divide\": [{ \"$multiply\": [4, \"&SPI_VWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"]},\n null\n ]\n }},\n \"vgprsWrites_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n {\"$divide\": [{ \"$multiply\": [4, \"&SPI_VWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"]},\n null\n ]\n }},\n\n \"sgprsWrites_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n { \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"] },\n null\n ]\n }},\n \"sgprsWrites_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n { \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"] },\n null\n ]\n }},\n \"sgprsWrites_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&SPI_CSN_WAVE\", 0]}, \n { \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&SPI_CSN_WAVE\"] },\n null\n ]\n }},\n \n \n \"sgprsWritesUti_avg\":{\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&GRBM_SPI_BUSY\"] }, 8] },\n null\n ]\n }},\n \"sgprsWritesUti_min\":{\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&GRBM_SPI_BUSY\"] }, 8] },\n null\n ]\n }},\n \"sgprsWritesUti_max\":{\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&GRBM_SPI_BUSY\", 0]}, \n {\"$divide\": [{ \"$divide\": [{ \"$multiply\": [1, \"&SPI_SWC_CSC_WR\"] }, \"&GRBM_SPI_BUSY\"] }, 8] },\n null\n ]\n }}\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Wave request Failed (CS)\",\n \"Avg\": \"&waveReqFailCS_avg\",\n \"Min\": \"&waveReqFailCS_min\",\n \"Max\": \"&waveReqFailCS_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CS Stall\",\n \"Avg\": \"&csStall_avg\",\n \"Min\": \"&csStall_min\",\n \"Max\": \"&csStall_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"CS Stall Rate\",\n \"Avg\": \"&csStallRate_avg\",\n \"Min\": \"&csStallRate_min\",\n \"Max\": \"&csStallRate_max\", \n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"Scratch Stall\",\n \"Avg\": \"&scratchStall_avg\",\n \"Min\": \"&scratchStall_min\",\n \"Max\": \"&scratchStall_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Insufficient SIMD Waveslots\",\n \"Avg\": \"&simdWaveslots_avg\",\n \"Min\": \"&simdWaveslots_min\",\n \"Max\": \"&simdWaveslots_max\", \n \"Unit\": \"#SIMD\"\n },\n {\n \"Metric\": \"Insufficient SIMD VGPRs\",\n \"Avg\": \"&simdVGPRs_avg\",\n \"Min\": \"&simdVGPRs_min\",\n \"Max\": \"&simdVGPRs_max\", \n \"Unit\": \"#SIMD\"\n },\n {\n \"Metric\": \"Insufficient SIMD SGPRs\",\n \"Avg\": \"&simdSGPRs_avg\",\n \"Min\": \"&simdSGPRs_min\",\n \"Max\": \"&simdSGPRs_max\", \n \"Unit\": \"#SIMD\"\n },\n {\n \"Metric\": \"Insufficient CU LDS\",\n \"Avg\": \"&cuLDS_avg\",\n \"Min\": \"&cuLDS_min\",\n \"Max\": \"&cuLDS_max\", \n \"Unit\": \"#CU\"\n },\n {\n \"Metric\": \"Insufficient CU Barries\",\n \"Avg\": \"&cuBarries_avg\",\n \"Min\": \"&cuBarries_min\",\n \"Max\": \"&cuBarries_max\", \n \"Unit\": \"#CU\"\n },\n {\n \"Metric\": \"Insufficient Bulky Resource\",\n \"Avg\": \"&bulkyResource_avg\",\n \"Min\": \"&bulkyResource_min\",\n \"Max\": \"&bulkyResource_max\", \n \"Unit\": \"#CU\"\n },\n {\n \"Metric\": \"Reach CU Threadgroups Limit\",\n \"Avg\": \"&threadgroupLimit_avg\",\n \"Min\": \"&threadgroupLimit_min\",\n \"Max\": \"&threadgroupLimit_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"Reach CU Wave Limit\",\n \"Avg\": \"&waveLimit_avg\",\n \"Min\": \"&waveLimit_min\",\n \"Max\": \"&waveLimit_max\", \n \"Unit\": \"Cycles\"\n },\n {\n \"Metric\": \"VGPR Writes\",\n \"Avg\": \"&vgprsWrites_avg\",\n \"Min\": \"&vgprsWrites_min\",\n \"Max\": \"&vgprsWrites_max\", \n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"SGPR Writes\",\n \"Avg\": \"&sgprsWrites_avg\",\n \"Min\": \"&sgprsWrites_min\",\n \"Max\": \"&sgprsWrites_max\", \n \"Unit\": \"Cycles/wave\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "SPI Resource Allocation",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Avg 1": 3,
+ "Avg 2": 4,
+ "Max 1": 7,
+ "Max 2": 8,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Unit 1": 9,
+ "Unit 2": 2
+ },
+ "renameByName": {
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Shader Processor Input (SPI)",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 7
+ },
+ "id": 185,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 169
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 142
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 196
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 174
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 168
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 272
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 225
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 100
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 103
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 115
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 117
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 11,
+ "w": 12,
+ "x": 0,
+ "y": 64
+ },
+ "id": 10,
+ "interval": "12h",
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"gridSize_avg\":{\"$avg\": \"&grd\"},\n \"gridSize_min\":{\"$min\": \"&grd\"},\n \"gridSize_max\":{\"$max\": \"&grd\"},\n\n \"workSize_avg\":{\"$avg\": \"&wgr\"},\n \"workSize_min\":{\"$min\": \"&wgr\"},\n \"workSize_max\":{\"$max\": \"&wgr\"},\n\n \"totWavefront_avg\":{\"$avg\": \"&SPI_CSN_WAVE\"},\n \"totWavefront_min\":{\"$min\": \"&SPI_CSN_WAVE\"},\n \"totWavefront_max\":{\"$max\": \"&SPI_CSN_WAVE\"},\n\n \"savedWavefront_avg\":{\"$avg\": \"&SQ_WAVES_SAVED\"},\n \"savedWavefront_min\":{\"$min\": \"&SQ_WAVES_SAVED\"},\n \"savedWavefront_max\":{\"$max\": \"&SQ_WAVES_SAVED\"},\n\n \"restoredWavefront_avg\":{\"$avg\": \"&SQ_WAVES_RESTORED\"},\n \"restoredWavefront_min\":{\"$min\": \"&SQ_WAVES_RESTORED\"},\n \"restoredWavefront_max\":{\"$max\": \"&SQ_WAVES_RESTORED\"},\n\n \"vgprs_avg\":{\"$avg\": \"&vgpr\"},\n \"vgprs_min\":{\"$min\": \"&vgpr\"},\n \"vgprs_max\":{\"$max\": \"&vgpr\"},\n\n \"sgprs_avg\":{\"$avg\": \"&sgpr\"},\n \"sgprs_min\":{\"$min\": \"&sgpr\"},\n \"sgprs_max\":{\"$max\": \"&sgpr\"},\n\n \"ldsAlloc_avg\":{\"$avg\": \"&lds\"},\n \"ldsAlloc_min\":{\"$min\": \"&lds\"},\n \"ldsAlloc_max\":{\"$max\": \"&lds\"},\n\n \"scratchAlloc_avg\":{\"$avg\": \"&scr\"},\n \"scratchAlloc_min\":{\"$min\": \"&scr\"},\n \"scratchAlloc_max\":{\"$max\": \"&scr\"}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Grid Size\",\n \"Avg\": \"&gridSize_avg\",\n \"Min\": \"&gridSize_min\",\n \"Max\": \"&gridSize_max\",\n \"Unit\": \"Work Items\"\n },\n {\n \"Metric\": \"Workgroup Size\",\n \"Avg\": \"&workSize_avg\",\n \"Min\": \"&workSize_min\",\n \"Max\": \"&workSize_max\",\n \"Unit\": \"Work Items\"\n },\n {\n \"Metric\": \"Total Wavefronts\",\n \"Avg\": \"&totWavefront_avg\",\n \"Min\": \"&totWavefront_min\",\n \"Max\": \"&totWavefront_max\",\n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"Saved Wavefronts\",\n \"Avg\": \"&savedWavefront_avg\",\n \"Min\": \"&savedWavefront_min\",\n \"Max\": \"&savedWavefront_max\",\n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"Restored Wavefronts\",\n \"Avg\": \"&restoredWavefront_avg\",\n \"Min\": \"&restoredWavefront_min\",\n \"Max\": \"&restoredWavefront_max\",\n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"VGPRs\",\n \"Avg\": \"&vgprs_avg\",\n \"Min\": \"&vgprs_min\",\n \"Max\": \"&vgprs_max\",\n \"Unit\": \"Registers\"\n },\n {\n \"Metric\": \"SGPRs\",\n \"Avg\": \"&sgprs_avg\",\n \"Min\": \"&sgprs_min\",\n \"Max\": \"&sgprs_max\",\n \"Unit\":\"Registers\"\n },\n {\n \"Metric\": \"LDS Allocation\",\n \"Avg\": \"&ldsAlloc_avg\",\n \"Min\": \"&ldsAlloc_min\",\n \"Max\": \"&ldsAlloc_max\",\n \"Unit\": \"Bytes\"\n },\n {\n \"Metric\": \"Scratch Allocation\",\n \"Avg\": \"&scratchAlloc_avg\",\n \"Min\": \"&scratchAlloc_min\",\n \"Max\": \"&scratchAlloc_max\",\n \"Unit\": \"Bytes\"\n }\n \n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Wavefront)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"gridSize_avg\":{\"$avg\": \"&grd\"},\n \"gridSize_min\":{\"$min\": \"&grd\"},\n \"gridSize_max\":{\"$max\": \"&grd\"},\n\n \"workSize_avg\":{\"$avg\": \"&wgr\"},\n \"workSize_min\":{\"$min\": \"&wgr\"},\n \"workSize_max\":{\"$max\": \"&wgr\"},\n\n\n \"totWavefront_avg\":{\"$avg\": \"&SPI_CSN_WAVE\"},\n \"totWavefront_min\":{\"$min\": \"&SPI_CSN_WAVE\"},\n \"totWavefront_max\":{\"$max\": \"&SPI_CSN_WAVE\"},\n\n \"savedWavefront_avg\":{\"$avg\": \"&SQ_WAVES_SAVED\"},\n \"savedWavefront_min\":{\"$min\": \"&SQ_WAVES_SAVED\"},\n \"savedWavefront_max\":{\"$max\": \"&SQ_WAVES_SAVED\"},\n\n \"restoredWavefront_avg\":{\"$avg\": \"&SQ_WAVES_RESTORED\"},\n \"restoredWavefront_min\":{\"$min\": \"&SQ_WAVES_RESTORED\"},\n \"restoredWavefront_max\":{\"$max\": \"&SQ_WAVES_RESTORED\"},\n\n\n \"vgprs_avg\":{\"$avg\": \"&vgpr\"},\n \"vgprs_min\":{\"$min\": \"&vgpr\"},\n \"vgprs_max\":{\"$max\": \"&vgpr\"},\n\n \"sgprs_avg\":{\"$avg\": \"&sgpr\"},\n \"sgprs_min\":{\"$min\": \"&sgpr\"},\n \"sgprs_max\":{\"$max\": \"&sgpr\"},\n\n \"ldsAlloc_avg\":{\"$avg\": \"&lds\"},\n \"ldsAlloc_min\":{\"$min\": \"&lds\"},\n \"ldsAlloc_max\":{\"$max\": \"&lds\"},\n\n \"scratchAlloc_avg\":{\"$avg\": \"&scr\"},\n \"scratchAlloc_min\":{\"$min\": \"&scr\"},\n \"scratchAlloc_max\":{\"$max\": \"&scr\"}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Grid Size\",\n \"Avg\": \"&gridSize_avg\",\n \"Min\": \"&gridSize_min\",\n \"Max\": \"&gridSize_max\",\n \"Unit\": \"Work Items\"\n },\n {\n \"Metric\": \"Workgroup Size\",\n \"Avg\": \"&workSize_avg\",\n \"Min\": \"&workSize_min\",\n \"Max\": \"&workSize_max\",\n \"Unit\": \"Work Items\"\n },\n {\n \"Metric\": \"Total Wavefronts\",\n \"Avg\": \"&totWavefront_avg\",\n \"Min\": \"&totWavefront_min\",\n \"Max\": \"&totWavefront_max\",\n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"Saved Wavefronts\",\n \"Avg\": \"&savedWavefront_avg\",\n \"Min\": \"&savedWavefront_min\",\n \"Max\": \"&savedWavefront_max\",\n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"Restored Wavefronts\",\n \"Avg\": \"&restoredWavefront_avg\",\n \"Min\": \"&restoredWavefront_min\",\n \"Max\": \"&restoredWavefront_max\",\n \"Unit\": \"Wavefronts\"\n },\n {\n \"Metric\": \"VGPRs\",\n \"Avg\": \"&vgprs_avg\",\n \"Min\": \"&vgprs_min\",\n \"Max\": \"&vgprs_max\",\n \"Unit\": \"Registers\"\n },\n {\n \"Metric\": \"SGPRs\",\n \"Avg\": \"&sgprs_avg\",\n \"Min\": \"&sgprs_min\",\n \"Max\": \"&sgprs_max\",\n \"Unit\":\"Registers\"\n },\n {\n \"Metric\": \"LDS Allocation\",\n \"Avg\": \"&ldsAlloc_avg\",\n \"Min\": \"&ldsAlloc_min\",\n \"Max\": \"&ldsAlloc_max\",\n \"Unit\": \"Bytes\"\n },\n {\n \"Metric\": \"Scratch Allocation\",\n \"Avg\": \"&scratchAlloc_avg\",\n \"Min\": \"&scratchAlloc_min\",\n \"Max\": \"&scratchAlloc_max\",\n \"Unit\": \"Bytes\"\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Wavefront Launch Stats",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true,
+ "Units 2": true,
+ "metric 2": true
+ },
+ "indexByName": {
+ "Avg 1": 1,
+ "Avg 2": 2,
+ "Max 1": 5,
+ "Max 2": 6,
+ "Metric 1": 0,
+ "Metric 2": 7,
+ "Min 1": 3,
+ "Min 2": 4,
+ "Unit 1": 9,
+ "Unit 2": 8
+ },
+ "renameByName": {
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 148
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 122
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 106
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 223
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 169
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 165
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 133
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 11,
+ "w": 12,
+ "x": 12,
+ "y": 64
+ },
+ "id": 34,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"instrWavefront_avg\":{\"$avg\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_WAVES\" ] }},\n \"instrWavefront_min\":{\"$min\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_WAVES\" ] }},\n \"instrWavefront_max\":{\"$max\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_WAVES\" ] }},\n\n \"waveCycles_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ]}},\n \"waveCycles_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ]}},\n \"waveCycles_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ]}},\n\n \"depWaitingCycles_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"depWaitingCycles_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"depWaitingCycles_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_ANY\"] }, \"&SQ_WAVES\" ]}},\n\n \"issueWaitCycles_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"issueWaitCycles_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"issueWaitCycles_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n\n \"activeCycles_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_ACTIVE_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"activeCycles_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_ACTIVE_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"activeCycles_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_ACTIVE_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n\n \"kernelTime_avg\":{\"$avg\": {\"$subtract\": [ \"&EndNs\", \"&BeginNs\" ]}},\n \"kernelTime_min\":{\"$min\": {\"$subtract\": [ \"&EndNs\", \"&BeginNs\" ]}},\n \"kernelTime_max\":{\"$max\": {\"$subtract\": [ \"&EndNs\", \"&BeginNs\" ]}},\n\n \"kernelCycle_avg\":{\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"kernelCycle_min\":{\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"kernelCycle_max\":{\"$max\": \"&GRBM_GUI_ACTIVE\"}\n\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Kernel Time (Nanosec)\",\n \"Avg\": \"&kernelTime_avg\",\n \"Min\": \"&kernelTime_min\",\n \"Max\": \"&kernelTime_max\",\n \"Unit\":\"ns\"\n },\n {\n \"Metric\": \"Kernel Time (Cycles)\",\n \"Avg\": \"&kernelCycle_avg\",\n \"Min\": \"&kernelCycle_min\",\n \"Max\": \"&kernelCycle_max\",\n \"Unit\":\"Cycle\"\n },\n\n {\n \"Metric\": \"Instr/wavefront\",\n \"Avg\": \"&instrWavefront_avg\",\n \"Min\": \"&instrWavefront_min\",\n \"Max\": \"&instrWavefront_max\",\n \"Unit\": \"Instr/wavefront\"\n },\n {\n \"Metric\": \"Wave Cycles\",\n \"Avg\": \"&waveCycles_avg\",\n \"Min\": \"&waveCycles_min\",\n \"Max\": \"&waveCycles_max\",\n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"Dependency Wait Cycles\",\n \"Avg\": \"&depWaitingCycles_avg\",\n \"Min\": \"&depWaitingCycles_min\",\n \"Max\": \"&depWaitingCycles_max\",\n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"Issue Wait Cycles\",\n \"Avg\": \"&issueWaitCycles_avg\",\n \"Min\": \"&issueWaitCycles_min\",\n \"Max\": \"&issueWaitCycles_max\",\n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"Active Cycles\",\n \"Avg\": \"&activeCycles_avg\",\n \"Min\": \"&activeCycles_min\",\n \"Max\": \"&activeCycles_max\",\n \"Unit\": \"Cycles/wave\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_LEVEL_WAVES\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n\n {\"$group\": {\n \"_id\": null,\n \"occAvg\": {\"$avg\": { \"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\" ] } },\n \"occMin\": {\"$min\": { \"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\" ] } },\n \"occMax\": {\"$max\": { \"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\" ] } }\n }},\n {\"$project\": {\n \"_id\":0,\n \"Metric\": \"Wavefront Occupancy\",\n \"Avg\": \"&occAvg\",\n \"Min\":\"&occMin\",\n \"Max\":\"&occMax\",\n \"Unit\":\"Wavefronts\"\n }}\n ]\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Wavefront)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"instrWavefront_avg\":{\"$avg\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_WAVES\" ] }},\n \"instrWavefront_min\":{\"$min\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_WAVES\" ] }},\n \"instrWavefront_max\":{\"$max\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_WAVES\" ] }},\n\n \"waveCycles_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ]}},\n \"waveCycles_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ]}},\n \"waveCycles_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ]}},\n\n \"depWaitingCycles_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"depWaitingCycles_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"depWaitingCycles_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_ANY\"] }, \"&SQ_WAVES\" ]}},\n\n \"issueWaitCycles_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"issueWaitCycles_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"issueWaitCycles_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_WAIT_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n\n \"activeCycles_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_ACTIVE_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"activeCycles_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_ACTIVE_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n \"activeCycles_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [4, \"&SQ_ACTIVE_INST_ANY\"] }, \"&SQ_WAVES\" ]}},\n\n \"kernelTime_avg\":{\"$avg\": {\"$subtract\": [ \"&EndNs\", \"&BeginNs\" ]}},\n \"kernelTime_min\":{\"$min\": {\"$subtract\": [ \"&EndNs\", \"&BeginNs\" ]}},\n \"kernelTime_max\":{\"$max\": {\"$subtract\": [ \"&EndNs\", \"&BeginNs\" ]}},\n\n \"kernelCycle_avg\":{\"$avg\": \"&GRBM_GUI_ACTIVE\"},\n \"kernelCycle_min\":{\"$min\": \"&GRBM_GUI_ACTIVE\"},\n \"kernelCycle_max\":{\"$max\": \"&GRBM_GUI_ACTIVE\"}\n\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Kernel Time (Nanosec)\",\n \"Avg\": \"&kernelTime_avg\",\n \"Min\": \"&kernelTime_min\",\n \"Max\": \"&kernelTime_max\",\n \"Unit\":\"ns\"\n },\n {\n \"Metric\": \"Kernel Time (Cycles)\",\n \"Avg\": \"&kernelCycle_avg\",\n \"Min\": \"&kernelCycle_min\",\n \"Max\": \"&kernelCycle_max\",\n \"Unit\":\"Cycle\"\n },\n\n {\n \"Metric\": \"Instr/wavefront\",\n \"Avg\": \"&instrWavefront_avg\",\n \"Min\": \"&instrWavefront_min\",\n \"Max\": \"&instrWavefront_max\",\n \"Unit\": \"Instr/wavefront\"\n },\n {\n \"Metric\": \"Wave Cycles\",\n \"Avg\": \"&waveCycles_avg\",\n \"Min\": \"&waveCycles_min\",\n \"Max\": \"&waveCycles_max\",\n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"Dependency Wait Cycles\",\n \"Avg\": \"&depWaitingCycles_avg\",\n \"Min\": \"&depWaitingCycles_min\",\n \"Max\": \"&depWaitingCycles_max\",\n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"Issue Wait Cycles\",\n \"Avg\": \"&issueWaitCycles_avg\",\n \"Min\": \"&issueWaitCycles_min\",\n \"Max\": \"&issueWaitCycles_max\",\n \"Unit\": \"Cycles/wave\"\n },\n {\n \"Metric\": \"Active Cycles\",\n \"Avg\": \"&activeCycles_avg\",\n \"Min\": \"&activeCycles_min\",\n \"Max\": \"&activeCycles_max\",\n \"Unit\": \"Cycles/wave\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_LEVEL_WAVES\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Wavefront)\"}}\n }},\n\n {\"$group\": {\n \"_id\": null,\n \"occAvg\": {\"$avg\": { \"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\" ] } },\n \"occMin\": {\"$min\": { \"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\" ] } },\n \"occMax\": {\"$max\": { \"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&GRBM_GUI_ACTIVE\" ] } }\n }},\n {\"$project\": {\n \"_id\":0,\n \"Metric\": \"Wavefront Occupancy\",\n \"Avg\": \"&occAvg\",\n \"Min\":\"&occMin\",\n \"Max\":\"&occMax\",\n \"Unit\":\"Wavefronts\"\n }}\n ]\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "Wavefront Runtime Stats",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Avg 1": 3,
+ "Avg 2": 4,
+ "Max 1": 7,
+ "Max 2": 8,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Unit 1": 9,
+ "Unit 2": 2
+ },
+ "renameByName": {
+ "Avg": "",
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)",
+ "Unit 1": "",
+ "Unit 2": ""
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Wavefront",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 8
+ },
+ "id": 209,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 17,
+ "w": 12,
+ "x": 0,
+ "y": 9
+ },
+ "id": 12,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "",
+ "values": true
+ },
+ "showUnfilled": true,
+ "text": {
+ "valueSize": 16
+ }
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"valu\": {\n \"$avg\": { \"$divide\": [ { \"$subtract\": [\"&SQ_INSTS_VALU\", \"&SQ_INSTS_MFMA\"]}, \"&denom\" ] }\n },\n \"mfma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_MFMA\", \"&denom\" ] }\n },\n \"vmem\": {\n \"$avg\": { \"$divide\": [ { \"$subtract\": [\"&SQ_INSTS_VMEM\", \"&SQ_INSTS_FLAT_LDS_ONLY\"]}, \"&denom\" ] }\n },\n \"lds\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_LDS\", \"&denom\" ] }\n },\n \"salu\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_SALU\", \"&denom\" ] }\n },\n \"smem\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_SMEM\", \"&denom\" ] }\n },\n \"branch\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_BRANCH\", \"&denom\" ] }\n },\n \"gds\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_GDS\", \"&denom\" ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"VALU - Vector\",\n \"count\": \"&valu\"\n },\n {\n \"metric\": \"VMEM\",\n \"count\": \"&vmem\"\n },\n {\n \"metric\": \"LDS\",\n \"count\": \"&lds\"\n },\n {\n \"metric\": \"VALU - MFMA\",\n \"count\": \"&mfma\"\n },\n {\n \"metric\": \"SALU\",\n \"count\": \"&salu\"\n },\n {\n \"metric\": \"SMEM\",\n \"count\": \"&smem\"\n },\n {\n \"metric\": \"Branch\",\n \"count\": \"&branch\"\n },\n {\n \"metric\": \"GDS\",\n \"count\": \"&gds\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "$Workload2.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Instruction Mix)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n \n {\"$group\": {\n \"_id\": null,\n \"valu\": {\n \"$avg\": { \"$divide\": [ { \"$subtract\": [\"&SQ_INSTS_VALU\", \"&SQ_INSTS_MFMA\"]}, \"&denom\" ] }\n },\n \"mfma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_MFMA\", \"&denom\" ] }\n },\n \"vmem\": {\n \"$avg\": { \"$divide\": [ { \"$subtract\": [\"&SQ_INSTS_VMEM\", \"&SQ_INSTS_FLAT_LDS_ONLY\"]}, \"&denom\" ] }\n },\n \"lds\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_LDS\", \"&denom\" ] }\n },\n \"salu\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_SALU\", \"&denom\" ] }\n },\n \"smem\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_SMEM\", \"&denom\" ] }\n },\n \"branch\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_BRANCH\", \"&denom\" ] }\n },\n \"gds\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_GDS\", \"&denom\" ] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"VALU - Vector (Baseline)\",\n \"count\": \"&valu\"\n },\n {\n \"metric\": \"VMEM (Baseline)\",\n \"count\": \"&vmem\"\n },\n {\n \"metric\": \"LDS (Baseline)\",\n \"count\": \"&lds\"\n },\n {\n \"metric\": \"VALU - MFMA (Baseline)\",\n \"count\": \"&mfma\"\n },\n {\n \"metric\": \"SALU (Baseline)\",\n \"count\": \"&salu\"\n },\n {\n \"metric\": \"SMEM (Baseline)\",\n \"count\": \"&smem\"\n },\n {\n \"metric\": \"Branch (Baseline)\",\n \"count\": \"&branch\"\n },\n {\n \"metric\": \"GDS (Baseline)\",\n \"count\": \"&gds\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "Instruction Mix",
+ "transformations": [
+ {
+ "id": "merge",
+ "options": {}
+ },
+ {
+ "id": "sortBy",
+ "options": {
+ "fields": {},
+ "sort": [
+ {
+ "field": "metric"
+ }
+ ]
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "percentage",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 24,
+ "w": 12,
+ "x": 12,
+ "y": 9
+ },
+ "id": 24,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "/^count$/",
+ "limit": 100,
+ "values": true
+ },
+ "showUnfilled": true,
+ "text": {}
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n \"count_int_i32\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_INT32\", \"&denom\" ] }\n },\n \"count_int_i64\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_INT64\", \"&denom\" ] }\n },\n \"count_f16_add\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_ADD_F16\", \"&denom\" ] }\n },\n \"count_f16_MUL\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MUL_F16\", \"&denom\" ] }\n },\n \"count_f16_fma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_FMA_F16\", \"&denom\" ] }\n },\n \"count_f16_trans\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_TRANS_F16\", \"&denom\" ] }\n },\n \"count_f32_add\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_ADD_F32\", \"&denom\" ] }\n },\n \"count_f32_MUL\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MUL_F32\", \"&denom\" ] }\n },\n \"count_f32_fma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_FMA_F32\", \"&denom\" ] }\n },\n \"count_f32_trans\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_TRANS_F32\", \"&denom\" ] }\n },\n \"count_f64_add\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_ADD_F64\", \"&denom\" ] }\n },\n \"count_f64_MUL\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MUL_F64\", \"&denom\" ] }\n },\n \"count_f64_fma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_FMA_F64\", \"&denom\" ] }\n },\n \"count_f64_trans\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_TRANS_F64\", \"&denom\" ] }\n },\n \"conversion\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_CVT\", \"&denom\" ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"INT32\",\n \"count\": \"&count_int_i32\"\n },\n {\n \"metric\": \"INT64\",\n \"count\": \"&count_int_i64\"\n },\n {\n \"metric\": \"F16-ADD\",\n \"count\": \"&count_f16_add\"\n },\n {\n \"metric\": \"F16-MUL\",\n \"count\": \"&count_f16_MUL\"\n },\n {\n \"metric\": \"F16-FMA\",\n \"count\": \"&count_f16_fma\"\n },\n {\n \"metric\": \"F16-Trans\",\n \"count\": \"&count_f16_trans\"\n },\n {\n \"metric\": \"F32-ADD\",\n \"count\": \"&count_f32_add\"\n },\n {\n \"metric\": \"F32-MUL\",\n \"count\": \"&count_f32_MUL\"\n },\n {\n \"metric\": \"F32-FMA\",\n \"count\": \"&count_f32_fma\"\n },\n {\n \"metric\": \"F32-Trans\",\n \"count\": \"&count_f32_trans\"\n },\n {\n \"metric\": \"F64-ADD\",\n \"count\": \"&count_f64_add\"\n },\n {\n \"metric\": \"F64-MUL\",\n \"count\": \"&count_f64_MUL\"\n },\n {\n \"metric\": \"F64-FMA\",\n \"count\": \"&count_f64_fma\"\n },\n {\n \"metric\": \"F64-Trans\",\n \"count\": \"&count_f64_trans\"\n },\n {\n \"metric\": \"Conversion\",\n \"count\": \"&conversion\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Instruction Mix)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n \"count_int_i32\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_INT32\", \"&denom\" ] }\n },\n \"count_int_i64\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_INT64\", \"&denom\" ] }\n },\n \"count_f16_add\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_ADD_F16\", \"&denom\" ] }\n },\n \"count_f16_MUL\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MUL_F16\", \"&denom\" ] }\n },\n \"count_f16_fma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_FMA_F16\", \"&denom\" ] }\n },\n \"count_f16_trans\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_TRANS_F16\", \"&denom\" ] }\n },\n \"count_f32_add\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_ADD_F32\", \"&denom\" ] }\n },\n \"count_f32_MUL\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MUL_F32\", \"&denom\" ] }\n },\n \"count_f32_fma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_FMA_F32\", \"&denom\" ] }\n },\n \"count_f32_trans\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_TRANS_F32\", \"&denom\" ] }\n },\n \"count_f64_add\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_ADD_F64\", \"&denom\" ] }\n },\n \"count_f64_MUL\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MUL_F64\", \"&denom\" ] }\n },\n \"count_f64_fma\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_FMA_F64\", \"&denom\" ] }\n },\n \"count_f64_trans\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_TRANS_F64\", \"&denom\" ] }\n },\n \"conversion\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_CVT\", \"&denom\" ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"INT32 (Baseline)\",\n \"count\": \"&count_int_i32\"\n },\n {\n \"metric\": \"INT64 (Baseline)\",\n \"count\": \"&count_int_i64\"\n },\n {\n \"metric\": \"F16-ADD (Baseline)\",\n \"count\": \"&count_f16_add\"\n },\n {\n \"metric\": \"F16-MUL (Baseline)\",\n \"count\": \"&count_f16_MUL\"\n },\n {\n \"metric\": \"F16-FMA (Baseline)\",\n \"count\": \"&count_f16_fma\"\n },\n {\n \"metric\": \"F16-Trans (Baseline)\",\n \"count\": \"&count_f16_trans\"\n },\n {\n \"metric\": \"F32-ADD (Baseline)\",\n \"count\": \"&count_f32_add\"\n },\n {\n \"metric\": \"F32-MUL (Baseline)\",\n \"count\": \"&count_f32_MUL\"\n },\n {\n \"metric\": \"F32-FMA (Baseline)\",\n \"count\": \"&count_f32_fma\"\n },\n {\n \"metric\": \"F32-Trans (Baseline)\",\n \"count\": \"&count_f32_trans\"\n },\n {\n \"metric\": \"F64-ADD (Baseline)\",\n \"count\": \"&count_f64_add\"\n },\n {\n \"metric\": \"F64-MUL (Baseline)\",\n \"count\": \"&count_f64_MUL\"\n },\n {\n \"metric\": \"F64-FMA (Baseline)\",\n \"count\": \"&count_f64_fma\"\n },\n {\n \"metric\": \"F64-Trans (Baseline)\",\n \"count\": \"&count_f64_trans\"\n },\n {\n \"metric\": \"Conversion (Baseline)\",\n \"count\": \"&conversion\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "VALU Arithmetic Instr Mix",
+ "transformations": [
+ {
+ "id": "merge",
+ "options": {}
+ },
+ {
+ "id": "sortBy",
+ "options": {
+ "fields": {},
+ "sort": [
+ {
+ "field": "metric"
+ }
+ ]
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 11,
+ "w": 12,
+ "x": 0,
+ "y": 26
+ },
+ "id": 275,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n \"buffer_instr\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"buffer_read\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"buffer_write\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"buffer_atomic\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \n \"flat_instr\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"flat_read\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"flat_write\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"flat_atomic\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\" ] }\n }\n \n }},\n {\"$set\": {\n \"array\": [\n {\n \"type\": \"Buffer Instr\",\n \"count\": \"&buffer_instr\"\n },\n {\n \"type\": \"Buffer Read\",\n \"count\": \"&buffer_read\"\n },\n {\n \"type\": \"Buffer Write\",\n \"count\": \"&buffer_write\"\n },\n {\n \"type\": \"Buffer Atomic\",\n \"count\": \"&buffer_atomic\"\n },\n {\n \"type\": \"Flat Instr\",\n \"count\": \"&flat_instr\"\n },\n {\n \"type\": \"Flat Read\",\n \"count\": \"&flat_read\"\n },\n {\n \"type\": \"Flat Write\",\n \"count\": \"&flat_write\"\n },\n {\n \"type\": \"Flat Atomic\",\n \"count\": \"&flat_atomic\"\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Instruction Mix)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n \"buffer_instr\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"buffer_read\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"buffer_write\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"buffer_atomic\": {\n \"$avg\": { \"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n\n \"flat_instr\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"flat_read\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"flat_write\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\" ] }\n },\n \"flat_atomic\": {\n \"$avg\": { \"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\" ] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"type\": \"Buffer Instr (Baseline)\",\n \"count\": \"&buffer_instr\"\n },\n {\n \"type\": \"Buffer Read (Baseline)\",\n \"count\": \"&buffer_read\"\n },\n {\n \"type\": \"Buffer Write (Baseline)\",\n \"count\": \"&buffer_write\"\n },\n {\n \"type\": \"Buffer Atomic (Baseline)\",\n \"count\": \"&buffer_atomic\"\n },\n {\n \"type\": \"Flat Instr (Baseline)\",\n \"count\": \"&flat_instr\"\n },\n {\n \"type\": \"Flat Read (Baseline)\",\n \"count\": \"&flat_read\"\n },\n {\n \"type\": \"Flat Write (Baseline)\",\n \"count\": \"&flat_write\"\n },\n {\n \"type\": \"Flat Atomic (Baseline)\",\n \"count\": \"&flat_atomic\"\n }\n\n ]\n }},\n\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "VMEM Instr Mix",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "type 2": true
+ },
+ "indexByName": {},
+ "renameByName": {
+ "count": "Count",
+ "count 1": "Avg (Current)",
+ "count 2": "Avg (Baseline)",
+ "type": "VMEM Instr",
+ "type 1": "VMEM Instr"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 10,
+ "w": 12,
+ "x": 12,
+ "y": 33
+ },
+ "id": 16,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"mmfa_i8\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_I8\", \"&SQ_WAVES\" ] }\n },\n \"mmfa_f16\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_F16\", \"&SQ_WAVES\" ] }\n },\n \"mmfa_bf16\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_BF16\", \"&SQ_WAVES\" ] }\n },\n \"mfma_f32\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_F32\", \"&SQ_WAVES\" ] }\n },\n \"mfma_f64\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_F64\", \"&SQ_WAVES\" ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"type\": \"MFMA-I8\",\n \"count\": \"&mmfa_i8\"\n },\n {\n \"type\": \"MFMA-F16\",\n \"count\": \"&mmfa_f16\"\n },\n {\n \"type\": \"MFMA-BF16\",\n \"count\": \"&mmfa_bf16\"\n },\n {\n \"type\": \"MFMA-F32\",\n \"count\": \"&mfma_f32\"\n },\n {\n \"type\": \"MFMA-F64\",\n \"count\": \"&mfma_f64\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Instruction Mix)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"mmfa_i8\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_I8\", \"&SQ_WAVES\" ] }\n },\n \"mmfa_f16\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_F16\", \"&SQ_WAVES\" ] }\n },\n \"mmfa_bf16\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_BF16\", \"&SQ_WAVES\" ] }\n },\n \"mfma_f32\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_F32\", \"&SQ_WAVES\" ] }\n },\n \"mfma_f64\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS_VALU_MFMA_F64\", \"&SQ_WAVES\" ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"type\": \"MFMA-I8 (Baseline)\",\n \"count\": \"&mmfa_i8\"\n },\n {\n \"type\": \"MFMA-F16 (Baseline)\",\n \"count\": \"&mmfa_f16\"\n },\n {\n \"type\": \"MFMA-BF16 (Baseline)\",\n \"count\": \"&mmfa_bf16\"\n },\n {\n \"type\": \"MFMA-F32 (Baseline)\",\n \"count\": \"&mfma_f32\"\n },\n {\n \"type\": \"MFMA-F64 (Baseline)\",\n \"count\": \"&mfma_f64\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "MFMA Arithmetic Instr Mix",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "type 2": true
+ },
+ "indexByName": {},
+ "renameByName": {
+ "count": "Count",
+ "count 1": "Avg (Current)",
+ "count 2": "Avg (Baseline)",
+ "type": "MFMA Instr",
+ "type 1": "MFMA Instr"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Compute Unit - Instruction Mix",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 9
+ },
+ "id": 8,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "decimals": 1,
+ "mappings": [],
+ "max": 100,
+ "min": 0,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 11,
+ "w": 12,
+ "x": 0,
+ "y": 10
+ },
+ "id": 211,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "mean"
+ ],
+ "fields": "/.*/",
+ "values": true
+ },
+ "showUnfilled": true,
+ "text": {
+ "titleSize": 14,
+ "valueSize": 14
+ }
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"valu_flops_val\": {\n \"$avg\": { \"$divide\": [ { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }] }] }\n ]}\n ,{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }]\n }},\n\n \"mfma_flops_f16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_bf16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f32_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f64_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_i8_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } }\n\n }}, \n {\"$set\": {\n \"array\": [\n {\n \"valu_flops_pop\": {\"$divide\": [{ \"$multiply\": [100, \"&valu_flops_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 64, 2 ]}, 1000] }] },\n \"mfma_flops_bf16_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_bf16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 512 ]}, 1000] }]},\n \"mfma_flops_f16_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 1024 ]}, 1000] }]},\n \"mfma_flops_f32_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f32_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 256 ]}, 1000] }]},\n \"mfma_flops_f64_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f64_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 256 ]}, 1000] }]},\n \"mfma_flops_i8_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_i8_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk, $numCU, 1024 ]}, 1000] }]}\n }\n ]\n }},\n\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n \n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Compute Pipeline)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"valu_flops_val\": {\n \"$avg\": { \"$divide\": [ { \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F16\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F32\"] }] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", { \"$multiply\": [2, \"&SQ_INSTS_VALU_FMA_F64\"] }] }] }\n ]}\n ,{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }]\n }},\n\n \"mfma_flops_f16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_bf16_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_BF16\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f32_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F32\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_f64_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_F64\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n \"mfma_flops_i8_val\": { \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] } },\n\n \"instr_val\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS\", { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }] }\n }\n\n }}, \n {\"$set\": {\n \"array\": [\n {\n \"valu_flops_pop\": {\"$divide\": [{ \"$multiply\": [100, \"&valu_flops_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 64, 2 ]}, 1000] }] },\n \"mfma_flops_bf16_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_bf16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 512 ]}, 1000] }]},\n \"mfma_flops_f16_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f16_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 1024 ]}, 1000] }]},\n \"mfma_flops_f32_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f32_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 256 ]}, 1000] }]},\n \"mfma_flops_f64_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_f64_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 256 ]}, 1000] }]},\n \"mfma_flops_i8_pop\": { \"$divide\": [{ \"$multiply\": [100, \"&mfma_flops_i8_val\"] }, { \"$divide\": [{ \"$multiply\": [$sclk2, $numCU2, 1024 ]}, 1000] }]}\n }\n ]\n }},\n\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n \n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Speed-of-Light: Compute Pipeline",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "mfma_flops_bf16_pop 1": 4,
+ "mfma_flops_bf16_pop 2": 5,
+ "mfma_flops_f16_pop 1": 6,
+ "mfma_flops_f16_pop 2": 7,
+ "mfma_flops_f32_pop 1": 8,
+ "mfma_flops_f32_pop 2": 9,
+ "mfma_flops_f64_pop 1": 10,
+ "mfma_flops_f64_pop 2": 11,
+ "mfma_flops_i8_pop 1": 12,
+ "mfma_flops_i8_pop 2": 13,
+ "valu_flops_pop 1": 0,
+ "valu_flops_pop 2": 1,
+ "valu_iops_pop 1": 2,
+ "valu_iops_pop 2": 3
+ },
+ "renameByName": {
+ "BW (Pct-of-Peak) 1": "BW Pct-of-Peak (Current)",
+ "BW (Pct-of-Peak) 2": "BW Pct-of-Peak (Baseline)",
+ "Bandwith (Pct-of-Peak)": "",
+ "Bandwith (Pct-of-Peak) 1": "BW Pct-of-Peak (Current)",
+ "Bandwith (Pct-of-Peak) 2": "BW Pct-of-Peak (Baseline) ",
+ "Bank Conflict Rate 1": "Bank Conflict Rate (Current)",
+ "Bank Conflict Rate 2": "Bank Conflict Rate (Baseline)",
+ "Cache Hit 1": "Cache Hit (Current)",
+ "Cache Hit 2": "Cache Hit (Baseline)",
+ "Latency (Cycles) 1": "Latency (Current) [Cycles]",
+ "Latency (Cycles) 2": "Latency (Baseline) [Cycles]",
+ "Stall 1": "Stall (Current)",
+ "Stall 2": "Stall (Baseline)",
+ "Util 1": "Util (Current)",
+ "Util 2": "Util (Baseline)",
+ "flops_pop": "FLOPs",
+ "flops_pop 1": "FLOPs (Current)",
+ "flops_pop 2": "FLOPs (Baseline)",
+ "iops_pop": "IOPs",
+ "iops_pop 1": "IOPs (Current)",
+ "iops_pop 2": "IOPs (Baseline)",
+ "mfma_flops_bf16_pop": "MFMA- BF16 (FLOPs)",
+ "mfma_flops_bf16_pop 1": "MFMA-BF16 (Cur)",
+ "mfma_flops_bf16_pop 2": "MFMA-BF16 (Baseline)",
+ "mfma_flops_f16_pop": "MFMA-F16 (FLOPs)",
+ "mfma_flops_f16_pop 1": "MFMA-F16 (Cur)",
+ "mfma_flops_f16_pop 2": "MFMA-F16 (Baseline)",
+ "mfma_flops_f32_pop": "MFMA-F32 (FLOPs)",
+ "mfma_flops_f32_pop 1": "MFMA-F32 (Cur)",
+ "mfma_flops_f32_pop 2": "MFMA-F32 (Baseline)",
+ "mfma_flops_f64_pop": "MFMA-F64 (FLOPs)",
+ "mfma_flops_f64_pop 1": "MFMA-F64 (Cur)",
+ "mfma_flops_f64_pop 2": "MFMA-F64 (Baseline)",
+ "mfma_flops_i8_pop": "MFMA-i8 (IOPs)",
+ "mfma_flops_i8_pop 1": "MFMA-I8 (Cur)",
+ "mfma_flops_i8_pop 2": "MFMA-I8 (Baseline)",
+ "valu_flops_pop": "VALU (FLOPs)",
+ "valu_flops_pop 1": "VALU FLOPs (Cur)",
+ "valu_flops_pop 2": "VALU FLOPs (Baseline)",
+ "valu_iops_pop": "VALU (IOPs)",
+ "valu_iops_pop 1": "VALU IOPs (Cur)",
+ "valu_iops_pop 2": "VALU IOPs (Baseline)"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 11,
+ "w": 12,
+ "x": 12,
+ "y": 10
+ },
+ "id": 257,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "rawQuery": true,
+ "refId": "pmc_perf",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_ipcAvg\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_BUSY_CU_CYCLES\" ] }\n },\n \"min_ipcAvg\": {\n \"$min\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_BUSY_CU_CYCLES\" ] } \n },\n \"max_ipcAvg\": {\n \"$max\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_BUSY_CU_CYCLES\" ] }\n },\n \n \"avg_ipcIssue\": {\n \"$avg\": { \"$divide\": [ { \"$add\": [ \"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\",\"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n \"min_ipcIssue\": {\n \"$min\": { \"$divide\": [ { \"$add\": [ \"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\",\"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n \"max_ipcIssue\": {\n \"$max\": { \"$divide\": [ { \"$add\": [ \"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\",\"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n\n \"avg_saluUtil\": {\n \"$avg\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU ] }\n },\n \"min_saluUtil\": {\n \"$min\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU ] }\n },\n \"max_saluUtil\": {\n \"$max\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU ] }\n },\n\n \"avg_valuUtil\": {\n \"$avg\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU ] }\n },\n \"min_valuUtil\": {\n \"$min\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU ] }\n },\n \"max_valuUtil\": {\n \"$max\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU ] }\n },\n\n \"avg_mfmaUtil\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [4, $numCU, \"&GRBM_GUI_ACTIVE\"] }] }\n },\n \"min_mfmaUtil\": {\n \"$min\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [4, $numCU, \"&GRBM_GUI_ACTIVE\"] }] }\n },\n \"max_mfmaUtil\": {\n \"$max\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [4, $numCU, \"&GRBM_GUI_ACTIVE\"] }] }\n },\n\n \"avg_mfmaInstrCycles\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_MFMA\", 0]},\n {\"$divide\": [ \"&SQ_VALU_MFMA_BUSY_CYCLES\", \"&SQ_INSTS_MFMA\" ]},\n null\n ]\n }\n },\n \"min_mfmaInstrCycles\": {\n \"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_MFMA\", 0]},\n {\"$divide\": [ \"&SQ_VALU_MFMA_BUSY_CYCLES\", \"&SQ_INSTS_MFMA\" ]},\n null\n ]\n }\n },\n \"max_mfmaInstrCycles\": {\n \"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_MFMA\", 0]},\n {\"$divide\": [ \"&SQ_VALU_MFMA_BUSY_CYCLES\", \"&SQ_INSTS_MFMA\" ]},\n null\n ]\n }\n },\n\n\n \"avg_unpredthreads_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n \"min_unpredthreads_val\": {\n \"$min\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n \"max_unpredthreads_val\": {\n \"$max\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n\n \"avg_instrFetchBand\": {\n \"$avg\": { \"$divide\": [ { \"$multiply\": [\"&SQ_IFETCH\", 32] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \"min_instrFetchBand\": {\n \"$min\": { \"$divide\": [ { \"$multiply\": [\"&SQ_IFETCH\", 32] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \"max_instrFetchBand\": {\n \"$max\": { \"$divide\": [ { \"$multiply\": [\"&SQ_IFETCH\", 32] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n }\n\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"IPC (Avg)\",\n \"Avg\": \"&avg_ipcAvg\",\n \"Min\": \"&min_ipcAvg\",\n \"Max\": \"&max_ipcAvg\",\n \"Unit\": \"Instr/cycle\"\n },\n {\n \"Metric\": \"IPC (Issue)\",\n \"Avg\": \"&avg_ipcIssue\",\n \"Min\": \"&min_ipcIssue\",\n \"Max\": \"&max_ipcIssue\",\n \"Unit\": \"Instr/cycle\"\n },\n {\n \"Metric\": \"SALU Util\",\n \"Avg\": \"&avg_saluUtil\",\n \"Min\": \"&min_saluUtil\",\n \"Max\": \"&max_saluUtil\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"VALU Util\",\n \"Avg\": \"&avg_valuUtil\",\n \"Min\": \"&min_valuUtil\",\n \"Max\": \"&max_valuUtil\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"VALU Active Threads\",\n \"Avg\": \"&avg_unpredthreads_val\",\n \"Min\": \"&min_unpredthreads_val\",\n \"Max\": \"&max_unpredthreads_val\",\n \"Unit\": \"Threads\"\n },\n {\n \"Metric\": \"MFMA Util\",\n \"Avg\": \"&avg_mfmaUtil\",\n \"Min\": \"&min_mfmaUtil\",\n \"Max\": \"&max_mfmaUtil\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"MFMA Instr Cycles\",\n \"Avg\": \"&avg_mfmaInstrCycles\",\n \"Min\": \"&min_mfmaInstrCycles\",\n \"Max\": \"&max_mfmaInstrCycles\",\n \"Unit\": \"cycles/instr\"\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "pmc_perf2",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Compute Pipeline)\"}}\n }}, \n {\"$group\": {\n \"_id\": null,\n \"avg_ipcAvg\": {\n \"$avg\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_BUSY_CU_CYCLES\" ] }\n },\n \"min_ipcAvg\": {\n \"$min\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_BUSY_CU_CYCLES\" ] } \n },\n \"max_ipcAvg\": {\n \"$max\": { \"$divide\": [ \"&SQ_INSTS\", \"&SQ_BUSY_CU_CYCLES\" ] }\n },\n \n \"avg_ipcIssue\": {\n \"$avg\": { \"$divide\": [ { \"$add\": [ \"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\",\"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n \"min_ipcIssue\": {\n \"$min\": { \"$divide\": [ { \"$add\": [ \"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\",\"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n \"max_ipcIssue\": {\n \"$max\": { \"$divide\": [ { \"$add\": [ \"&SQ_INSTS_VALU\", \"&SQ_INSTS_VMEM\",\"&SQ_INSTS_SALU\", \"&SQ_INSTS_SMEM\", \"&SQ_INSTS_GDS\", \"&SQ_INSTS_BRANCH\", \"&SQ_INSTS_SENDMSG\", \"&SQ_INSTS_VSKIPPED\"] }, \"&SQ_ACTIVE_INST_ANY\"] }\n },\n\n \"avg_saluUtil\": {\n \"$avg\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU2 ] }\n },\n \"min_saluUtil\": {\n \"$min\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU2 ] }\n },\n \"max_saluUtil\": {\n \"$max\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_SCA\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU2 ] }\n },\n\n \"avg_valuUtil\": {\n \"$avg\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU2 ] }\n },\n \"min_valuUtil\": {\n \"$min\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU2 ] }\n },\n \"max_valuUtil\": {\n \"$max\": { \"$divide\": [{ \"$divide\": [ { \"$multiply\": [100, \"&SQ_ACTIVE_INST_VALU\"] }, \"&GRBM_GUI_ACTIVE\"] },$numCU2 ] }\n },\n\n\n \"avg_mfmaUtil\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [4, $numCU2, \"&GRBM_GUI_ACTIVE\"] }] }\n },\n \"min_mfmaUtil\": {\n \"$min\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [4, $numCU2, \"&GRBM_GUI_ACTIVE\"] }] }\n },\n \"max_mfmaUtil\": {\n \"$max\": { \"$divide\": [{ \"$multiply\": [100, \"&SQ_VALU_MFMA_BUSY_CYCLES\"] }, { \"$multiply\": [4, $numCU2, \"&GRBM_GUI_ACTIVE\"] }] }\n },\n\n \"avg_mfmaInstrCycles\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_MFMA\", 0]},\n {\"$divide\": [ \"&SQ_VALU_MFMA_BUSY_CYCLES\", \"&SQ_INSTS_MFMA\" ]},\n null\n ]\n }\n },\n \"min_mfmaInstrCycles\": {\n \"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_MFMA\", 0]},\n {\"$divide\": [ \"&SQ_VALU_MFMA_BUSY_CYCLES\", \"&SQ_INSTS_MFMA\" ]},\n null\n ]\n }\n },\n \"max_mfmaInstrCycles\": {\n \"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_MFMA\", 0]},\n {\"$divide\": [ \"&SQ_VALU_MFMA_BUSY_CYCLES\", \"&SQ_INSTS_MFMA\" ]},\n null\n ]\n }\n },\n\n \"avg_unpredthreads_val\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n \"min_unpredthreads_val\": {\n \"$min\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n \"max_unpredthreads_val\": {\n \"$max\": {\n \"$cond\": [\n {\"$ne\":[\"&SQ_ACTIVE_INST_VALU\" , 0]},\n { \"$divide\": [\"&SQ_THREAD_CYCLES_VALU\", \"&SQ_ACTIVE_INST_VALU\"] },\n null\n ]\n }\n },\n\n \"avg_instrFetchBand\": {\n \"$avg\": { \"$divide\": [ { \"$multiply\": [\"&SQ_IFETCH\", 32] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \"min_instrFetchBand\": {\n \"$min\": { \"$divide\": [ { \"$multiply\": [\"&SQ_IFETCH\", 32] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \"max_instrFetchBand\": {\n \"$max\": { \"$divide\": [ { \"$multiply\": [\"&SQ_IFETCH\", 32] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"IPC (Avg)\",\n \"Avg 2\": \"&avg_ipcAvg\",\n \"Min 2\": \"&min_ipcAvg\",\n \"Max 2\": \"&max_ipcAvg\",\n \"Unit\": \"Instr/cycle\"\n },\n {\n \"Metric\": \"IPC (Issue)\",\n \"Avg 2\": \"&avg_ipcIssue\",\n \"Min 2\": \"&min_ipcIssue\",\n \"Max 2\": \"&max_ipcIssue\",\n \"Unit\": \"Instr/cycle\"\n },\n {\n \"Metric\": \"SALU Util\",\n \"Avg 2\": \"&avg_saluUtil\",\n \"Min 2\": \"&min_saluUtil\",\n \"Max 2\": \"&max_saluUtil\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"VALU Util\",\n \"Avg 2\": \"&avg_valuUtil\",\n \"Min 2\": \"&min_valuUtil\",\n \"Max 2\": \"&max_valuUtil\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"VALU Active Threads\",\n \"Avg 2\": \"&avg_unpredthreads_val\",\n \"Min 2\": \"&min_unpredthreads_val\",\n \"Max 2\": \"&max_unpredthreads_val\",\n \"Unit\": \"Threads\"\n },\n {\n \"Metric\": \"MFMA Util\",\n \"Avg 2\": \"&avg_mfmaUtil\",\n \"Min 2\": \"&min_mfmaUtil\",\n \"Max 2\": \"&max_mfmaUtil\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"MFMA Instr Cycles\",\n \"Avg 2\": \"&avg_mfmaInstrCycles\",\n \"Min 2\": \"&min_mfmaInstrCycles\",\n \"Max 2\": \"&max_mfmaInstrCycles\",\n \"Unit\": \"cycles/instr\"\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Pipeline Stats",
+ "transformations": [
+ {
+ "id": "merge",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "Avg": 1,
+ "Avg 2": 2,
+ "Max": 5,
+ "Max 2": 6,
+ "Metric": 0,
+ "Min": 3,
+ "Min 2": 4,
+ "Unit": 7
+ },
+ "renameByName": {
+ "Avg 2": "Avg (Baseline)",
+ "Max 2": "Max (Baseline)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 111
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 117
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 135
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 112
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 83
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 118
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 21
+ },
+ "id": 96,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_intOps\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [{ \"$multiply\": [{ \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] },64] }, { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\",512] }] },\"&denom\"]\n }},\n \"min_intOps\":{\"$min\": {\n \"$divide\": [{ \"$add\": [{ \"$multiply\": [{ \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] },64] }, { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\",512] }] },\"&denom\"]\n }},\n \"max_intOps\":{\"$max\": {\n \"$divide\": [{ \"$add\": [{ \"$multiply\": [{ \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] },64] }, { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\",512] }] },\"&denom\"]\n }},\n\n\n \"avg_flops\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F16\", 2]}] }] },\n { \"$add\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"] }, { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n \"min_flops\":{\"$min\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F16\", 2]}] }] },\n { \"$add\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"] }, { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n\n \"max_flops\":{\"$max\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F16\", 2]}] }] },\n { \"$add\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"] }, { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n\n\n \"avg_int8Ops\":{\"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, \"&denom\"] }},\n \"min_int8Ops\":{\"$min\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, \"&denom\"] }},\n \"max_int8Ops\":{\"$max\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, \"&denom\"] }},\n\n \"avg_int32Ops\":{\"$avg\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT32\", 64] }, \"&denom\"] }},\n \"min_int32Ops\":{\"$min\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT32\", 64] }, \"&denom\"] }},\n \"max_int32Ops\":{\"$max\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT32\", 64] }, \"&denom\"] }},\n\n \"avg_int64Ops\":{\"$avg\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT64\", 64] }, \"&denom\"] }},\n \"min_int64Ops\":{\"$min\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT64\", 64] }, \"&denom\"] }},\n \"max_int64Ops\":{\"$max\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT64\", 64] }, \"&denom\"] }},\n\n \"avg_f16Ops\":{\"$avg\": {\n \"$divide\": [ \n {\"$add\": [{ \"$multiply\": [64, \"&SQ_INSTS_VALU_ADD_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_MUL_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_TRANS_F16\"]}, \n { \"$multiply\": [128, \"&SQ_INSTS_VALU_FMA_F16\"]}, \n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"]}\n ]},\n \"&denom\"]\n }},\n \"min_f16Ops\":{\"$min\": {\n \"$divide\": [ \n {\"$add\": [{ \"$multiply\": [64, \"&SQ_INSTS_VALU_ADD_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_MUL_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_TRANS_F16\"]}, \n { \"$multiply\": [128, \"&SQ_INSTS_VALU_FMA_F16\"]}, \n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"]}\n ]},\n \"&denom\"]\n }},\n \"max_f16Ops\":{\"$max\": {\n \"$divide\": [ \n {\"$add\": [{ \"$multiply\": [64, \"&SQ_INSTS_VALU_ADD_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_MUL_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_TRANS_F16\"]}, \n { \"$multiply\": [128, \"&SQ_INSTS_VALU_FMA_F16\"]}, \n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"]}\n ]},\n \"&denom\"]\n }},\n\n\n\n \"avg_bf16Ops\":{\"$avg\": { \"$divide\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }, \"&denom\"] }},\n \"min_bf16Ops\":{\"$min\": { \"$divide\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }, \"&denom\"] }},\n \"max_bf16Ops\":{\"$max\": { \"$divide\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }, \"&denom\"] }},\n\n \"avg_f32Ops\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] }\n ] }, \"&denom\"]\n }},\n \"min_f32Ops\":{\"$min\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] }\n ] }, \"&denom\"]\n }},\n \"max_f32Ops\":{\"$max\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] }\n ] }, \"&denom\"]\n }},\n\n \"avg_f64Ops\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n \"min_f64Ops\":{\"$min\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n \"max_f64Ops\":{\"$max\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }}\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"FLOPs (Total)\",\n \"Avg\": \"&avg_flops\",\n \"Min\": \"&min_flops\",\n \"Max\": \"&max_flops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"INT8 OPs\",\n \"Avg\": \"&avg_int8Ops\",\n \"Min\": \"&min_int8Ops\",\n \"Max\": \"&max_int8Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"F16 OPs\",\n \"Avg\": \"&avg_f16Ops\",\n \"Min\": \"&min_f16Ops\",\n \"Max\": \"&max_f16Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"BF16 OPs\",\n \"Avg\": \"&avg_bf16Ops\",\n \"Min\": \"&min_bf16Ops\",\n \"Max\": \"&max_bf16Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n\n {\n \"Metric\": \"F32 OPs\",\n \"Avg\": \"&avg_f32Ops\",\n \"Min\": \"&min_f32Ops\",\n \"Max\": \"&max_f32Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"F64 OPs\",\n \"Avg\": \"&avg_f64Ops\",\n \"Min\": \"&min_f64Ops\",\n \"Max\": \"&max_f64Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Compute Pipeline)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_intOps\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [{ \"$multiply\": [{ \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] },64] }, { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\",512] }] },\"&denom\"]\n }},\n \"min_intOps\":{\"$min\": {\n \"$divide\": [{ \"$add\": [{ \"$multiply\": [{ \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] },64] }, { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\",512] }] },\"&denom\"]\n }},\n \"max_intOps\":{\"$max\": {\n \"$divide\": [{ \"$add\": [{ \"$multiply\": [{ \"$add\": [\"&SQ_INSTS_VALU_INT32\", \"&SQ_INSTS_VALU_INT64\"] },64] }, { \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\",512] }] },\"&denom\"]\n }},\n\n\n \"avg_flops\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F16\", 2]}] }] },\n { \"$add\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"] }, { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n \"min_flops\":{\"$min\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F16\", 2]}] }] },\n { \"$add\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"] }, { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n\n \"max_flops\":{\"$max\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F16\", \"&SQ_INSTS_VALU_MUL_F16\", \"&SQ_INSTS_VALU_TRANS_F16\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F16\", 2]}] }] },\n { \"$add\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"] }, { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] },\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n\n\n \"avg_int8Ops\":{\"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, \"&denom\"] }},\n \"min_int8Ops\":{\"$min\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, \"&denom\"] }},\n \"max_int8Ops\":{\"$max\": { \"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_MFMA_MOPS_I8\", 512] }, \"&denom\"] }},\n\n \"avg_int32Ops\":{\"$avg\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT32\", 64] }, \"&denom\"] }},\n \"min_int32Ops\":{\"$min\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT32\", 64] }, \"&denom\"] }},\n \"max_int32Ops\":{\"$max\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT32\", 64] }, \"&denom\"] }},\n\n \"avg_int64Ops\":{\"$avg\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT64\", 64] }, \"&denom\"] }},\n \"min_int64Ops\":{\"$min\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT64\", 64] }, \"&denom\"] }},\n \"max_int64Ops\":{\"$max\": {\"$divide\": [{ \"$multiply\": [\"&SQ_INSTS_VALU_INT64\", 64] }, \"&denom\"] }},\n\n \"avg_f16Ops\":{\"$avg\": {\n \"$divide\": [ \n {\"$add\": [{ \"$multiply\": [64, \"&SQ_INSTS_VALU_ADD_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_MUL_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_TRANS_F16\"]}, \n { \"$multiply\": [128, \"&SQ_INSTS_VALU_FMA_F16\"]}, \n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"]}\n ]},\n \"&denom\"]\n }},\n \"min_f16Ops\":{\"$min\": {\n \"$divide\": [ \n {\"$add\": [{ \"$multiply\": [64, \"&SQ_INSTS_VALU_ADD_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_MUL_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_TRANS_F16\"]}, \n { \"$multiply\": [128, \"&SQ_INSTS_VALU_FMA_F16\"]}, \n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"]}\n ]},\n \"&denom\"]\n }},\n \"max_f16Ops\":{\"$max\": {\n \"$divide\": [ \n {\"$add\": [{ \"$multiply\": [64, \"&SQ_INSTS_VALU_ADD_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_MUL_F16\"]}, \n { \"$multiply\": [64, \"&SQ_INSTS_VALU_TRANS_F16\"]}, \n { \"$multiply\": [128, \"&SQ_INSTS_VALU_FMA_F16\"]}, \n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F16\"]}\n ]},\n \"&denom\"]\n }},\n\n\n\n \"avg_bf16Ops\":{\"$avg\": { \"$divide\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }, \"&denom\"] }},\n \"min_bf16Ops\":{\"$min\": { \"$divide\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }, \"&denom\"] }},\n \"max_bf16Ops\":{\"$max\": { \"$divide\": [{ \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_BF16\"] }, \"&denom\"] }},\n\n \"avg_f32Ops\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] }\n ] }, \"&denom\"]\n }},\n \"min_f32Ops\":{\"$min\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] }\n ] }, \"&denom\"]\n }},\n \"max_f32Ops\":{\"$max\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F32\", \"&SQ_INSTS_VALU_MUL_F32\", \"&SQ_INSTS_VALU_TRANS_F32\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F32\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F32\"] }\n ] }, \"&denom\"]\n }},\n\n \"avg_f64Ops\":{\"$avg\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n \"min_f64Ops\":{\"$min\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }},\n \"max_f64Ops\":{\"$max\": {\n \"$divide\": [{ \"$add\": [\n { \"$multiply\": [64, { \"$add\": [\"&SQ_INSTS_VALU_ADD_F64\", \"&SQ_INSTS_VALU_MUL_F64\", \"&SQ_INSTS_VALU_TRANS_F64\", {\"$multiply\": [\"&SQ_INSTS_VALU_FMA_F64\", 2]}] }] },\n { \"$multiply\": [512, \"&SQ_INSTS_VALU_MFMA_MOPS_F64\"] }\n ] }, \"&denom\"]\n }}\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"FLOPs (Total)\",\n \"Avg\": \"&avg_flops\",\n \"Min\": \"&min_flops\",\n \"Max\": \"&max_flops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"INT8 OPs\",\n \"Avg\": \"&avg_int8Ops\",\n \"Min\": \"&min_int8Ops\",\n \"Max\": \"&max_int8Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"F16 OPs\",\n \"Avg\": \"&avg_f16Ops\",\n \"Min\": \"&min_f16Ops\",\n \"Max\": \"&max_f16Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"BF16 OPs\",\n \"Avg\": \"&avg_bf16Ops\",\n \"Min\": \"&min_bf16Ops\",\n \"Max\": \"&max_bf16Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n\n {\n \"Metric\": \"F32 OPs\",\n \"Avg\": \"&avg_f32Ops\",\n \"Min\": \"&min_f32Ops\",\n \"Max\": \"&max_f32Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n },\n {\n \"Metric\": \"F64 OPs\",\n \"Avg\": \"&avg_f64Ops\",\n \"Min\": \"&min_f64Ops\",\n \"Max\": \"&max_f64Ops\",\n \"Unit\": {\"$concat\": [\"OPs \", $normUnit] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Arithmetic Operations",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Avg 1": 1,
+ "Avg 2": 2,
+ "Max 1": 5,
+ "Max 2": 6,
+ "Metric 1": 0,
+ "Metric 2": 7,
+ "Min 1": 3,
+ "Min 2": 4,
+ "Unit 1": 9,
+ "Unit 2": 8
+ },
+ "renameByName": {
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 21
+ },
+ "id": 255,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "rawQuery": true,
+ "refId": "SQ_INST_LEVEL_VMEM",
+ "target": "${Workload1}.SQ_INST_LEVEL_VMEM.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_vmemLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_VMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_VMEM\" ]},\n null\n ] \n }\n },\n \"min_vmemLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_VMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_VMEM\" ]},\n null\n ] \n }\n },\n \"max_vmemLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_VMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_VMEM\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"VMEM Latency\",\n \"Avg\": \"&avg_vmemLat\",\n \"Min\": \"&min_vmemLat\",\n \"Max\": \"&max_vmemLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_INST_LEVEL_SMEM",
+ "target": "${Workload1}.SQ_INST_LEVEL_SMEM.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_smemLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_SMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_SMEM\" ]},\n null\n ] \n }\n },\n \"min_smemLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_SMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_SMEM\" ]},\n null\n ] \n }\n },\n \"max_smemLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_SMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_SMEM\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"SMEM Latency\",\n \"Avg\":\"&avg_smemLat\",\n \"Min\":\"&min_smemLat\",\n \"Max\":\"&max_smemLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_IFETCH_LEVEL",
+ "target": "${Workload1}.SQ_IFETCH_LEVEL.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }}, \n {\"$group\": {\n \"_id\": null,\n \"avg_instrFetchLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_IFETCH\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\" ]},\n null\n ] \n }\n },\n \"min_instrFetchLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_IFETCH\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\" ]},\n null\n ] \n }\n },\n \"max_instrFetchLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_IFETCH\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"Instr Fetch Latency\",\n \"Avg\":\"&avg_instrFetchLat\",\n \"Min\":\"&min_instrFetchLat\",\n \"Max\":\"&max_instrFetchLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_INST_LEVEL_LDS",
+ "target": "${Workload1}.SQ_INST_LEVEL_LDS.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }}, \n {\"$group\": {\n \"_id\": null,\n \"avg_ldsLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"min_ldsLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"max_ldsLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"LDS Latency\",\n \"Avg\":\"&avg_ldsLat\",\n \"Min\":\"&min_ldsLat\",\n \"Max\":\"&max_ldsLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_INST_LEVEL_VMEM2",
+ "target": "${Workload2}.SQ_INST_LEVEL_VMEM.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Compute Pipeline)\"}}\n }}, \n {\"$group\": {\n \"_id\": null,\n \"avg_vmemLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_VMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_VMEM\" ]},\n null\n ] \n }\n },\n \"min_vmemLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_VMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_VMEM\" ]},\n null\n ] \n }\n },\n \"max_vmemLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_VMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_VMEM\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"VMEM Latency\",\n \"Avg 2\": \"&avg_vmemLat\",\n \"Min 2\": \"&min_vmemLat\",\n \"Max 2\": \"&max_vmemLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_INST_LEVEL_SMEM2",
+ "target": "${Workload2}.SQ_INST_LEVEL_SMEM.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Compute Pipeline)\"}}\n }}, \n {\"$group\": {\n \"_id\": null,\n \"avg_smemLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_SMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_SMEM\" ]},\n null\n ] \n }\n },\n \"min_smemLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_SMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_SMEM\" ]},\n null\n ] \n }\n },\n \"max_smemLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_SMEM\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_SMEM\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"SMEM Latency\",\n \"Avg 2\":\"&avg_smemLat\",\n \"Min 2\":\"&min_smemLat\",\n \"Max 2\":\"&max_smemLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_IFETCH_LEVEL2",
+ "target": "${Workload2}.SQ_IFETCH_LEVEL.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Compute Pipeline)\"}}\n }}, \n {\"$group\": {\n \"_id\": null,\n \"avg_instrFetchLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_IFETCH\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\" ]},\n null\n ] \n }\n },\n \"min_instrFetchLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_IFETCH\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\" ]},\n null\n ] \n }\n },\n \"max_instrFetchLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_IFETCH\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_IFETCH\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"Instr Fetch Latency\",\n \"Avg 2\":\"&avg_instrFetchLat\",\n \"Min 2\":\"&min_instrFetchLat\",\n \"Max 2\":\"&max_instrFetchLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "SQ_INST_LEVEL_LDS2",
+ "target": "${Workload2}.SQ_INST_LEVEL_LDS.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Compute Pipeline)\"}}\n }}, \n {\"$group\": {\n \"_id\": null,\n \"avg_ldsLat\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"min_ldsLat\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"max_ldsLat\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"Metric\": \"LDS Latency\",\n \"Avg 2\":\"&avg_ldsLat\",\n \"Min 2\":\"&min_ldsLat\",\n \"Max 2\":\"&max_ldsLat\",\n \"Unit\": \"Cycles\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Memory Latencies",
+ "transformations": [
+ {
+ "id": "merge",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "Avg": 1,
+ "Avg 2": 2,
+ "Max": 5,
+ "Max 2": 6,
+ "Metric": 0,
+ "Min": 3,
+ "Min 2": 4,
+ "Unit": 7
+ },
+ "renameByName": {
+ "Avg": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Compute Unit - Compute Pipeline",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 10
+ },
+ "id": 98,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "decimals": 1,
+ "mappings": [],
+ "max": 100,
+ "min": 0,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 11
+ },
+ "id": 205,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "mean"
+ ],
+ "fields": "/.*/",
+ "values": true
+ },
+ "showUnfilled": true,
+ "text": {
+ "titleSize": 14,
+ "valueSize": 16
+ }
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \n \"bconf_rate\": {\n \"$avg\": {\"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n {\"$multiply\": [\"&SQ_LDS_BANK_CONFLICT\", 3.125]},\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n } \n },\n \n \"bw_pop\": {\n \"$avg\": {\"$divide\": [\n {\"$divide\":[ \n { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks\"}\n ]}, \n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]},\n \n {\"$multiply\": [$sclk, $numCU, 0.00128]}\n ]}\n },\n\n \"lds_util\": {\n \"$avg\": {\"$divide\":[ \n { \"$multiply\": [ 100, \"&SQ_LDS_IDX_ACTIVE\" ]}, \n {\"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}\n ]}\n },\n\n \"lds_access_rate\": {\n \"$avg\": {\"$divide\":[ \n { \"$multiply\": [200, \"&SQ_ACTIVE_INST_LDS\" ]}, \n {\"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}\n ]}\n }\n \n }},\n \n {\"$set\": {\n \"array\": [\n {\n \"Utilization\": \"&lds_util\",\n \"Access Rate\": \"&lds_access_rate\",\n \"Bandwith (Pct-of-Peak)\": \"&bw_pop\",\n \"Bank Conflict Rate\": \"&bconf_rate\"\n }\n \n ]\n }},\n \n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n \n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n \n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Local Data Share)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n\n \"bconf_rate\": {\n \"$avg\": {\"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n {\"$multiply\": [\"&SQ_LDS_BANK_CONFLICT\", 3.125]},\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n } \n },\n\n \"bw_pop\": {\n \"$avg\": {\"$divide\": [\n {\"$divide\":[ \n { \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, \n 4, \n {\"$toInt\": \"$L2Banks2\"}\n ]}, \n {\"$subtract\": [\"&EndNs\", \"&BeginNs\"]}\n ]},\n \n {\"$multiply\": [$sclk2, $numCU2, 0.00128]}\n ]}\n },\n \"lds_util\": {\n \"$avg\": {\"$divide\":[ \n { \"$multiply\": [ 100, \"&SQ_LDS_IDX_ACTIVE\" ]}, \n {\"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}\n ]}\n },\n\n \"lds_access_rate\": {\n \"$avg\": {\"$divide\":[ \n { \"$multiply\": [200, \"&SQ_ACTIVE_INST_LDS\" ]}, \n {\"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}\n ]}\n }\n\n\n }},\n\n {\"$set\": {\n \"array\": [\n {\n \"Utilization\": \"&lds_util\",\n \"Access Rate\": \"&lds_access_rate\",\n \"Bandwith (Pct-of-Peak)\": \"&bw_pop\",\n \"Bank Conflict Rate\": \"&bconf_rate\"\n }\n\n ]\n }},\n\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n \n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Speed-of-Light: LDS",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "Access Rate 1": 6,
+ "Access Rate 2": 7,
+ "Bandwith (Pct-of-Peak) 1": 0,
+ "Bandwith (Pct-of-Peak) 2": 1,
+ "Bank Conflict Rate 1": 2,
+ "Bank Conflict Rate 2": 3,
+ "Utilization 1": 4,
+ "Utilization 2": 5
+ },
+ "renameByName": {
+ "Access Rate 1": "Access Rate (Current)",
+ "Access Rate 2": "Access Rate (Baseline)",
+ "BW (Pct-of-Peak) 1": "BW Pct-of-Peak (Current)",
+ "BW (Pct-of-Peak) 2": "BW Pct-of-Peak (Baseline)",
+ "Bandwith (Pct-of-Peak)": "",
+ "Bandwith (Pct-of-Peak) 1": "BW Pct-of-Peak (Current)",
+ "Bandwith (Pct-of-Peak) 2": "BW Pct-of-Peak (Baseline) ",
+ "Bank Conflict Rate 1": "Bank Conflict Rate (Current)",
+ "Bank Conflict Rate 2": "Bank Conflict Rate (Baseline)",
+ "Cache Hit 1": "Cache Hit (Current)",
+ "Cache Hit 2": "Cache Hit (Baseline)",
+ "Latency (Cycles) 1": "Latency (Current) [Cycles]",
+ "Latency (Cycles) 2": "Latency (Baseline) [Cycles]",
+ "Stall 1": "Stall (Current)",
+ "Stall 2": "Stall (Baseline)",
+ "Util 1": "Util (Current)",
+ "Util 2": "Util (Baseline)",
+ "Utilization 1": "Util (Current)",
+ "Utilization 2": "Util (Baseline)"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "min": -100000000000000000000,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 114
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 107
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 128
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 115
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 138
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 141
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 12,
+ "w": 12,
+ "x": 12,
+ "y": 11
+ },
+ "id": 100,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_waveCycles\": {\n \"$avg\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ] }\n },\n \"min_waveCycles\": {\n \"$min\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ] }\n },\n \"max_waveCycles\": {\n \"$max\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ] }\n },\n \n \"avg_ldsInstrs\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_LDS\" , \"&denom\"] }\n },\n \"min_ldsInstrs\": {\n \"$min\": { \"$divide\": [\"&SQ_INSTS_LDS\" , \"&denom\"] }\n },\n \"max_ldsInstrs\": {\n \"$max\": { \"$divide\": [\"&SQ_INSTS_LDS\" , \"&denom\"] }\n },\n \n \"avg_indexAccesses\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_IDX_ACTIVE\" , \"&denom\"] }\n },\n \"min_indexAccesses\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_IDX_ACTIVE\" , \"&denom\"] }\n },\n \"max_indexAccesses\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_IDX_ACTIVE\" , \"&denom\"] }\n },\n \n \"avg_atomicCycles\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_ATOMIC_RETURN\" , \"&denom\" ] }\n },\n \"min_atomicCycles\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_ATOMIC_RETURN\" , \"&denom\" ] }\n },\n \"max_atomicCycles\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_ATOMIC_RETURN\" , \"&denom\" ] }\n },\n \n \"avg_bankConflicts\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_BANK_CONFLICT\" , \"&denom\" ] }\n },\n \"min_bankConflicts\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_BANK_CONFLICT\" , \"&denom\" ] }\n },\n \"max_bankConflicts\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_BANK_CONFLICT\" , \"&denom\" ] }\n },\n \n \"avg_addrConflicts\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_ADDR_CONFLICT\" , \"&denom\" ] }\n },\n \"min_addrConflicts\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_ADDR_CONFLICT\" , \"&denom\" ] }\n },\n \"max_addrConflicts\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_ADDR_CONFLICT\" , \"&denom\" ] }\n },\n \n \n \"avg_unalignedStall\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_UNALIGNED_STALL\" , \"&denom\" ] }\n },\n \"min_unalignedStall\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_UNALIGNED_STALL\" , \"&denom\" ] }\n },\n \"max_unalignedStall\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_UNALIGNED_STALL\" , \"&denom\" ] }\n },\n \n \"avg_memViolations\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_MEM_VIOLATIONS\" , \"&denom\" ] }\n },\n \"min_memViolations\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_MEM_VIOLATIONS\" , \"&denom\" ] }\n },\n \"max_memViolations\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_MEM_VIOLATIONS\" , \"&denom\" ] }\n },\n \n \"avg_bconf_per_op\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n }\n },\n \"min_bconf_per_op\": {\n \"$min\": {\n \"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n }\n },\n \"max_bconf_per_op\": {\n \"$max\": {\n \"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n }\n },\n \n \"avg_bw\": {\n \"$avg\": {\n \"$divide\":\n [ { \"$multiply\": [{ \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]} , 4]}, {\"$toInt\": \"$L2Banks\"}]}, \n \"&denom\"\n ]\n }\n },\n \"min_bw\": {\n \"$min\": {\n \"$divide\":\n [ { \"$multiply\": [{ \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]} , 4]}, {\"$toInt\": \"$L2Banks\"}]}, \n \"&denom\"\n ]\n }\n },\n \"max_bw\": {\n \"$max\": {\n \"$divide\":\n [ { \"$multiply\": [{ \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]} , 4]}, {\"$toInt\": \"$L2Banks\"}]}, \n \"&denom\"\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"Wave Cycles\",\n \"avg\": \"&avg_waveCycles\",\n \"min\": \"&min_waveCycles\",\n \"max\": \"&max_waveCycles\",\n \"Unit\": \"Cycles/Wave\"\n },\n {\n \"metric\": \"LDS Instrs\",\n \"avg\": \"&avg_ldsInstrs\",\n \"min\": \"&min_ldsInstrs\",\n \"max\": \"&max_ldsInstrs\",\n \"Unit\":{\"$concat\": [\"Instr \", $normUnit]} \n },\n {\n \"metric\": \"Bandwidth\",\n \"avg\": \"&avg_bw\",\n \"min\": \"&min_bw\",\n \"max\": \"&max_bw\",\n \"Unit\": {\"$concat\": [\"Bytes \", $normUnit]}\n },\n {\n \"metric\": \"Bank Conficts/Access\",\n \"avg\": \"&avg_bconf_per_op\",\n \"min\": \"&min_bconf_per_op\",\n \"max\": \"&max_bconf_per_op\",\n \"Unit\": \"Conflicts/Access\"\n },\n {\n \"metric\": \"Index Accesses\",\n \"avg\": \"&avg_indexAccesses\",\n \"min\": \"&min_indexAccesses\",\n \"max\": \"&max_indexAccesses\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Cycles\",\n \"avg\": \"&avg_atomicCycles\",\n \"min\": \"&min_atomicCycles\",\n \"max\": \"&max_atomicCycles\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Bank Conflict\",\n \"avg\": \"&avg_bankConflicts\",\n \"min\": \"&min_bankConflicts\",\n \"max\": \"&max_bankConflicts\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Addr Conflict\",\n \"avg\": \"&avg_addrConflicts\",\n \"min\": \"&min_addrConflicts\",\n \"max\": \"&max_addrConflicts\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Unaligned Stall\",\n \"avg\": \"&avg_unalignedStall\",\n \"min\": \"&min_unalignedStall\",\n \"max\": \"&max_unalignedStall\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Mem Violations\",\n \"avg\": \"&avg_memViolations\",\n \"min\": \"&min_memViolations\",\n \"max\": \"&max_memViolations\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_INST_LEVEL_LDS\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n \n {\"$group\": {\n \"_id\": null,\n \"avg_ldsLatency\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"min_ldsLatency\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"max_ldsLatency\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"metric\": \"LDS Latency\",\n \"avg\": \"&avg_ldsLatency\",\n \"min\": \"&min_ldsLatency\",\n \"max\": \"&max_ldsLatency\",\n \"Unit\": \"Cycles\"\n }}\n ]\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}}, \n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Local Data Share)\"}}\n \n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_waveCycles\": {\n \"$avg\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ] }\n },\n \"min_waveCycles\": {\n \"$min\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ] }\n },\n \"max_waveCycles\": {\n \"$max\": { \"$divide\": [ { \"$multiply\": [4, \"&SQ_WAVE_CYCLES\"] }, \"&SQ_WAVES\" ] }\n },\n \n \"avg_ldsInstrs\": {\n \"$avg\": { \"$divide\": [\"&SQ_INSTS_LDS\" , \"&denom\"] }\n },\n \"min_ldsInstrs\": {\n \"$min\": { \"$divide\": [\"&SQ_INSTS_LDS\" , \"&denom\"] }\n },\n \"max_ldsInstrs\": {\n \"$max\": { \"$divide\": [\"&SQ_INSTS_LDS\" , \"&denom\"] }\n },\n \n \"avg_indexAccesses\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_IDX_ACTIVE\" , \"&denom\"] }\n },\n \"min_indexAccesses\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_IDX_ACTIVE\" , \"&denom\"] }\n },\n \"max_indexAccesses\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_IDX_ACTIVE\" , \"&denom\"] }\n },\n \n \"avg_atomicCycles\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_ATOMIC_RETURN\" , \"&denom\" ] }\n },\n \"min_atomicCycles\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_ATOMIC_RETURN\" , \"&denom\" ] }\n },\n \"max_atomicCycles\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_ATOMIC_RETURN\" , \"&denom\" ] }\n },\n \n \"avg_bankConflicts\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_BANK_CONFLICT\" , \"&denom\" ] }\n },\n \"min_bankConflicts\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_BANK_CONFLICT\" , \"&denom\" ] }\n },\n \"max_bankConflicts\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_BANK_CONFLICT\" , \"&denom\" ] }\n },\n \n \"avg_addrConflicts\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_ADDR_CONFLICT\" , \"&denom\" ] }\n },\n \"min_addrConflicts\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_ADDR_CONFLICT\" , \"&denom\" ] }\n },\n \"max_addrConflicts\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_ADDR_CONFLICT\" , \"&denom\" ] }\n },\n \"avg_unalignedStall\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_UNALIGNED_STALL\" , \"&denom\" ] }\n },\n \"min_unalignedStall\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_UNALIGNED_STALL\" , \"&denom\" ] }\n },\n \"max_unalignedStall\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_UNALIGNED_STALL\" , \"&denom\" ] }\n },\n \n \"avg_memViolations\": {\n \"$avg\": { \"$divide\": [\"&SQ_LDS_MEM_VIOLATIONS\" , \"&denom\" ] }\n },\n \"min_memViolations\": {\n \"$min\": { \"$divide\": [\"&SQ_LDS_MEM_VIOLATIONS\" , \"&denom\" ] }\n },\n \"max_memViolations\": {\n \"$max\": { \"$divide\": [\"&SQ_LDS_MEM_VIOLATIONS\" , \"&denom\" ] }\n },\n \n \n \"avg_bconf_per_op\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n }\n },\n \"min_bconf_per_op\": {\n \"$min\": {\n \"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n }\n },\n \"max_bconf_per_op\": {\n \"$max\": {\n \"$cond\": [ {\"$ne\": [{\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}, 0]},\n {\"$divide\": [\n \"&SQ_LDS_BANK_CONFLICT\",\n {\"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]}\n ]},\n null\n ]\n }\n },\n \n \"avg_bw\": {\n \"$avg\": {\n \"$divide\":\n [ { \"$multiply\": [{ \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]} , 4]}, {\"$toInt\": \"$L2Banks\"}]}, \n \"&denom\"\n ]\n }\n },\n \"min_bw\": {\n \"$min\": {\n \"$divide\":\n [ { \"$multiply\": [{ \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]} , 4]}, {\"$toInt\": \"$L2Banks\"}]}, \n \"&denom\"\n ]\n }\n },\n \"max_bw\": {\n \"$max\": {\n \"$divide\":\n [ { \"$multiply\": [{ \"$multiply\": [ { \"$subtract\": [\"&SQ_LDS_IDX_ACTIVE\", \"&SQ_LDS_BANK_CONFLICT\"]} , 4]}, {\"$toInt\": \"$L2Banks\"}]}, \n \"&denom\"\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"Wave Cycles\",\n \"avg\": \"&avg_waveCycles\",\n \"min\": \"&min_waveCycles\",\n \"max\": \"&max_waveCycles\",\n \"Unit\": \"Cycles/Wave\"\n },\n {\n \"metric\": \"LDS Instrs\",\n \"avg\": \"&avg_ldsInstrs\",\n \"min\": \"&min_ldsInstrs\",\n \"max\": \"&max_ldsInstrs\",\n \"Unit\":{\"$concat\": [\"Instr \", $normUnit]} \n },\n {\n \"metric\": \"Bandwidth\",\n \"avg\": \"&avg_bw\",\n \"min\": \"&min_bw\",\n \"max\": \"&max_bw\",\n \"Unit\": {\"$concat\": [\"Bytes \", $normUnit]}\n },\n {\n \"metric\": \"Bank Conficts/Access\",\n \"avg\": \"&avg_bconf_per_op\",\n \"min\": \"&min_bconf_per_op\",\n \"max\": \"&max_bconf_per_op\",\n \"Unit\": \"Conflicts/Access\"\n },\n {\n \"metric\": \"Index Accesses\",\n \"avg\": \"&avg_indexAccesses\",\n \"min\": \"&min_indexAccesses\",\n \"max\": \"&max_indexAccesses\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Cycles\",\n \"avg\": \"&avg_atomicCycles\",\n \"min\": \"&min_atomicCycles\",\n \"max\": \"&max_atomicCycles\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Bank Conflict\",\n \"avg\": \"&avg_bankConflicts\",\n \"min\": \"&min_bankConflicts\",\n \"max\": \"&max_bankConflicts\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Addr Conflict\",\n \"avg\": \"&avg_addrConflicts\",\n \"min\": \"&min_addrConflicts\",\n \"max\": \"&max_addrConflicts\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Unaligned Stall\",\n \"avg\": \"&avg_unalignedStall\",\n \"min\": \"&min_unalignedStall\",\n \"max\": \"&max_unalignedStall\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Mem Violations\",\n \"avg\": \"&avg_memViolations\",\n \"min\": \"&min_memViolations\",\n \"max\": \"&max_memViolations\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }},\n {\"$unionWith\": {\n \"coll\": \"SQ_INST_LEVEL_LDS\",\n \"pipeline\": [\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Local Data Share)\"}}\n }},\n \n {\"$group\": {\n \"_id\": null,\n \"avg_ldsLatency\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"min_ldsLatency\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n },\n \"max_ldsLatency\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [\"&SQ_INSTS_LDS\", 0]},\n {\"$divide\": [ \"&SQ_ACCUM_PREV_HIRES\", \"&SQ_INSTS_LDS\" ]},\n null\n ] \n }\n }\n }},\n {\"$project\": {\n \"_id\": 0,\n \"metric\": \"LDS Latency\",\n \"avg\": \"&avg_ldsLatency\",\n \"min\": \"&min_ldsLatency\",\n \"max\": \"&max_ldsLatency\",\n \"Unit\": \"Cycles\"\n }}\n ]\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "LDS Stats",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {
+ "frameNameLabel": "frame",
+ "frameNameMode": "field"
+ }
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Unit 2": true,
+ "metric 2": true
+ },
+ "indexByName": {
+ "Unit 1": 9,
+ "Unit 2": 8,
+ "avg 1": 1,
+ "avg 2": 2,
+ "max 1": 5,
+ "max 2": 6,
+ "metric 1": 0,
+ "metric 2": 7,
+ "min 1": 3,
+ "min 2": 4
+ },
+ "renameByName": {
+ "avg 1": "Avg (Current)",
+ "avg 2": "Avg (Baseline)",
+ "max 1": "Max (Current)",
+ "max 2": "Max (Baseline)",
+ "min 1": "Min (Current)",
+ "min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Local Data Share (LDS)",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 11
+ },
+ "id": 44,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "decimals": 1,
+ "mappings": [],
+ "max": 100,
+ "min": 0,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 7,
+ "w": 12,
+ "x": 0,
+ "y": 12
+ },
+ "id": 48,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "mean"
+ ],
+ "fields": "/.*/",
+ "values": true
+ },
+ "showUnfilled": true,
+ "text": {}
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"reqBW_pop\": {\n \"$avg\": {\n \"$divide\": [\n {\"$multiply\": [\"&SQC_ICACHE_REQ\", 100000]}, \n {\"$multiply\": [ {\"$multiply\": [$sclk, $numSQC]}, {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]} ]}\n ]\n }\n },\n\n \"cacheHit\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQC_ICACHE_HITS\", 100] }, { \"$add\": [ \"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\" ] } ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"Bandwidth\": \"&reqBW_pop\",\n \"Cache Hit\": \"&cacheHit\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Instruction Cache)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"reqBW_pop\": {\n \"$avg\": {\n \"$divide\": [\n {\"$multiply\": [\"&SQC_ICACHE_REQ\", 100000]}, \n {\"$multiply\": [ {\"$multiply\": [$sclk2, $numSQC2]}, {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]} ]}\n ]\n }\n },\n\n \"cacheHit\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [\"&SQC_ICACHE_HITS\", 100] }, { \"$add\": [ \"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\"] } ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"Bandwidth\": \"&reqBW_pop\",\n \"Cache Hit\": \"&cacheHit\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "Speed-of-Light: Instruction Cache ",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "BW (Pct-of-Peak) 1": 4,
+ "BW (Pct-of-Peak) 2": 5,
+ "Cache Hit 1": 6,
+ "Cache Hit 2": 7,
+ "Stall 1": 2,
+ "Stall 2": 3,
+ "Util 1": 0,
+ "Util 2": 1
+ },
+ "renameByName": {
+ "BW (Pct-of-Peak) 1": "BW Pct-of-Peak (Current)",
+ "BW (Pct-of-Peak) 2": "BW Pct-of-Peak (Baseline)",
+ "BW Pct-of-Peak 1": "BW Pct-of-Peak (Current)",
+ "BW Pct-of-Peak 2": "BW Pct-of-Peak (Baseline)",
+ "Bandwidth 1": "Bandwidth (Current)",
+ "Bandwidth 2": "Bandwidth (Baseline)",
+ "Cache Hit 1": "Cache Hit (Current)",
+ "Cache Hit 2": "Cache Hit (Baseline)",
+ "Stall 1": "Stall (Current)",
+ "Stall 2": "Stall (Baseline)",
+ "Util 1": "Util (Current)",
+ "Util 2": "Util (Baseline)"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 7,
+ "w": 12,
+ "x": 12,
+ "y": 12
+ },
+ "id": 259,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "rawQuery": true,
+ "refId": "pmc_perf",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_req\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_REQ\", \"&denom\"] }\n },\n \"min_req\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_REQ\", \"&denom\"] }\n },\n \"max_req\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_REQ\", \"&denom\"] }\n },\n\n \"avg_hits\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_HITS\", \"&denom\"] }\n },\n \"min_hits\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_HITS\", \"&denom\"] }\n },\n \"max_hits\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_HITS\", \"&denom\"] }\n },\n\n \"avg_misses\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_MISSES\", \"&denom\"] }\n },\n \"min_misses\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_MISSES\", \"&denom\"] }\n },\n \"max_misses\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_MISSES\", \"&denom\"] }\n },\n\n \"avg_misses_dup\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"min_misses_dup\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"max_misses_dup\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n\n\n \"avg_cacheHit\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\"] }] }\n },\n \"min_cacheHit\": {\n \"$min\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\"] }] }\n },\n \"max_cacheHit\": {\n \"$max\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\"] }] }\n }\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Req\",\n \"Mean\": \"&avg_req\",\n \"Min\": \"&min_req\",\n \"Max\": \"&max_req\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Hits\",\n \"Mean\": \"&avg_hits\",\n \"Min\": \"&min_hits\",\n \"Max\": \"&max_hits\",\n \"Unit\": {\"$concat\": [\"Hits \", $normUnit]}\n },\n {\n \"Metric\": \"Misses - Non Duplicated\",\n \"Mean\": \"&avg_misses\",\n \"Min\": \"&min_misses\",\n \"Max\": \"&max_misses\",\n \"Unit\": {\"$concat\": [\"Misses \", $normUnit]}\n },\n {\n \"Metric\": \"Misses - Duplicated\",\n \"Mean\": \"&avg_misses_dup\",\n \"Min\": \"&min_misses_dup\",\n \"Max\": \"&max_misses_dup\",\n \"Unit\": {\"$concat\": [\"Misses \", $normUnit]}\n },\n \n {\n \"Metric\": \"Cache Hit\",\n \"Mean\": \"&avg_cacheHit\",\n \"Min\": \"&min_cacheHit\",\n \"Max\": \"&max_cacheHit\",\n \"Unit\": \"pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "pmc_perf2",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Instruction Cache)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"avg_req\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_REQ\", \"&denom\"] }\n },\n \"min_req\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_REQ\", \"&denom\"] }\n },\n \"max_req\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_REQ\", \"&denom\"] }\n },\n\n \"avg_hits\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_HITS\", \"&denom\"] }\n },\n \"min_hits\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_HITS\", \"&denom\"] }\n },\n \"max_hits\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_HITS\", \"&denom\"] }\n },\n\n \"avg_misses\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_MISSES\", \"&denom\"] }\n },\n \"min_misses\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_MISSES\", \"&denom\"] }\n },\n \"max_misses\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_MISSES\", \"&denom\"] }\n },\n\n \"avg_misses_dup\": {\n \"$avg\": { \"$divide\": [\"&SQC_ICACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"min_misses_dup\": {\n \"$min\": { \"$divide\": [\"&SQC_ICACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"max_misses_dup\": {\n \"$max\": { \"$divide\": [\"&SQC_ICACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n\n\n \"avg_cacheHit\": {\n \"$avg\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\"] }] }\n },\n \"min_cacheHit\": {\n \"$min\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\"] }] }\n },\n \"max_cacheHit\": {\n \"$max\": { \"$divide\": [{ \"$multiply\": [100, \"&SQC_ICACHE_HITS\"] }, { \"$add\": [\"&SQC_ICACHE_HITS\", \"&SQC_ICACHE_MISSES\", \"&SQC_ICACHE_MISSES_DUPLICATE\"] }] }\n }\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Req\",\n \"Mean 2\": \"&avg_req\",\n \"Min 2\": \"&min_req\",\n \"Max 2\": \"&max_req\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Hits\",\n \"Mean 2\": \"&avg_hits\",\n \"Min 2\": \"&min_hits\",\n \"Max 2\": \"&max_hits\",\n \"Unit\": {\"$concat\": [\"Hits \", $normUnit]}\n },\n {\n \"Metric\": \"Misses - Non Duplicated\",\n \"Mean 2\": \"&avg_misses\",\n \"Min 2\" : \"&min_misses\",\n \"Max 2\": \"&max_misses\",\n \"Unit\": {\"$concat\": [\"Misses \", $normUnit]}\n },\n {\n \"Metric\": \"Misses - Duplicated\",\n \"Mean 2\": \"&avg_misses_dup\",\n \"Min 2\": \"&min_misses_dup\",\n \"Max 2\": \"&max_misses_dup\",\n \"Unit\": {\"$concat\": [\"Misses \", $normUnit]}\n },\n {\n \"Metric\": \"Cache Hit\",\n \"Mean 2\": \"&avg_cacheHit\",\n \"Min 2\": \"&min_cacheHit\",\n \"Max 2\": \"&max_cacheHit\",\n \"Unit\": \"pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Instruction Cache Accesses",
+ "transformations": [
+ {
+ "id": "merge",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "Max": 5,
+ "Max 2": 6,
+ "Mean": 1,
+ "Mean 2": 2,
+ "Metric": 0,
+ "Min": 3,
+ "Min 2": 4,
+ "Unit": 7
+ },
+ "renameByName": {
+ "L1I Metric": "",
+ "Max": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Mean": "Avg (Current)",
+ "Mean 2": "Avg (Baseline)",
+ "Min": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Instruction Cache",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 12
+ },
+ "id": 203,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "decimals": 1,
+ "mappings": [],
+ "max": 100,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L1K-TC BW - GB/s"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "GBs"
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 7,
+ "w": 12,
+ "x": 0,
+ "y": 13
+ },
+ "id": 54,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "",
+ "values": false
+ },
+ "showUnfilled": true,
+ "text": {
+ "titleSize": 14,
+ "valueSize": 16
+ }
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"reqBW_pop\": {\n \"$avg\": {\n \"$divide\": [\n {\"$multiply\": [\"&SQC_DCACHE_REQ\", 100000]}, \n {\"$multiply\": [ {\"$multiply\": [$sclk, $numSQC]}, {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]} ]}\n ]\n }\n },\n \"cacheHit\": {\n \"$avg\": { \n \"$cond\":[\n {\"$ne\": [{ \"$add\": [ \"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0 ]},\n {\"$divide\": [{ \"$multiply\": [\"&SQC_DCACHE_HITS\", 100] }, { \"$add\": [ \"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } ]},\n null\n ]\n }\n }\n \n }},\n {\"$set\": {\n \"array\": [\n {\n \"Bandwidth\": \"&reqBW_pop\",\n \"Cache Hit\": \"&cacheHit\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "sY628IJnz"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Scalar L1D Cache)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"reqBW_pop\": {\n \"$avg\": {\n \"$divide\": [\n {\"$multiply\": [\"&SQC_DCACHE_REQ\", 100000]}, \n {\"$multiply\": [ {\"$multiply\": [$sclk2, $numSQC2]}, {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]} ]}\n ]\n }\n },\n \"cacheHit\": {\n \"$avg\": { \n \"$cond\":[\n {\"$ne\": [{ \"$add\": [ \"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0 ]},\n {\"$divide\": [{ \"$multiply\": [\"&SQC_DCACHE_HITS\", 100] }, { \"$add\": [ \"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } ]},\n null\n ]\n }\n }\n \n }},\n {\"$set\": {\n \"array\": [\n {\n \"Bandwidth\": \"&reqBW_pop\",\n \"Cache Hit\": \"&cacheHit\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "Speed-of-Light: Scalar L1D Cache",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "BW Pct-of-Peak 1": 0,
+ "BW Pct-of-Peak 2": 1,
+ "Cache Hit 1": 2,
+ "Cache Hit 2": 3,
+ "Stall 1": 6,
+ "Stall 2": 7,
+ "Util 1": 4,
+ "Util 2": 5
+ },
+ "renameByName": {
+ "BW Pct-of-Peak 1": "BW Pct-of-Peak (Current)",
+ "BW Pct-of-Peak 2": "BW Pct-of-Peak (Baseline)",
+ "Bandwidth 1": "Bandwidth (Current)",
+ "Bandwidth 2": "Bandwidth (Baseline)",
+ "Cache Hit 1": "Cache Hit (Current)",
+ "Cache Hit 2": "Cache Hit (Baseline)",
+ "Stall 1": "Stall (Current)",
+ "Stall 2": "Stall (Baseline)",
+ "Util 1": "Util (Current)",
+ "Util 2": "Util (Baseline)"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 14,
+ "w": 12,
+ "x": 12,
+ "y": 13
+ },
+ "id": 261,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "pmc_perf",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"req_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ\", \"&denom\"] }\n },\n \"req_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ\", \"&denom\"] }\n },\n \"req_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ\", \"&denom\"] }\n },\n\n \"hits_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_HITS\", \"&denom\"] }\n },\n \"hits_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_HITS\", \"&denom\"] }\n },\n \"hits_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_HITS\", \"&denom\"] }\n },\n\n \"misses_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_MISSES\", \"&denom\"] }\n },\n \"misses_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_MISSES\", \"&denom\"] }\n },\n \"misses_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_MISSES\", \"&denom\"] }\n },\n\n \"dup_misses_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"dup_misses_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"dup_misses_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n\n\n \"cacheHit_avg\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] }] },\n \"\"\n ]\n }\n },\n \"cacheHit_min\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] }] },\n \"\"\n ]\n }\n },\n \"cacheHit_max\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] }] },\n \"\"\n ]\n }\n },\n\n \"readReq_avg\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [\"&SQC_DCACHE_REQ_READ_1\", \"&SQC_DCACHE_REQ_READ_2\", \"&SQC_DCACHE_REQ_READ_4\", \"&SQC_DCACHE_REQ_READ_8\", \"&SQC_DCACHE_REQ_READ_16\"] }, \"&denom\"] }\n },\n \"readReq_min\": {\n \"$min\": { \"$divide\": [{ \"$add\": [\"&SQC_DCACHE_REQ_READ_1\", \"&SQC_DCACHE_REQ_READ_2\", \"&SQC_DCACHE_REQ_READ_4\", \"&SQC_DCACHE_REQ_READ_8\", \"&SQC_DCACHE_REQ_READ_16\"] }, \"&denom\"] }\n },\n \"readReq_max\": {\n \"$max\": { \"$divide\": [{ \"$add\": [\"&SQC_DCACHE_REQ_READ_1\", \"&SQC_DCACHE_REQ_READ_2\", \"&SQC_DCACHE_REQ_READ_4\", \"&SQC_DCACHE_REQ_READ_8\", \"&SQC_DCACHE_REQ_READ_16\"] }, \"&denom\"] }\n },\n\n\n \"atomicReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_ATOMIC\", \"&denom\"] }\n },\n \"atomicReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_ATOMIC\", \"&denom\"] }\n },\n \"atomicReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_ATOMIC\", \"&denom\"] }\n },\n\n \"read1d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_1\", \"&denom\"] }\n },\n \"read1d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_1\", \"&denom\"] }\n },\n \"read1d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_1\", \"&denom\"] }\n },\n\n \"read2d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_2\", \"&denom\"] }\n },\n \"read2d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_2\", \"&denom\"] }\n },\n \"read2d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_2\", \"&denom\"] }\n },\n\n \"read4d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_4\", \"&denom\"] }\n },\n \"read4d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_4\", \"&denom\"] }\n },\n \"read4d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_4\", \"&denom\"] }\n },\n\n \"read8d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_8\", \"&denom\"] }\n },\n \"read8d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_8\", \"&denom\"] }\n },\n \"read8d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_8\", \"&denom\"] }\n },\n\n \"read16d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_16\", \"&denom\"] }\n },\n \"read16d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_16\", \"&denom\"] }\n },\n \"read16d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_16\", \"&denom\"] }\n }\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Req\",\n \"Mean\": \"&req_avg\",\n \"Min\": \"&req_min\",\n \"Max\": \"&req_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Hits\",\n \"Mean\": \"&hits_avg\",\n \"Min\": \"&hits_min\",\n \"Max\": \"&hits_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Misses - Non Duplicated\",\n \"Mean\": \"&misses_avg\",\n \"Min\": \"&misses_min\",\n \"Max\": \"&misses_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Misses- Duplicated\",\n \"Mean\": \"&dup_misses_avg\",\n \"Min\": \"&dup_misses_min\",\n \"Max\": \"&dup_misses_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Cache Hit\",\n \"Mean\": \"&cacheHit_avg\",\n \"Min\": \"&cacheHit_min\",\n \"Max\": \"&cacheHit_max\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"Read Req (Total)\",\n \"Mean\": \"&readReq_avg\",\n \"Min\": \"&readReq_min\",\n \"Max\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Atomic Req\",\n \"Mean\": \"&atomicReq_avg\",\n \"Min\": \"&atomicReq_min\",\n \"Max\": \"&atomicReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (1 DWord)\",\n \"Mean\": \"&read1d_avg\",\n \"Min\": \"&read1d_min\",\n \"Max\": \"&read1d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (2 DWord)\",\n \"Mean\": \"&read2d_avg\",\n \"Min\": \"&read2d_min\",\n \"Max\": \"&read2d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (4 DWord)\",\n \"Mean\": \"&read4d_avg\",\n \"Min\": \"&read4d_min\",\n \"Max\": \"&read4d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (8 DWord)\",\n \"Mean\": \"&read8d_avg\",\n \"Min\": \"&read8d_min\",\n \"Max\": \"&read8d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (16 DWord)\",\n \"Mean\": \"&read16d_avg\",\n \"Min\": \"&read16d_min\",\n \"Max\": \"&read16d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "bhNVuvBnk"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "pmc_perf2",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Scalar L1D Cache)\"}}\n }}, \n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"req_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ\", \"&denom\"] }\n },\n \"req_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ\", \"&denom\"] }\n },\n \"req_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ\", \"&denom\"] }\n },\n\n \"hits_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_HITS\", \"&denom\"] }\n },\n \"hits_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_HITS\", \"&denom\"] }\n },\n \"hits_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_HITS\", \"&denom\"] }\n },\n\n \"dup_misses_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"dup_misses_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n \"dup_misses_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_MISSES_DUPLICATE\", \"&denom\"] }\n },\n\n\n \"cacheHit_avg\": {\n \"$avg\": { \n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] }] },\n \"\"\n ]\n }\n },\n \"cacheHit_min\": {\n \"$min\": { \n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] }] },\n \"\"\n ]\n }\n },\n \"cacheHit_max\": {\n \"$max\": { \n \"$cond\": [\n {\"$ne\": [{ \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] } , 0]},\n { \"$divide\": [{ \"$multiply\": [100, \"&SQC_DCACHE_HITS\"] }, { \"$add\": [\"&SQC_DCACHE_HITS\", \"&SQC_DCACHE_MISSES\", \"&SQC_DCACHE_MISSES_DUPLICATE\"] }] },\n \"\"\n ]\n }\n },\n\n \"readReq_avg\": {\n \"$avg\": { \"$divide\": [{ \"$add\": [\"&SQC_DCACHE_REQ_READ_1\", \"&SQC_DCACHE_REQ_READ_2\", \"&SQC_DCACHE_REQ_READ_4\", \"&SQC_DCACHE_REQ_READ_8\", \"&SQC_DCACHE_REQ_READ_16\"] }, \"&denom\"] }\n },\n \"readReq_min\": {\n \"$min\": { \"$divide\": [{ \"$add\": [\"&SQC_DCACHE_REQ_READ_1\", \"&SQC_DCACHE_REQ_READ_2\", \"&SQC_DCACHE_REQ_READ_4\", \"&SQC_DCACHE_REQ_READ_8\", \"&SQC_DCACHE_REQ_READ_16\"] }, \"&denom\"] }\n },\n \"readReq_max\": {\n \"$max\": { \"$divide\": [{ \"$add\": [\"&SQC_DCACHE_REQ_READ_1\", \"&SQC_DCACHE_REQ_READ_2\", \"&SQC_DCACHE_REQ_READ_4\", \"&SQC_DCACHE_REQ_READ_8\", \"&SQC_DCACHE_REQ_READ_16\"] }, \"&denom\"] }\n },\n\n \"atomicReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_ATOMIC\", \"&denom\"] }\n },\n \"atomicReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_ATOMIC\", \"&denom\"] }\n },\n \"atomicReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_ATOMIC\", \"&denom\"] }\n },\n\n\n \"read1d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_1\", \"&denom\"] }\n },\n \"read1d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_1\", \"&denom\"] }\n },\n \"read1d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_1\", \"&denom\"] }\n },\n\n \"read2d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_2\", \"&denom\"] }\n },\n \"read2d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_2\", \"&denom\"] }\n },\n \"read2d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_2\", \"&denom\"] }\n },\n\n \"read4d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_4\", \"&denom\"] }\n },\n \"read4d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_4\", \"&denom\"] }\n },\n \"read4d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_4\", \"&denom\"] }\n },\n\n \"read8d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_8\", \"&denom\"] }\n },\n \"read8d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_8\", \"&denom\"] }\n },\n \"read8d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_8\", \"&denom\"] }\n },\n\n \"read16d_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_16\", \"&denom\"] }\n },\n \"read16d_min\": {\n \"$min\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_16\", \"&denom\"] }\n },\n \"read16d_max\": {\n \"$max\": { \"$divide\": [\"&SQC_DCACHE_REQ_READ_16\", \"&denom\"] }\n }\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Req\",\n \"Mean 2\": \"&req_avg\",\n \"Min 2\": \"&req_min\",\n \"Max 2\": \"&req_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Hits\",\n \"Mean 2\": \"&hits_avg\",\n \"Min 2\": \"&hits_min\",\n \"Max 2\": \"&hits_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Misses - Non Duplicated\",\n \"Mean 2\": \"&misses_avg\",\n \"Min 2\": \"&misses_min\",\n \"Max 2\": \"&misses_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Misses- Duplicated\",\n \"Mean 2\": \"&dup_misses_avg\",\n \"Min 2\": \"&dup_misses_min\",\n \"Max 2\": \"&dup_misses_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Cache Hit\",\n \"Mean 2\": \"&cacheHit_avg\",\n \"Min 2\": \"&cacheHit_min\",\n \"Max 2\": \"&cacheHit_max\",\n \"Unit\": \"pct\"\n },\n {\n \"Metric\": \"Read Req (Total)\",\n \"Mean 2\": \"&readReq_avg\",\n \"Min 2\": \"&readReq_min\",\n \"Max 2\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Write Req (Total)\",\n \"Mean 2\": \"&writeReq_avg\",\n \"Min 2\": \"&writeReq_min\",\n \"Max 2\": \"&writeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Atomic Req\",\n \"Mean 2\": \"&atomicReq_avg\",\n \"Min 2\": \"&atomicReq_min\",\n \"Max 2\": \"&atomicReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (1 DWord)\",\n \"Mean 2\": \"&read1d_avg\",\n \"Min 2\": \"&read1d_min\",\n \"Max 2\": \"&read1d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (2 DWord)\",\n \"Mean 2\": \"&read2d_avg\",\n \"Min 2\": \"&read2d_min\",\n \"Max 2\": \"&read2d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (4 DWord)\",\n \"Mean 2\": \"&read4d_avg\",\n \"Min 2\": \"&read4d_min\",\n \"Max 2\": \"&read4d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (8 DWord)\",\n \"Mean 2\": \"&read8d_avg\",\n \"Min 2\": \"&read8d_min\",\n \"Max 2\": \"&read8d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Read Req (16 DWord)\",\n \"Mean 2\": \"&read16d_avg\",\n \"Min 2\": \"&read16d_min\",\n \"Max 2\": \"&read16d_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Scalar L1D Cache Accesses",
+ "transformations": [
+ {
+ "id": "merge",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "Max": 5,
+ "Max 2": 6,
+ "Mean": 1,
+ "Mean 2": 2,
+ "Metric": 0,
+ "Min": 3,
+ "Min 2": 4,
+ "Unit": 7
+ },
+ "renameByName": {
+ "Max": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Mean": "Avg (Current)",
+ "Mean 2": "Avg (Baseline)",
+ "Min": "Min (Current)",
+ "Min 2": "Min (Baseline)",
+ "Unit": ""
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 135
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 105
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 112
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 134
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 7,
+ "w": 12,
+ "x": 0,
+ "y": 20
+ },
+ "id": 52,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"readReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_READ_REQ\", \"&denom\"] }\n },\n \"readReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_DATA_READ_REQ\", \"&denom\"] }\n },\n \"readReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_DATA_READ_REQ\", \"&denom\"] }\n },\n\n \"writeReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_WRITE_REQ\", \"&denom\"] }\n },\n \"writeReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_DATA_WRITE_REQ\", \"&denom\"] }\n },\n \"writeReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_DATA_WRITE_REQ\", \"&denom\"] }\n },\n\n \"atomicReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_ATOMIC_REQ\", \"&denom\"] }\n },\n \"atomicReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_DATA_ATOMIC_REQ\", \"&denom\"] }\n },\n \"atomicReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_DATA_ATOMIC_REQ\", \"&denom\"] }\n },\n\n \"tc2l1k_stall_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_STALL\", \"&denom\" ] }\n },\n \"tc2l1k_stall_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_STALL\", \"&denom\" ] }\n },\n \"tc2l1k_stall_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_STALL\", \"&denom\" ] }\n }\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Read Req\",\n \"Mean\": \"&readReq_avg\",\n \"Min\": \"&readReq_min\",\n \"Max\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Write Req\",\n \"Mean\": \"&writeReq_avg\",\n \"Min\": \"&writeReq_min\",\n \"Max\": \"&writeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Atomic Req\",\n \"Mean\": \"&atomicReq_avg\",\n \"Min\": \"&atomicReq_min\",\n \"Max\": \"&atomicReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Stall\",\n \"Mean\": \"&tc2l1k_stall_avg\",\n \"Min\": \"&tc2l1k_stall_min\",\n \"Max\": \"&tc2l1k_stall_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}}, \n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Scalar L1D Cache)\"}}\n }},\n {\"$addFields\": {\n \n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"readReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_READ_REQ\", \"&denom\"] }\n },\n \"readReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_DATA_READ_REQ\", \"&denom\"] }\n },\n \"readReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_DATA_READ_REQ\", \"&denom\"] }\n },\n\n \"writeReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_WRITE_REQ\", \"&denom\"] }\n },\n \"writeReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_DATA_WRITE_REQ\", \"&denom\"] }\n },\n \"writeReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_DATA_WRITE_REQ\", \"&denom\"] }\n },\n\n \"atomicReq_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_DATA_ATOMIC_REQ\", \"&denom\"] }\n },\n \"atomicReq_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_DATA_ATOMIC_REQ\", \"&denom\"] }\n },\n \"atomicReq_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_DATA_ATOMIC_REQ\", \"&denom\"] }\n },\n\n \"tc2l1k_stall_avg\": {\n \"$avg\": { \"$divide\": [\"&SQC_TC_STALL\", \"&denom\" ] }\n },\n \"tc2l1k_stall_min\": {\n \"$min\": { \"$divide\": [\"&SQC_TC_STALL\", \"&denom\" ] }\n },\n \"tc2l1k_stall_max\": {\n \"$max\": { \"$divide\": [\"&SQC_TC_STALL\", \"&denom\" ] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Read Req\",\n \"Mean\": \"&readReq_avg\",\n \"Min\": \"&readReq_min\",\n \"Max\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Write Req\",\n \"Mean\": \"&writeReq_avg\",\n \"Min\": \"&writeReq_min\",\n \"Max\": \"&writeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Atomic Req\",\n \"Mean\": \"&atomicReq_avg\",\n \"Min\": \"&atomicReq_min\",\n \"Max\": \"&atomicReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Stall\",\n \"Mean\": \"&tc2l1k_stall_avg\",\n \"Min\": \"&tc2l1k_stall_min\",\n \"Max\": \"&tc2l1k_stall_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Scalar L1D Cache - L2 Interface",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Max 1": 7,
+ "Max 2": 8,
+ "Mean 1": 3,
+ "Mean 2": 4,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Unit 1": 9,
+ "Unit 2": 2
+ },
+ "renameByName": {
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Mean 1": "Avg (Current)",
+ "Mean 2": "Avg (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Scalar L1 Data Cache",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 13
+ },
+ "id": 130,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 133
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 112
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 17,
+ "w": 12,
+ "x": 0,
+ "y": 14
+ },
+ "id": 132,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"taBusy_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [100, \"&TA_TA_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}] }},\n \"taBusy_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [100, \"&TA_TA_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}] }},\n \"taBusy_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [100, \"&TA_TA_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}] }},\n\n \"tc2ta_addrStall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"tc2ta_addrStall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"tc2ta_addrStall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n\n \"tc2ta_dataStall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_DATA_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"tc2ta_dataStall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_DATA_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"tc2ta_dataStall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_DATA_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n\n \"td2ta_addrStall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TD_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"td2ta_addrStall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TD_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"td2ta_addrStall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TD_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n\n \"totalInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_TOTAL_WAVEFRONTS_sum\", \"&denom\"] }},\n \"totalInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_TOTAL_WAVEFRONTS_sum\", \"&denom\"] }},\n \"totalInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_TOTAL_WAVEFRONTS_sum\", \"&denom\"] }},\n\n \"flatInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\"] }},\n \"flatInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\"] }},\n \"flatInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\"] }},\n\n \"flatReadInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatReadInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatReadInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"flatWriteInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatWriteInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatWriteInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"flatAtomicInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatAtomicInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatAtomicInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferReadInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferReadInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferReadInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferWriteInstr_avg\":{\"$avg\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferWriteInstr_min\":{\"$min\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferWriteInstr_max\":{\"$max\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferAtomicInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferAtomicInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferAtomicInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"buffTotal_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_TOTAL_CYCLES_sum\", \"&denom\"] }},\n \"buffTotal_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_TOTAL_CYCLES_sum\", \"&denom\"] }},\n \"buffTotal_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_TOTAL_CYCLES_sum\", \"&denom\"] }},\n\n \"buffCoscaleRead_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_COALESCED_READ_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleRead_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_COALESCED_READ_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleRead_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_COALESCED_READ_CYCLES_sum\", \"&denom\"] }},\n\n \"buffCoscaleWrite_avg\":{\"$avg\": { \"$divide\": [ \"&TA_BUFFER_COALESCED_WRITE_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleWrite_min\":{\"$min\": { \"$divide\": [ \"&TA_BUFFER_COALESCED_WRITE_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleWrite_max\":{\"$max\": { \"$divide\": [ \"&TA_BUFFER_COALESCED_WRITE_CYCLES_sum\", \"&denom\"] }}\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"TA Busy\",\n \"avg\": \"&taBusy_avg\",\n \"min\": \"&taBusy_min\",\n \"max\": \"&taBusy_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TC2TA Addr Stall\",\n \"avg\": \"&tc2ta_addrStall_avg\",\n \"min\": \"&tc2ta_addrStall_min\",\n \"max\": \"&tc2ta_addrStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TC2TA Data Stall\",\n \"avg\": \"&tc2ta_dataStall_avg\",\n \"min\": \"&tc2ta_dataStall_min\",\n \"max\": \"&tc2ta_dataStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TD2TA Addr Stall\",\n \"avg\": \"&td2ta_addrStall_avg\",\n \"min\": \"&td2ta_addrStall_min\",\n \"max\": \"&td2ta_addrStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Total Instructions\",\n \"avg\": \"&totalInstr_avg\",\n \"min\": \"&totalInstr_min\",\n \"max\": \"&totalInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Instr\",\n \"avg\": \"&flatInstr_avg\",\n \"min\": \"&flatInstr_min\",\n \"max\": \"&flatInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Read Instr\",\n \"avg\": \"&flatReadInstr_avg\",\n \"min\": \"&flatReadInstr_min\",\n \"max\": \"&flatReadInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Write Instr\",\n \"avg\": \"&flatWriteInstr_avg\",\n \"min\": \"&flatWriteInstr_min\",\n \"max\": \"&flatWriteInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Atomic Instr\",\n \"avg\": \"&flatAtomicInstr_avg\",\n \"min\": \"&flatAtomicInstr_min\",\n \"max\": \"&flatAtomicInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Instr\",\n \"avg\": \"&bufferInstr_avg\",\n \"min\": \"&bufferInstr_min\",\n \"max\": \"&bufferInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Read Instr\",\n \"avg\": \"&bufferReadInstr_avg\",\n \"min\": \"&bufferReadInstr_min\",\n \"max\": \"&bufferReadInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Write Instr\",\n \"avg\": \"&bufferWriteInstr_avg\",\n \"min\": \"&bufferWriteInstr_min\",\n \"max\": \"&bufferWriteInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Atomic Instr\",\n \"avg\": \"&bufferAtomicInstr_avg\",\n \"min\": \"&bufferAtomicInstr_min\",\n \"max\": \"&bufferAtomicInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Total Cylces\",\n \"avg\": \"&buffTotal_avg\",\n \"min\": \"&buffTotal_min\",\n \"max\": \"&buffTotal_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Coalesced Read\",\n \"avg\": \"&buffCoscaleRead_avg\",\n \"min\": \"&buffCoscaleRead_min\",\n \"max\": \"&buffCoscaleRead_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Coalesced Write\",\n \"avg\": \"&buffCoscaleWrite_avg\",\n \"min\": \"&buffCoscaleWrite_min\",\n \"max\": \"&buffCoscaleWrite_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Texture Addr and Data)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"taBusy_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [100, \"&TA_TA_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}] }},\n \"taBusy_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [100, \"&TA_TA_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}] }},\n \"taBusy_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [100, \"&TA_TA_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}] }},\n\n \"tc2ta_addrStall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"tc2ta_addrStall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"tc2ta_addrStall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n\n \"tc2ta_dataStall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_DATA_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"tc2ta_dataStall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_DATA_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"tc2ta_dataStall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_DATA_STALLED_BY_TC_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n\n \"td2ta_addrStall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TD_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"td2ta_addrStall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TD_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"td2ta_addrStall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TA_ADDR_STALLED_BY_TD_CYCLES_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n\n \"totalInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_TOTAL_WAVEFRONTS_sum\", \"&denom\"] }},\n \"totalInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_TOTAL_WAVEFRONTS_sum\", \"&denom\"] }},\n \"totalInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_TOTAL_WAVEFRONTS_sum\", \"&denom\"] }},\n\n \"flatInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\"] }},\n \"flatInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\"] }},\n \"flatInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_WAVEFRONTS_sum\", \"&denom\"] }},\n\n \"flatReadInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatReadInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatReadInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"flatWriteInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatWriteInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatWriteInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"flatAtomicInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatAtomicInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"flatAtomicInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_FLAT_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferReadInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferReadInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferReadInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_READ_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferWriteInstr_avg\":{\"$avg\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferWriteInstr_min\":{\"$min\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferWriteInstr_max\":{\"$max\": { \"$divide\": [ \"&TA_BUFFER_WRITE_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"bufferAtomicInstr_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferAtomicInstr_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n \"bufferAtomicInstr_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_ATOMIC_WAVEFRONTS_sum\", \"&denom\"]}},\n\n \"buffTotal_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_TOTAL_CYCLES_sum\", \"&denom\"] }},\n \"buffTotal_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_TOTAL_CYCLES_sum\", \"&denom\"] }},\n \"buffTotal_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_TOTAL_CYCLES_sum\", \"&denom\"] }},\n\n \"buffCoscaleRead_avg\":{\"$avg\": {\"$divide\": [ \"&TA_BUFFER_COALESCED_READ_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleRead_min\":{\"$min\": {\"$divide\": [ \"&TA_BUFFER_COALESCED_READ_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleRead_max\":{\"$max\": {\"$divide\": [ \"&TA_BUFFER_COALESCED_READ_CYCLES_sum\", \"&denom\"] }},\n\n \"buffCoscaleWrite_avg\":{\"$avg\": { \"$divide\": [ \"&TA_BUFFER_COALESCED_WRITE_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleWrite_min\":{\"$min\": { \"$divide\": [ \"&TA_BUFFER_COALESCED_WRITE_CYCLES_sum\", \"&denom\"] }},\n \"buffCoscaleWrite_max\":{\"$max\": { \"$divide\": [ \"&TA_BUFFER_COALESCED_WRITE_CYCLES_sum\", \"&denom\"] }}\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"TA Busy\",\n \"avg\": \"&taBusy_avg\",\n \"min\": \"&taBusy_min\",\n \"max\": \"&taBusy_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TC2TA Addr Stall\",\n \"avg\": \"&tc2ta_addrStall_avg\",\n \"min\": \"&tc2ta_addrStall_min\",\n \"max\": \"&tc2ta_addrStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TC2TA Data Stall\",\n \"avg\": \"&tc2ta_dataStall_avg\",\n \"min\": \"&tc2ta_dataStall_min\",\n \"max\": \"&tc2ta_dataStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TD2TA Addr Stall\",\n \"avg\": \"&td2ta_addrStall_avg\",\n \"min\": \"&td2ta_addrStall_min\",\n \"max\": \"&td2ta_addrStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Total Instructions\",\n \"avg\": \"&totalInstr_avg\",\n \"min\": \"&totalInstr_min\",\n \"max\": \"&totalInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Instr\",\n \"avg\": \"&flatInstr_avg\",\n \"min\": \"&flatInstr_min\",\n \"max\": \"&flatInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Read Instr\",\n \"avg\": \"&flatReadInstr_avg\",\n \"min\": \"&flatReadInstr_min\",\n \"max\": \"&flatReadInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Write Instr\",\n \"avg\": \"&flatWriteInstr_avg\",\n \"min\": \"&flatWriteInstr_min\",\n \"max\": \"&flatWriteInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Flat Atomic Instr\",\n \"avg\": \"&flatAtomicInstr_avg\",\n \"min\": \"&flatAtomicInstr_min\",\n \"max\": \"&flatAtomicInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Instr\",\n \"avg\": \"&bufferInstr_avg\",\n \"min\": \"&bufferInstr_min\",\n \"max\": \"&bufferInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Read Instr\",\n \"avg\": \"&bufferReadInstr_avg\",\n \"min\": \"&bufferReadInstr_min\",\n \"max\": \"&bufferReadInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Write Instr\",\n \"avg\": \"&bufferWriteInstr_avg\",\n \"min\": \"&bufferWriteInstr_min\",\n \"max\": \"&bufferWriteInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Atomic Instr\",\n \"avg\": \"&bufferAtomicInstr_avg\",\n \"min\": \"&bufferAtomicInstr_min\",\n \"max\": \"&bufferAtomicInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Total Cylces\",\n \"avg\": \"&buffTotal_avg\",\n \"min\": \"&buffTotal_min\",\n \"max\": \"&buffTotal_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Coalesced Read\",\n \"avg\": \"&buffCoscaleRead_avg\",\n \"min\": \"&buffCoscaleRead_min\",\n \"max\": \"&buffCoscaleRead_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n },\n {\n \"metric\": \"Buffer Coalesced Write\",\n \"avg\": \"&buffCoscaleWrite_avg\",\n \"min\": \"&buffCoscaleWrite_min\",\n \"max\": \"&buffCoscaleWrite_max\",\n \"Unit\": {\"$concat\": [\"Cycles \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "TA",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Unit 2": true,
+ "metric 2": true
+ },
+ "indexByName": {
+ "Unit 1": 9,
+ "Unit 2": 2,
+ "avg 1": 3,
+ "avg 2": 4,
+ "max 1": 7,
+ "max 2": 8,
+ "metric 1": 0,
+ "metric 2": 1,
+ "min 1": 5,
+ "min 2": 6
+ },
+ "renameByName": {
+ "avg 1": "Avg (Current)",
+ "avg 2": "Avg (Baseline)",
+ "max 1": "Max (Current)",
+ "max 2": "Max (Baseline)",
+ "min 1": "Min (Current)",
+ "min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 124
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 120
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 135
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 130
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 108
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 136
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 17,
+ "w": 12,
+ "x": 12,
+ "y": 14
+ },
+ "id": 134,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"tdBusy_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TD_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}] }},\n \"tdBusy_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TD_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}] }},\n \"tdBusy_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TD_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}] }},\n\n \"tc2tdStall_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TC_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"tc2tdStall_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TC_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"tc2tdStall_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TC_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n\n \"spi2td_stall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TD_SPI_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"spi2td_stall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TD_SPI_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n \"spi2td_stall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TD_SPI_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU]}]}},\n\n \"coscaleInstr_avg\":{\"$avg\": {\"$divide\": [\"&TD_COALESCABLE_WAVEFRONT_sum\", \"&denom\"] }},\n \"coscaleInstr_min\":{\"$min\": {\"$divide\": [\"&TD_COALESCABLE_WAVEFRONT_sum\", \"&denom\"] }},\n \"coscaleInstr_max\":{\"$max\": {\"$divide\": [\"&TD_COALESCABLE_WAVEFRONT_sum\", \"&denom\"] }},\n\n \"loadInstr_avg\":{\"$avg\": {\"$divide\": [{ \"$subtract\": [{ \"$subtract\": [\"&TD_LOAD_WAVEFRONT_sum\", \"&TD_STORE_WAVEFRONT_sum\"]}, \"&TD_ATOMIC_WAVEFRONT_sum\"] }, \"&denom\" ] }},\n \"loadInstr_min\":{\"$min\": {\"$divide\": [{ \"$subtract\": [{ \"$subtract\": [\"&TD_LOAD_WAVEFRONT_sum\", \"&TD_STORE_WAVEFRONT_sum\"]}, \"&TD_ATOMIC_WAVEFRONT_sum\"] }, \"&denom\" ] }},\n \"loadInstr_max\":{\"$max\": {\"$divide\": [{ \"$subtract\": [{ \"$subtract\": [\"&TD_LOAD_WAVEFRONT_sum\", \"&TD_STORE_WAVEFRONT_sum\"]}, \"&TD_ATOMIC_WAVEFRONT_sum\"] }, \"&denom\" ] }},\n\n \"storeInstr_avg\":{\"$avg\": {\"$divide\": [\"&TD_STORE_WAVEFRONT_sum\", \"&denom\" ] }},\n \"storeInstr_min\":{\"$min\": {\"$divide\": [\"&TD_STORE_WAVEFRONT_sum\", \"&denom\" ] }},\n \"storeInstr_max\":{\"$max\": {\"$divide\": [\"&TD_STORE_WAVEFRONT_sum\", \"&denom\" ] }},\n\n \"atomicInstr_avg\":{\"$avg\": {\"$divide\": [\"&TD_ATOMIC_WAVEFRONT_sum\", \"&denom\" ]}},\n \"atomicInstr_min\":{\"$min\": {\"$divide\": [\"&TD_ATOMIC_WAVEFRONT_sum\", \"&denom\" ]}},\n \"atomicInstr_max\":{\"$max\": {\"$divide\": [\"&TD_ATOMIC_WAVEFRONT_sum\", \"&denom\" ]}}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"TD Busy\",\n \"avg\": \"&tdBusy_avg\",\n \"min\": \"&tdBusy_min\",\n \"max\": \"&tdBusy_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TC2TD Stall\",\n \"avg\": \"&tc2tdStall_avg\",\n \"min\": \"&tc2tdStall_min\",\n \"max\": \"&tc2tdStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"SPI2TD Stall\",\n \"avg\": \"&spi2td_stall_avg\",\n \"min\": \"&spi2td_stall_min\",\n \"max\": \"&spi2td_stall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Coalescable Instr\",\n \"avg\": \"&coscaleInstr_avg\",\n \"min\": \"&coscaleInstr_min\",\n \"max\": \"&coscaleInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Load Instr\",\n \"avg\": \"&loadInstr_avg\",\n \"min\": \"&loadInstr_min\",\n \"max\": \"&loadInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Store Instr\",\n \"avg\": \"&storeInstr_avg\",\n \"min\": \"&storeInstr_min\",\n \"max\": \"&storeInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Instr\",\n \"avg\": \"&atomicInstr_avg\",\n \"min\": \"&atomicInstr_min\",\n \"max\": \"&atomicInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Texture Addr and Data)\"}}\n }},\n {\"$addFields\": {\n \n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"tdBusy_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TD_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}] }},\n \"tdBusy_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TD_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}] }},\n \"tdBusy_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TD_BUSY_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}] }},\n\n \"tc2tdStall_avg\":{\"$avg\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TC_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"tc2tdStall_min\":{\"$min\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TC_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"tc2tdStall_max\":{\"$max\": { \"$divide\": [ { \"$multiply\": [100, \"&TD_TC_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n\n \"spi2td_stall_avg\":{\"$avg\": {\"$divide\": [ { \"$multiply\": [100, \"&TD_SPI_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"spi2td_stall_min\":{\"$min\": {\"$divide\": [ { \"$multiply\": [100, \"&TD_SPI_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n \"spi2td_stall_max\":{\"$max\": {\"$divide\": [ { \"$multiply\": [100, \"&TD_SPI_STALL_sum\"] }, { \"$multiply\": [\"&GRBM_GUI_ACTIVE\", $numCU2]}]}},\n\n \"coscaleInstr_avg\":{\"$avg\": {\"$divide\": [\"&TD_COALESCABLE_WAVEFRONT_sum\", \"&denom\"] }},\n \"coscaleInstr_min\":{\"$min\": {\"$divide\": [\"&TD_COALESCABLE_WAVEFRONT_sum\", \"&denom\"] }},\n \"coscaleInstr_max\":{\"$max\": {\"$divide\": [\"&TD_COALESCABLE_WAVEFRONT_sum\", \"&denom\"] }},\n\n \"loadInstr_avg\":{\"$avg\": {\"$divide\": [{ \"$subtract\": [{ \"$subtract\": [\"&TD_LOAD_WAVEFRONT_sum\", \"&TD_STORE_WAVEFRONT_sum\"]}, \"&TD_ATOMIC_WAVEFRONT_sum\"] }, \"&denom\" ] }},\n \"loadInstr_min\":{\"$min\": {\"$divide\": [{ \"$subtract\": [{ \"$subtract\": [\"&TD_LOAD_WAVEFRONT_sum\", \"&TD_STORE_WAVEFRONT_sum\"]}, \"&TD_ATOMIC_WAVEFRONT_sum\"] }, \"&denom\" ] }},\n \"loadInstr_max\":{\"$max\": {\"$divide\": [{ \"$subtract\": [{ \"$subtract\": [\"&TD_LOAD_WAVEFRONT_sum\", \"&TD_STORE_WAVEFRONT_sum\"]}, \"&TD_ATOMIC_WAVEFRONT_sum\"] }, \"&denom\" ] }},\n\n \"storeInstr_avg\":{\"$avg\": {\"$divide\": [\"&TD_STORE_WAVEFRONT_sum\", \"&denom\" ] }},\n \"storeInstr_min\":{\"$min\": {\"$divide\": [\"&TD_STORE_WAVEFRONT_sum\", \"&denom\" ] }},\n \"storeInstr_max\":{\"$max\": {\"$divide\": [\"&TD_STORE_WAVEFRONT_sum\", \"&denom\" ] }},\n\n \"atomicInstr_avg\":{\"$avg\": {\"$divide\": [\"&TD_ATOMIC_WAVEFRONT_sum\", \"&denom\" ]}},\n \"atomicInstr_min\":{\"$min\": {\"$divide\": [\"&TD_ATOMIC_WAVEFRONT_sum\", \"&denom\" ]}},\n \"atomicInstr_max\":{\"$max\": {\"$divide\": [\"&TD_ATOMIC_WAVEFRONT_sum\", \"&denom\" ]}}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"TD Busy\",\n \"avg\": \"&tdBusy_avg\",\n \"min\": \"&tdBusy_min\",\n \"max\": \"&tdBusy_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"TC2TD Stall\",\n \"avg\": \"&tc2tdStall_avg\",\n \"min\": \"&tc2tdStall_min\",\n \"max\": \"&tc2tdStall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"SPI2TD Stall\",\n \"avg\": \"&spi2td_stall_avg\",\n \"min\": \"&spi2td_stall_min\",\n \"max\": \"&spi2td_stall_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Coalescable Instr\",\n \"avg\": \"&coscaleInstr_avg\",\n \"min\": \"&coscaleInstr_min\",\n \"max\": \"&coscaleInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Load Instr\",\n \"avg\": \"&loadInstr_avg\",\n \"min\": \"&loadInstr_min\",\n \"max\": \"&loadInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Store Instr\",\n \"avg\": \"&storeInstr_avg\",\n \"min\": \"&storeInstr_min\",\n \"max\": \"&storeInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Instr\",\n \"avg\": \"&atomicInstr_avg\",\n \"min\": \"&atomicInstr_min\",\n \"max\": \"&atomicInstr_max\",\n \"Unit\": {\"$concat\": [\"Instr \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n ]);",
+ "type": "table"
+ }
+ ],
+ "title": "TD",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Unit 2": true,
+ "metric 2": true
+ },
+ "indexByName": {
+ "Unit 1": 9,
+ "Unit 2": 2,
+ "avg 1": 3,
+ "avg 2": 4,
+ "max 1": 7,
+ "max 2": 8,
+ "metric 1": 0,
+ "metric 2": 1,
+ "min 1": 5,
+ "min 2": 6
+ },
+ "renameByName": {
+ "avg 1": "Avg (Current)",
+ "avg 2": "Avg (Baseline)",
+ "max 1": "Max (Current)",
+ "max 2": "Max (Baseline)",
+ "min 1": "Min (Current)",
+ "min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Texture Addresser and Texture Data (TA/TD)",
+ "type": "row"
+ },
+ {
+ "collapsed": false,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 14
+ },
+ "id": 112,
+ "panels": [],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "Vector L1 Data Cache",
+ "type": "row"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "decimals": 1,
+ "mappings": [],
+ "max": 100,
+ "min": 0,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 13,
+ "w": 12,
+ "x": 0,
+ "y": 15
+ },
+ "id": 165,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "",
+ "values": false
+ },
+ "showUnfilled": true,
+ "text": {}
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"bufferCoalescing_pct\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [\"&TCP_TOTAL_ACCESSES_sum\", 0] },\n { \"$divide\": [{\"$multiply\": [\"&TA_TOTAL_WAVEFRONTS_sum\", 64, 100]}, {\"$multiply\": [\"&TCP_TOTAL_ACCESSES_sum\", 4]}] },\n null\n ]\n }\n },\n \"cacheUtil_pct\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0] },\n { \"$divide\": [{\"$multiply\": [\"&TCP_GATE_EN2_sum\", 100]}, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }\n },\n \n \"cacheBW_pct\": {\n \"$avg\": { \"$divide\": [ {\"$multiply\":[64, \"&TCP_TOTAL_CACHE_ACCESSES_sum\"]}, \n {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]} \n ] \n }\n },\n \"cacheHit_pct\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0] },\n { \"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]\n }] \n },\n null\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Buffer Coalescing\": \"&bufferCoalescing_pct\",\n \"Cache Util\": \"&cacheUtil_pct\",\n \"Cache BW\": { \"$divide\": [{ \"$multiply\": [100, \"&cacheBW_pct\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk, 1000] }, 64] }, $numCU]}] },\n \"Cache Hit\": \"&cacheHit_pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Vector L1D Cache)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"bufferCoalescing_pct\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [\"&TCP_TOTAL_ACCESSES_sum\", 0] },\n { \"$divide\": [{\"$multiply\": [\"&TA_TOTAL_WAVEFRONTS_sum\", 64, 100]}, {\"$multiply\": [\"&TCP_TOTAL_ACCESSES_sum\", 4]}] },\n null\n ]\n }\n },\n \"cacheUtil_pct\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0] },\n { \"$divide\": [{\"$multiply\": [\"&TCP_GATE_EN2_sum\", 100]}, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }\n },\n \"cacheBW_pct\": {\n \"$avg\": { \"$divide\": [ {\"$multiply\":[64, \"&TCP_TOTAL_CACHE_ACCESSES_sum\"]}, \n {\"$subtract\":[\"&EndNs\", \"&BeginNs\"]} \n ] \n }\n },\n \"cacheHit_pct\": {\n \"$avg\": {\n \"$cond\": [ {\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0] },\n { \"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]\n }] \n },\n null\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Buffer Coalescing\": \"&bufferCoalescing_pct\",\n \"Cache Util\": \"&cacheUtil_pct\",\n \"Cache BW\": { \"$divide\": [{ \"$multiply\": [100, \"&cacheBW_pct\"] }, { \"$multiply\": [ { \"$multiply\": [{ \"$divide\": [$sclk2, 1000] }, 64] }, $numCU2]}] },\n \"Cache Hit\": \"&cacheHit_pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Speed-of-Light: Vector L1D Cache",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "128B Read Combining 1": 6,
+ "128B Read Combining 2": 7,
+ "Buffer Coalescing 1": 0,
+ "Buffer Coalescing 2": 1,
+ "Cache BW 1": 2,
+ "Cache BW 2": 3,
+ "Cache Hit 1": 4,
+ "Cache Hit 2": 5
+ },
+ "renameByName": {
+ "128B Read Combining 1": "128B Read Combining (Current)",
+ "128B Read Combining 2": "128B Read Combining(Baseline)",
+ "Buffer Coalescing 1": "Buf Coalescing (Current)",
+ "Buffer Coalescing 2": "Buf Coalescing (Baseline)",
+ "Cache BW 1": "Cache BW (Current)",
+ "Cache BW 2": "Cache BW (Baseline)",
+ "Cache Hit 1": "Cache Hit (Current)",
+ "Cache Hit 2": "Cache Hit (Baseline)",
+ "Cache Util 1": "Cache Util (Current)",
+ "Cache Util 2": "Cache Util (Baseline)"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "color-background"
+ },
+ "decimals": 1,
+ "mappings": [],
+ "max": 100,
+ "thresholds": {
+ "mode": "percentage",
+ "steps": [
+ {
+ "color": "transparent",
+ "value": null
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 52
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 199
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 121
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 144
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 13,
+ "w": 12,
+ "x": 12,
+ "y": 15
+ },
+ "id": 116,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n\n \"l2Pending_avg\": {\"$avg\": {\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_PENDING_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"l2Pending_min\": {\"$min\": {\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_PENDING_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"l2Pending_max\": {\"$max\": {\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_PENDING_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n\n\n \"tcr2tcp_Stall_avg\":{\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_TCR_TCP_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"tcr2tcp_Stall_min\":{\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_TCR_TCP_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"tcr2tcp_Stall_max\":{\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_TCR_TCP_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \n \"readTagRam_Stall_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_READ_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"]},\n null\n ]\n }},\n \"readTagRam_Stall_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_READ_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"]},\n null\n ]\n }},\n \"readTagRam_Stall_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_READ_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"]},\n null\n ]\n }},\n \n \"writeTagRam_Stall_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"writeTagRam_Stall_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"writeTagRam_Stall_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \n \n \"atomicTagRam_Stall_avg\":{\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }}, \n \"atomicTagRam_Stall_min\":{\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }}, \n \"atomicTagRam_Stall_max\":{\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }} \n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Stalled on L2 Data\",\n \"Mean\": \"&l2Pending_avg\",\n \"Min\": \"&l2Pending_min\",\n \"Max\": \"&l2Pending_max\",\n \"unit\":\"pct\"\n },\n {\n \"Metric\": \"Stalled on L2 Req\",\n \"Mean\": \"&tcr2tcp_Stall_avg\",\n \"Min\":\"&tcr2tcp_Stall_min\",\n \"Max\":\"&tcr2tcp_Stall_max\",\n \"unit\":\"pct\"\n },\n {\n \"Metric\": \"Tag RAM Stall (Read)\",\n \"Mean\": \"&readTagRam_Stall_avg\",\n \"Min\": \"&readTagRam_Stall_min\",\n \"Max\": \"&readTagRam_Stall_max\",\n \"unit\":\"pct\"\n },\n {\n \"Metric\": \"Tag RAM Stall (Write)\",\n \"Mean\": \"&writeTagRam_Stall_avg\",\n \"Min\": \"&writeTagRam_Stall_min\",\n \"Max\": \"&writeTagRam_Stall_max\",\n \"unit\":\"pct\"\n },\n {\n \"Metric\": \"Tag RAM Stall (Atomic)\",\n \"Mean\": \"&atomicTagRam_Stall_avg\",\n \"Min\": \"&atomicTagRam_Stall_min\",\n \"Max\": \"&atomicTagRam_Stall_max\",\n \"unit\":\"pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Vector L1D Cache)\"}}\n }},\n {\"$group\": {\n \"_id\": null,\n\n \"l2Pending_avg\": {\"$avg\": {\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_PENDING_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"l2Pending_min\": {\"$min\": {\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_PENDING_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"l2Pending_max\": {\"$max\": {\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_PENDING_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n\n \"tcr2tcp_Stall_avg\":{\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_TCR_TCP_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"tcr2tcp_Stall_min\":{\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_TCR_TCP_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"tcr2tcp_Stall_max\":{\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_TCR_TCP_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \n \"readTagRam_Stall_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_READ_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"]},\n null\n ]\n }},\n \"readTagRam_Stall_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_READ_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"]},\n null\n ]\n }},\n \"readTagRam_Stall_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_READ_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"]},\n null\n ]\n }},\n \n \"writeTagRam_Stall_avg\": {\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"writeTagRam_Stall_min\": {\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \"writeTagRam_Stall_max\": {\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_WRITE_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }},\n \n \n \"atomicTagRam_Stall_avg\":{\"$avg\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }}, \n \"atomicTagRam_Stall_min\":{\"$min\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }}, \n \"atomicTagRam_Stall_max\":{\"$max\":{\n \"$cond\":[\n {\"$ne\": [\"&TCP_GATE_EN1_sum\", 0]}, \n {\"$divide\": [ { \"$multiply\": [100, \"&TCP_ATOMIC_TAGCONFLICT_STALL_CYCLES_sum\"] }, \"&TCP_GATE_EN1_sum\"] },\n null\n ]\n }} \n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Stalled on L2 Data\",\n \"Mean\": \"&l2Pending_avg\",\n \"Min\": \"&l2Pending_min\",\n \"Max\": \"&l2Pending_max\",\n \"unit\":\"pct\"\n },\n {\n \"Metric\": \"Stalled on L2 Req\",\n \"Mean\": \"&tcr2tcp_Stall_avg\",\n \"Min\":\"&tcr2tcp_Stall_min\",\n \"Max\":\"&tcr2tcp_Stall_max\",\n \"unit\":\"pct\"\n },\n\n {\n \"Metric\": \"Tag RAM Stall (Read)\",\n \"Mean\": \"&readTagRam_Stall_avg\",\n \"Min\": \"&readTagRam_Stall_min\",\n \"Max\": \"&readTagRam_Stall_max\",\n \"unit\":\"pct\"\n },\n {\n \"Metric\": \"Tag RAM Stall (Write)\",\n \"Mean\": \"&writeTagRam_Stall_avg\",\n \"Min\": \"&writeTagRam_Stall_min\",\n \"Max\": \"&writeTagRam_Stall_max\",\n \"unit\":\"pct\"\n },\n {\n \"Metric\": \"Tag RAM Stall (Atomic)\",\n \"Mean\": \"&atomicTagRam_Stall_avg\",\n \"Min\": \"&atomicTagRam_Stall_min\",\n \"Max\": \"&atomicTagRam_Stall_max\",\n \"unit\":\"pct\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Vector L1D Cache Stalls",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Units 2": true,
+ "unit 2": true
+ },
+ "indexByName": {
+ "Max 1": 6,
+ "Max 2": 7,
+ "Mean 1": 2,
+ "Mean 2": 3,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 4,
+ "Min 2": 5,
+ "unit 1": 9,
+ "unit 2": 8
+ },
+ "renameByName": {
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Mean 1": "Avg (Current)",
+ "Mean 2": "Avg (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)",
+ "unit 1": "Unit"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 116
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 78
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 139
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Max (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 50
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "max"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 148
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 127
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 111
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 18,
+ "w": 12,
+ "x": 0,
+ "y": 28
+ },
+ "id": 128,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n\n \"totalReq_avg\":{\"$avg\": { \"$divide\": [ \"&TCP_TOTAL_ACCESSES_sum\", \"&denom\" ] }},\n \"totalReq_min\":{\"$min\": { \"$divide\": [ \"&TCP_TOTAL_ACCESSES_sum\", \"&denom\" ] }},\n \"totalReq_max\":{\"$max\": { \"$divide\": [ \"&TCP_TOTAL_ACCESSES_sum\", \"&denom\" ] }},\n\n \"readReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_READ_sum\", \"&denom\" ] }},\n \"readReq_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_READ_sum\", \"&denom\" ] }},\n \"readReq_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_READ_sum\", \"&denom\" ] }},\n\n \"writeReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_WRITE_sum\", \"&denom\" ]}},\n\n \"atomicReq_avg\":{\"$avg\": {\"$divide\": [ { \"$add\": [\"&TCP_TOTAL_ATOMIC_WITH_RET_sum\", \"&TCP_TOTAL_ATOMIC_WITHOUT_RET_sum\"] }, \"&denom\"]}},\n \"atomicReq_min\":{\"$min\": {\"$divide\": [ { \"$add\": [\"&TCP_TOTAL_ATOMIC_WITH_RET_sum\", \"&TCP_TOTAL_ATOMIC_WITHOUT_RET_sum\"] }, \"&denom\"]}},\n \"atomicReq_max\":{\"$max\": {\"$divide\": [ { \"$add\": [\"&TCP_TOTAL_ATOMIC_WITH_RET_sum\", \"&TCP_TOTAL_ATOMIC_WITHOUT_RET_sum\"] }, \"&denom\"]}},\n\n \"cacheBW_avg\":{\"$avg\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }},\n \"cacheBW_min\":{\"$min\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }},\n \"cacheBW_max\":{\"$max\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }},\n \n \"cacheAccess_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \"&denom\"]}},\n \"cacheAccess_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \"&denom\"]}},\n \"cacheAccess_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \"&denom\"]}},\n\n \"cacheHits_avg\":{\"$avg\": {\"$divide\": [ \n { \"$subtract\": [\n \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}\n ]}, \n \"&denom\"\n ]}\n },\n \"cacheHits_min\":{\"$min\": {\"$divide\": [ \n { \"$subtract\": [\n \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}\n ]}, \n \"&denom\"\n ]}\n },\n \"cacheHits_max\":{\"$max\": {\"$divide\": [ \n { \"$subtract\": [\n \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}\n ]}, \n \"&denom\"\n ]}\n },\n \n \"cacheHitRate_avg\":{\"$avg\": {\n \"$cond\": [{\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]}, \n {\"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]}\n ]},\n null\n ]\n }},\n \"cacheHitRate_min\":{\"$min\": {\n \"$cond\": [{\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]}, \n {\"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]}\n ]},\n null\n ]\n }},\n \"cacheHitRate_max\":{\"$max\": {\n \"$cond\": [{\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]}, \n {\"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]}\n ]},\n null\n ]\n }},\n \n \"l2_l1_read_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TCC_READ_REQ_sum\", \"&denom\"]}},\n \"l2_l1_read_min\":{\"$min\": {\"$divide\": [ \"&TCP_TCC_READ_REQ_sum\", \"&denom\"]}},\n \"l2_l1_read_max\":{\"$max\": {\"$divide\": [ \"&TCP_TCC_READ_REQ_sum\", \"&denom\"]}},\n\n \"l2_l1_write_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_sum\", \"&denom\"] }},\n \"l2_l1_write_min\":{\"$min\": {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_sum\", \"&denom\"] }},\n \"l2_l1_write_max\":{\"$max\": {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_sum\", \"&denom\"] }},\n\n\n \"l2_l1_atomic_avg\":{\"$avg\": {\"$divide\": [ { \"$add\": [\"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, \"&denom\"] }},\n \"l2_l1_atomic_min\":{\"$min\": {\"$divide\": [ { \"$add\": [\"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, \"&denom\"] }},\n \"l2_l1_atomic_max\":{\"$max\": {\"$divide\": [ { \"$add\": [\"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, \"&denom\"] }},\n\n \"l2_l1_bw_avg\":{\"$avg\": {\"$divide\": [{\"$multiply\": [64, {\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] } ]}, \"&denom\" ]}},\n \"l2_l1_bw_min\":{\"$min\": {\"$divide\": [{\"$multiply\": [64, {\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] } ]}, \"&denom\" ]}},\n \"l2_l1_bw_max\":{\"$max\": {\"$divide\": [{\"$multiply\": [64, {\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] } ]}, \"&denom\" ]}},\n\n \"invalidate_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_WRITEBACK_INVALIDATES_sum\", \"&denom\"] }},\n \"invalidate_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_WRITEBACK_INVALIDATES_sum\", \"&denom\"] }},\n \"invalidate_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_WRITEBACK_INVALIDATES_sum\", \"&denom\"] }},\n\n\n \"l1Latency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TA_TCP_STATE_READ_sum\", 0]},\n {\"$divide\": [ \"&TCP_TCP_LATENCY_sum\", \"&TCP_TA_TCP_STATE_READ_sum\" ]},\n null\n ] \n }},\n \"l1Latency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TA_TCP_STATE_READ_sum\", 0]},\n {\"$divide\": [ \"&TCP_TCP_LATENCY_sum\", \"&TCP_TA_TCP_STATE_READ_sum\" ]},\n null\n ] \n }},\n \"l1Latency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TA_TCP_STATE_READ_sum\", 0]},\n {\"$divide\": [ \"&TCP_TCP_LATENCY_sum\", \"&TCP_TA_TCP_STATE_READ_sum\" ]},\n null\n ] \n }},\n\n\n \"l2ReadLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_READ_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }]},\n null\n ] \n }},\n \"l2ReadLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_READ_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }]},\n null\n ] \n }},\n \"l2ReadLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_READ_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }]},\n null\n ] \n }},\n\n \"l2WriteLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }]},\n null\n ]\n }},\n \"l2WriteLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }]},\n null\n ]\n }},\n \"l2WriteLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }]},\n null\n ]\n }}\n\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"Total Req\",\n \"avg\": \"&totalReq_avg\",\n \"min\": \"&totalReq_min\",\n \"max\": \"&totalReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Read Req\",\n \"avg\": \"&readReq_avg\",\n \"min\": \"&readReq_min\",\n \"max\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Write Req\",\n \"avg\": \"&writeReq_avg\",\n \"min\": \"&writeReq_min\",\n \"max\": \"&writeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Req\",\n \"avg\": \"&l2_l1_atomic_avg\",\n \"min\": \"&l2_l1_atomic_min\",\n \"max\": \"&l2_l1_atomic_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Cache BW\",\n \"avg\": \"&cacheBW_avg\",\n \"min\": \"&cacheBW_min\",\n \"max\": \"&cacheBW_max\",\n \"Unit\": \"GB/s\"\n },\n {\n \"metric\": \"Cache Accesses\",\n \"avg\": \"&cacheAccess_avg\",\n \"min\": \"&cacheAccess_min\",\n \"max\": \"&cacheAccess_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Cache Hits\",\n \"avg\": \"&cacheHits_avg\",\n \"min\": \"&cacheHits_min\",\n \"max\": \"&cacheHits_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Cache Hit Rate\",\n \"avg\": \"&cacheHitRate_avg\",\n \"min\": \"&cacheHitRate_min\",\n \"max\": \"&cacheHitRate_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Invalidate\",\n \"avg\": \"&invalidate_avg\",\n \"min\": \"&invalidate_min\",\n \"max\": \"&invalidate_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 BW\",\n \"avg\": \"&l2_l1_bw_avg\",\n \"min\": \"&l2_l1_bw_avg\",\n \"max\": \"&l2_l1_bw_avg\",\n \"Unit\": {\"$concat\": [\"Bytes \", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 Read\",\n \"avg\": \"&l2_l1_read_avg\",\n \"min\": \"&l2_l1_read_min\",\n \"max\": \"&l2_l1_read_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 Write\",\n \"avg\": \"&l2_l1_write_avg\",\n \"min\": \"&l2_l1_write_min\",\n \"max\": \"&l2_l1_write_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 Atomic\",\n \"avg\": \"&l2_l1_atomic_avg\",\n \"min\": \"&l2_l1_atomic_min\",\n \"max\": \"&l2_l1_atomic_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"L1 Access Latency\",\n \"avg\": \"&l1Latency_avg\",\n \"min\": \"&l1Latency_min\",\n \"max\": \"&l1Latency_max\",\n \"Unit\": \"Cycles\"\n },\n {\n \"metric\": \"L1-L2 Read Latency\",\n \"avg\": \"&l2ReadLatency_avg\",\n \"min\": \"&l2ReadLatency_min\",\n \"max\": \"&l2ReadLatency_max\",\n \"Unit\": \"Cycles\"\n },\n {\n \"metric\": \"L1-L2 Write Latency\",\n \"avg\": \"&l2WriteLatency_avg\",\n \"min\": \"&l2WriteLatency_min\",\n \"max\": \"&l2WriteLatency_max\",\n \"Unit\": \"Cycles\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Vector L1D Cache)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n\n \"totalReq_avg\":{\"$avg\": { \"$divide\": [ \"&TCP_TOTAL_ACCESSES_sum\", \"&denom\" ] }},\n \"totalReq_min\":{\"$min\": { \"$divide\": [ \"&TCP_TOTAL_ACCESSES_sum\", \"&denom\" ] }},\n \"totalReq_max\":{\"$max\": { \"$divide\": [ \"&TCP_TOTAL_ACCESSES_sum\", \"&denom\" ] }},\n\n \"readReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_READ_sum\", \"&denom\" ] }},\n \"readReq_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_READ_sum\", \"&denom\" ] }},\n \"readReq_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_READ_sum\", \"&denom\" ] }},\n\n \"writeReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_WRITE_sum\", \"&denom\" ]}},\n\n \"atomicReq_avg\":{\"$avg\": {\"$divide\": [ { \"$add\": [\"&TCP_TOTAL_ATOMIC_WITH_RET_sum\", \"&TCP_TOTAL_ATOMIC_WITHOUT_RET_sum\"] }, \"&denom\"]}},\n \"atomicReq_min\":{\"$min\": {\"$divide\": [ { \"$add\": [\"&TCP_TOTAL_ATOMIC_WITH_RET_sum\", \"&TCP_TOTAL_ATOMIC_WITHOUT_RET_sum\"] }, \"&denom\"]}},\n \"atomicReq_max\":{\"$max\": {\"$divide\": [ { \"$add\": [\"&TCP_TOTAL_ATOMIC_WITH_RET_sum\", \"&TCP_TOTAL_ATOMIC_WITHOUT_RET_sum\"] }, \"&denom\"]}},\n\n \"cacheBW_avg\":{\"$avg\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }},\n \"cacheBW_min\":{\"$min\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }},\n \"cacheBW_max\":{\"$max\": { \"$divide\": [{ \"$multiply\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 64 ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }},\n \n \"cacheAccess_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \"&denom\"]}},\n \"cacheAccess_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \"&denom\"]}},\n \"cacheAccess_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \"&denom\"]}},\n\n \"cacheHits_avg\":{\"$avg\": {\"$divide\": [ \n { \"$subtract\": [\n \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}\n ]}, \n \"&denom\"\n ]}\n },\n \"cacheHits_min\":{\"$min\": {\"$divide\": [ \n { \"$subtract\": [\n \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}\n ]}, \n \"&denom\"\n ]}\n },\n \"cacheHits_max\":{\"$max\": {\"$divide\": [ \n { \"$subtract\": [\n \"&TCP_TOTAL_CACHE_ACCESSES_sum\", \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}\n ]}, \n \"&denom\"\n ]}\n },\n \n \"cacheHitRate_avg\":{\"$avg\": {\n \"$cond\": [{\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]}, \n {\"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]}\n ]},\n null\n ]\n }},\n \"cacheHitRate_min\":{\"$min\": {\n \"$cond\": [{\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]}, \n {\"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]}\n ]},\n null\n ]\n }},\n \"cacheHitRate_max\":{\"$max\": {\n \"$cond\": [{\"$ne\": [\"&TCP_TOTAL_CACHE_ACCESSES_sum\", 0]}, \n {\"$subtract\": [100, \n { \"$divide\": [ \n { \"$multiply\": [100, \n { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }\n ] \n }, \n \"&TCP_TOTAL_CACHE_ACCESSES_sum\"\n ]}\n ]},\n null\n ]\n }},\n\n \"l2_l1_read_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TCC_READ_REQ_sum\", \"&denom\"]}},\n \"l2_l1_read_min\":{\"$min\": {\"$divide\": [ \"&TCP_TCC_READ_REQ_sum\", \"&denom\"]}},\n \"l2_l1_read_max\":{\"$max\": {\"$divide\": [ \"&TCP_TCC_READ_REQ_sum\", \"&denom\"]}},\n\n \"l2_l1_write_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_sum\", \"&denom\"] }},\n \"l2_l1_write_min\":{\"$min\": {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_sum\", \"&denom\"] }},\n \"l2_l1_write_max\":{\"$max\": {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_sum\", \"&denom\"] }},\n\n\n \"l2_l1_atomic_avg\":{\"$avg\": {\"$divide\": [ { \"$add\": [\"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, \"&denom\"] }},\n \"l2_l1_atomic_min\":{\"$min\": {\"$divide\": [ { \"$add\": [\"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, \"&denom\"] }},\n \"l2_l1_atomic_max\":{\"$max\": {\"$divide\": [ { \"$add\": [\"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }, \"&denom\"] }},\n\n \"l2_l1_bw_avg\":{\"$avg\": {\"$divide\": [{\"$multiply\": [64, {\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] } ]}, \"&denom\" ]}},\n \"l2_l1_bw_min\":{\"$min\": {\"$divide\": [{\"$multiply\": [64, {\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] } ]}, \"&denom\" ]}},\n \"l2_l1_bw_max\":{\"$max\": {\"$divide\": [{\"$multiply\": [64, {\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] } ]}, \"&denom\" ]}},\n\n \"invalidate_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TOTAL_WRITEBACK_INVALIDATES_sum\", \"&denom\"] }},\n \"invalidate_min\":{\"$min\": {\"$divide\": [ \"&TCP_TOTAL_WRITEBACK_INVALIDATES_sum\", \"&denom\"] }},\n \"invalidate_max\":{\"$max\": {\"$divide\": [ \"&TCP_TOTAL_WRITEBACK_INVALIDATES_sum\", \"&denom\"] }},\n\n\n \"l1Latency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TA_TCP_STATE_READ_sum\", 0]},\n {\"$divide\": [ \"&TCP_TCP_LATENCY_sum\", \"&TCP_TA_TCP_STATE_READ_sum\" ]},\n null\n ] \n }},\n \"l1Latency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TA_TCP_STATE_READ_sum\", 0]},\n {\"$divide\": [ \"&TCP_TCP_LATENCY_sum\", \"&TCP_TA_TCP_STATE_READ_sum\" ]},\n null\n ] \n }},\n \"l1Latency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_TA_TCP_STATE_READ_sum\", 0]},\n {\"$divide\": [ \"&TCP_TCP_LATENCY_sum\", \"&TCP_TA_TCP_STATE_READ_sum\" ]},\n null\n ] \n }},\n\n\n \"l2ReadLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_READ_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }]},\n null\n ] \n }},\n \"l2ReadLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_READ_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }]},\n null\n ] \n }},\n \"l2ReadLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_READ_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_READ_REQ_sum\", \"&TCP_TCC_ATOMIC_WITH_RET_REQ_sum\"] }]},\n null\n ] \n }},\n\n \"l2WriteLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }]},\n null\n ]\n }},\n \"l2WriteLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }]},\n null\n ]\n }},\n \"l2WriteLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [{\"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"]}, 0]},\n {\"$divide\": [ \"&TCP_TCC_WRITE_REQ_LATENCY_sum\", { \"$add\": [\"&TCP_TCC_WRITE_REQ_sum\", \"&TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum\"] }]},\n null\n ]\n }}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"Total Req\",\n \"avg\": \"&totalReq_avg\",\n \"min\": \"&totalReq_min\",\n \"max\": \"&totalReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Read Req\",\n \"avg\": \"&readReq_avg\",\n \"min\": \"&readReq_min\",\n \"max\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Write Req\",\n \"avg\": \"&writeReq_avg\",\n \"min\": \"&writeReq_min\",\n \"max\": \"&writeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Req\",\n \"avg\": \"&atomicReq_avg\",\n \"min\": \"&atomicReq_min\",\n \"max\": \"&atomicReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Cache BW\",\n \"avg\": \"&cacheBW_avg\",\n \"min\": \"&cacheBW_min\",\n \"max\": \"&cacheBW_max\",\n \"Unit\": \"GB/s\"\n },\n {\n \"metric\": \"Cache Accesses\",\n \"avg\": \"&cacheAccess_avg\",\n \"min\": \"&cacheAccess_min\",\n \"max\": \"&cacheAccess_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Cache Hits\",\n \"avg\": \"&cacheHits_avg\",\n \"min\": \"&cacheHits_min\",\n \"max\": \"&cacheHits_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Cache Hit Rate\",\n \"avg\": \"&cacheHitRate_avg\",\n \"min\": \"&cacheHitRate_min\",\n \"max\": \"&cacheHitRate_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Invalidate\",\n \"avg\": \"&invalidate_avg\",\n \"min\": \"&invalidate_min\",\n \"max\": \"&invalidate_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 BW\",\n \"avg\": \"&l2_l1_bw_avg\",\n \"min\": \"&l2_l1_bw_avg\",\n \"max\": \"&l2_l1_bw_avg\",\n \"Unit\": {\"$concat\": [\"Bytes \", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 Read\",\n \"avg\": \"&l2_l1_read_avg\",\n \"min\": \"&l2_l1_read_min\",\n \"max\": \"&l2_l1_read_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 Write\",\n \"avg\": \"&l2_l1_write_avg\",\n \"min\": \"&l2_l1_write_min\",\n \"max\": \"&l2_l1_write_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"L1-L2 Atomic\",\n \"avg\": \"&l2_l1_atomic_avg\",\n \"min\": \"&l2_l1_atomic_min\",\n \"max\": \"&l2_l1_atomic_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"L1 Access Latency\",\n \"avg\": \"&l1Latency_avg\",\n \"min\": \"&l1Latency_min\",\n \"max\": \"&l1Latency_max\",\n \"Unit\": \"Cycles\"\n },\n {\n \"metric\": \"L1-L2 Read Latency\",\n \"avg\": \"&l2ReadLatency_avg\",\n \"min\": \"&l2ReadLatency_min\",\n \"max\": \"&l2ReadLatency_max\",\n \"Unit\": \"Cycles\"\n },\n {\n \"metric\": \"L1-L2 Write Latency\",\n \"avg\": \"&l2WriteLatency_avg\",\n \"min\": \"&l2WriteLatency_min\",\n \"max\": \"&l2WriteLatency_max\",\n \"Unit\": \"Cycles\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Vector L1D Cache Accesses",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Unit 2": true,
+ "metric 2": true
+ },
+ "indexByName": {
+ "Unit 1": 9,
+ "Unit 2": 8,
+ "avg 1": 1,
+ "avg 2": 2,
+ "max 1": 5,
+ "max 2": 6,
+ "metric 1": 0,
+ "metric 2": 7,
+ "min 1": 3,
+ "min 2": 4
+ },
+ "renameByName": {
+ "avg 1": "Avg (Current)",
+ "avg 2": "Avg (Baseline)",
+ "max 1": "Max (Current)",
+ "max 2": "Max (Baseline)",
+ "min 1": "Min (Current)",
+ "min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 30,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupColName": "Coherency",
+ "GroupCols": 2,
+ "GroupGap": 5,
+ "GroupLabelColor": "#FF9830",
+ "GroupLabelFontSize": "100%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 0,
+ "Horizontal": true,
+ "LabelColName": "Xfer",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "100%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 0,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#FADE2A",
+ "ValueDecimals": 0,
+ "ValueFontSize": "100%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:172",
+ "Col": 2,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "Mean",
+ "Selected": true
+ }
+ ],
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 28
+ },
+ "id": 120,
+ "pluginVersion": "8.2.1",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "tlh8EwUnk"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n\n \"readNC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_NC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readNC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_NC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readNC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_NC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readUC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_UC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readUC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_UC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readUC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_UC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readCC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_CC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readCC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_CC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readCC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_CC_READ_REQ_sum\", \"&denom\"] }\n },\n \"readRW_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_RW_READ_REQ_sum\", \"&denom\"] }\n },\n \"readRW_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_RW_READ_REQ_sum\", \"&denom\"] }\n },\n \"readRW_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_RW_READ_REQ_sum\", \"&denom\"] }\n },\n \n \"writeNC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_NC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeNC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_NC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeNC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_NC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeUC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_UC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeUC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_UC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeUC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_UC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeCC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_CC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeCC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_CC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeCC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_CC_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeRW_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_RW_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeRW_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_RW_WRITE_REQ_sum\", \"&denom\"] }\n },\n \"writeRW_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_RW_WRITE_REQ_sum\", \"&denom\"] }\n },\n \n \"atomicNC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_NC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicNC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_NC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicNC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_NC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicUC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_UC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicUC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_UC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicUC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_UC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicCC_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_CC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicCC_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_CC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicCC_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_CC_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicRW_avg\": {\n \"$avg\": { \"$divide\": [\"&TCP_TCC_RW_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicRW_min\": {\n \"$min\": { \"$divide\": [\"&TCP_TCC_RW_ATOMIC_REQ_sum\", \"&denom\"] }\n },\n \"atomicRW_max\": {\n \"$max\": { \"$divide\": [\"&TCP_TCC_RW_ATOMIC_REQ_sum\", \"&denom\"] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Xfer\": \"Read\",\n \"Coherency\": \"NC\",\n \"Mean\": \"&readNC_avg\",\n \"Min\": \"&readNC_min\",\n \"Max\": \"&readNC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Read\",\n \"Coherency\": \"UC\",\n \"Mean\": \"&readUC_avg\",\n \"Min\": \"&readUC_min\",\n \"Max\": \"&readUC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Read\",\n \"Coherency\": \"CC\",\n \"Mean\": \"&readCC_avg\",\n \"Min\": \"&readCC_min\",\n \"Max\": \"&readCC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Read\",\n \"Coherency\": \"RW\",\n \"Mean\": \"&readRW_avg\",\n \"Min\": \"&readRW_min\",\n \"Max\": \"&readRW_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Write\",\n \"Coherency\": \"RW\",\n \"Mean\": \"&writeRW_avg\",\n \"Min\": \"&writeRW_min\",\n \"Max\": \"&writeRW_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Write\",\n \"Coherency\": \"NC\",\n \"Mean\": \"&writeNC_avg\",\n \"Min\": \"&writeNC_min\",\n \"Max\": \"&writeNC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Write\",\n \"Coherency\": \"UC\",\n \"Mean\": \"&writeUC_avg\",\n \"Min\": \"&writeUC_min\",\n \"Max\": \"&writeUC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Write\",\n \"Coherency\": \"CC\",\n \"Mean\": \"&writeCC_avg\",\n \"Min\": \"&writeCC_min\",\n \"Max\": \"&writeCC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n\n {\n \"Xfer\": \"Atomic\",\n \"Coherency\": \"NC\",\n \"Mean\": \"&atomicNC_avg\",\n \"Min\": \"&atomicNC_min\",\n \"Max\": \"&atomicNC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Atomic\",\n \"Coherency\": \"UC\",\n \"Mean\": \"&atomicUC_avg\",\n \"Min\": \"&atomicUC_min\",\n \"Max\": \"&atomicUC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Atomic\",\n \"Coherency\": \"CC\",\n \"Mean\": \"&atomicCC_avg\",\n \"Min\": \"&atomicCC_min\",\n \"Max\": \"&atomicCC_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Xfer\": \"Atomic\",\n \"Coherency\": \"RW\",\n \"Mean\": \"&atomicRW_avg\",\n \"Min\": \"&atomicRW_min\",\n \"Max\": \"&atomicRW_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Vector L1D - L2 Transactions Req $normUnit",
+ "transparent": true,
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Units"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 75
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 7,
+ "w": 12,
+ "x": 12,
+ "y": 36
+ },
+ "id": 124,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"req_avg\":{\"$avg\": { \"$divide\": [\"&TCP_UTCL1_REQUEST_sum\" ,\"&denom\"] }},\n \"req_min\":{\"$min\": { \"$divide\": [\"&TCP_UTCL1_REQUEST_sum\" ,\"&denom\"] }},\n \"req_max\":{\"$max\": { \"$divide\": [\"&TCP_UTCL1_REQUEST_sum\" ,\"&denom\"] }},\n\n\n \"hitRatio_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_UTCL1_REQUEST_sum\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&TCP_UTCL1_TRANSLATION_HIT_sum\"] },\"&TCP_UTCL1_REQUEST_sum\"]},\n null\n ]\n }},\n \"hitRatio_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_UTCL1_REQUEST_sum\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&TCP_UTCL1_TRANSLATION_HIT_sum\"] },\"&TCP_UTCL1_REQUEST_sum\"]},\n null\n ]\n }},\n \"hitRatio_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_UTCL1_REQUEST_sum\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&TCP_UTCL1_TRANSLATION_HIT_sum\"] },\"&TCP_UTCL1_REQUEST_sum\"]},\n null\n ]\n }},\n\n \"hits_avg\":{\"$avg\": { \"$divide\": [\"&TCP_UTCL1_TRANSLATION_HIT_sum\" ,\"&denom\"] }},\n \"hits_min\":{\"$min\": { \"$divide\": [\"&TCP_UTCL1_TRANSLATION_HIT_sum\" ,\"&denom\"] }},\n \"hits_max\":{\"$max\": { \"$divide\": [\"&TCP_UTCL1_TRANSLATION_HIT_sum\" ,\"&denom\"] }},\n\n \"missesTrans_avg\":{\"$avg\": {\"$divide\": [\"&TCP_UTCL1_TRANSLATION_MISS_sum\" ,\"&denom\"] }},\n \"missesTrans_min\":{\"$min\": {\"$divide\": [\"&TCP_UTCL1_TRANSLATION_MISS_sum\" ,\"&denom\"] }},\n \"missesTrans_max\":{\"$max\": {\"$divide\": [\"&TCP_UTCL1_TRANSLATION_MISS_sum\" ,\"&denom\"] }},\n\n \"missesPermis_avg\":{\"$avg\": {\"$divide\": [\"&TCP_UTCL1_PERMISSION_MISS_sum\" ,\"&denom\"] }},\n \"missesPermis_min\":{\"$min\": {\"$divide\": [\"&TCP_UTCL1_PERMISSION_MISS_sum\" ,\"&denom\"] }},\n \"missesPermis_max\":{\"$max\": {\"$divide\": [\"&TCP_UTCL1_PERMISSION_MISS_sum\" ,\"&denom\"] }}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Req\",\n \"Mean\": \"&req_avg\",\n \"Min\":\"&req_min\",\n \"Max\":\"&req_max\",\n \"Units\":{\"$concat\": [\"\", $normUnit] }\n },\n {\n \"Metric\": \"Hit Ratio\",\n \"Mean\": \"&hitRatio_avg\",\n \"Min\":\"&hitRatio_min\",\n \"Max\":\"&hitRatio_max\",\n \"Units\":\"pct\"\n },\n {\n \"Metric\": \"Hits\",\n \"Mean\": \"&hits_avg\",\n \"Min\":\"&hits_min\",\n \"Max\":\"&hits_max\",\n \"Units\":{ \"$concat\": [\"\", $normUnit] }\n },\n {\n \"Metric\": \"Misses (Translation)\",\n \"Mean\": \"&missesTrans_avg\",\n \"Min\":\"&missesTrans_min\",\n \"Max\":\"&missesTrans_max\",\n \"Units\":{\"$concat\": [\"\", $normUnit] }\n },\n {\n \"Metric\": \"Misses (Permission)\",\n \"Mean\": \"&missesPermis_avg\",\n \"Min\":\"&missesPermis_min\",\n \"Max\":\"&missesPermis_max\",\n \"Units\":{\"$concat\": [\"\", $normUnit] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(Vector L1D Cache)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"req_avg\":{\"$avg\": { \"$divide\": [\"&TCP_UTCL1_REQUEST_sum\" ,\"&denom\"] }},\n \"req_min\":{\"$min\": { \"$divide\": [\"&TCP_UTCL1_REQUEST_sum\" ,\"&denom\"] }},\n \"req_max\":{\"$max\": { \"$divide\": [\"&TCP_UTCL1_REQUEST_sum\" ,\"&denom\"] }},\n\n\n \"hitRatio_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_UTCL1_REQUEST_sum\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&TCP_UTCL1_TRANSLATION_HIT_sum\"] },\"&TCP_UTCL1_REQUEST_sum\"]},\n null\n ]\n }},\n \"hitRatio_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_UTCL1_REQUEST_sum\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&TCP_UTCL1_TRANSLATION_HIT_sum\"] },\"&TCP_UTCL1_REQUEST_sum\"]},\n null\n ]\n }},\n \"hitRatio_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCP_UTCL1_REQUEST_sum\", 0]},\n {\"$divide\": [{ \"$multiply\": [100, \"&TCP_UTCL1_TRANSLATION_HIT_sum\"] },\"&TCP_UTCL1_REQUEST_sum\"]},\n null\n ]\n }},\n\n \"hits_avg\":{\"$avg\": { \"$divide\": [\"&TCP_UTCL1_TRANSLATION_HIT_sum\" ,\"&denom\"] }},\n \"hits_min\":{\"$min\": { \"$divide\": [\"&TCP_UTCL1_TRANSLATION_HIT_sum\" ,\"&denom\"] }},\n \"hits_max\":{\"$max\": { \"$divide\": [\"&TCP_UTCL1_TRANSLATION_HIT_sum\" ,\"&denom\"] }},\n\n \"missesTrans_avg\":{\"$avg\": {\"$divide\": [\"&TCP_UTCL1_TRANSLATION_MISS_sum\" ,\"&denom\"] }},\n \"missesTrans_min\":{\"$min\": {\"$divide\": [\"&TCP_UTCL1_TRANSLATION_MISS_sum\" ,\"&denom\"] }},\n \"missesTrans_max\":{\"$max\": {\"$divide\": [\"&TCP_UTCL1_TRANSLATION_MISS_sum\" ,\"&denom\"] }},\n\n \"missesPermis_avg\":{\"$avg\": {\"$divide\": [\"&TCP_UTCL1_PERMISSION_MISS_sum\" ,\"&denom\"] }},\n \"missesPermis_min\":{\"$min\": {\"$divide\": [\"&TCP_UTCL1_PERMISSION_MISS_sum\" ,\"&denom\"] }},\n \"missesPermis_max\":{\"$max\": {\"$divide\": [\"&TCP_UTCL1_PERMISSION_MISS_sum\" ,\"&denom\"] }}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Req\",\n \"Mean\": \"&req_avg\",\n \"Min\":\"&req_min\",\n \"Max\":\"&req_max\",\n \"Units\":{\"$concat\": [\"\", $normUnit] }\n },\n {\n \"Metric\": \"Hit Ratio\",\n \"Mean\": \"&hitRatio_avg\",\n \"Min\":\"&hitRatio_min\",\n \"Max\":\"&hitRatio_max\",\n \"Units\":\"pct\"\n },\n {\n \"Metric\": \"Hits\",\n \"Mean\": \"&hits_avg\",\n \"Min\":\"&hits_min\",\n \"Max\":\"&hits_max\",\n \"Units\":{ \"$concat\": [\"\", $normUnit] }\n },\n {\n \"Metric\": \"Misses (Translation)\",\n \"Mean\": \"&missesTrans_avg\",\n \"Min\":\"&missesTrans_min\",\n \"Max\":\"&missesTrans_max\",\n \"Units\":{\"$concat\": [\"\", $normUnit] }\n },\n {\n \"Metric\": \"Misses (Permission)\",\n \"Mean\": \"&missesPermis_avg\",\n \"Min\":\"&missesPermis_min\",\n \"Max\":\"&missesPermis_max\",\n \"Units\":{\"$concat\": [\"\", $normUnit] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Vector L1D Addr Translation",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Units 2": true
+ },
+ "indexByName": {
+ "Max 1": 7,
+ "Max 2": 8,
+ "Mean 1": 3,
+ "Mean 2": 4,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Units 1": 9,
+ "Units 2": 2
+ },
+ "renameByName": {
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Mean 1": "Avg (Current)",
+ "Mean 2": "Avg (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 46
+ },
+ "id": 56,
+ "panels": [
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "mappings": [],
+ "thresholds": {
+ "mode": "percentage",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ },
+ "unit": "percent"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L2-EA Rd BW - GB/s"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "GBs"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L2-EA Rd BW "
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "GBs"
+ },
+ {
+ "id": "max",
+ "value": 1638
+ },
+ {
+ "id": "color"
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L2 Util"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "percent"
+ },
+ {
+ "id": "thresholds",
+ "value": {
+ "mode": "percentage",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ }
+ },
+ {
+ "id": "max",
+ "value": 100
+ },
+ {
+ "id": "min",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Cache Hit"
+ },
+ "properties": [
+ {
+ "id": "max",
+ "value": 100
+ },
+ {
+ "id": "unit",
+ "value": "percent"
+ },
+ {
+ "id": "thresholds",
+ "value": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "#EAB839",
+ "value": 50
+ },
+ {
+ "color": "red",
+ "value": 90
+ }
+ ]
+ }
+ },
+ {
+ "id": "min",
+ "value": 0
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L2-EA Wr BW"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "GBs"
+ },
+ {
+ "id": "max",
+ "value": 1638
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "L2-EA Rd BW"
+ },
+ "properties": [
+ {
+ "id": "unit",
+ "value": "GBs"
+ },
+ {
+ "id": "max",
+ "value": 1638
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 7,
+ "w": 12,
+ "x": 0,
+ "y": 47
+ },
+ "id": 64,
+ "options": {
+ "displayMode": "gradient",
+ "minVizHeight": 10,
+ "minVizWidth": 0,
+ "orientation": "horizontal",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "",
+ "values": true
+ },
+ "showUnfilled": true,
+ "text": {
+ "titleSize": 14,
+ "valueSize": 16
+ }
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n\n{\"$group\": {\n \"_id\": null,\n \"L2Util\": {\n \"$avg\": { \n \n \"$divide\": [\n {\"$multiply\": [\"&TCC_BUSY_sum\", 100]},\n {\"$multiply\": [{\"$toInt\":\"$L2Banks\"}, \"&GRBM_GUI_ACTIVE\"] }\n ] \n } \n },\n\n \"cacheHit\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n 0\n ] \n }},\n\n \"l2eaRdBW\": {\n \"$avg\": { \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \n \"l2eaWrBW\": {\n \"$avg\": { \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"L2 Util\": \"&L2Util\",\n \"Cache Hit\": \"&cacheHit\",\n \"L2-EA Rd BW\": \"&l2eaRdBW\",\n \"L2-EA Wr BW\": \"&l2eaWrBW\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(L2 Cache)\"}}\n }},\n\n{\"$group\": {\n \"_id\": null,\n \"L2Util\": {\n \"$avg\": { \n \"$divide\": [\n {\"$multiply\": [\"&TCC_BUSY_sum\", 100]},\n {\"$multiply\": [{\"$toInt\":\"$L2Banks2\"}, \"&GRBM_GUI_ACTIVE\"] }\n ] \n } \n },\n\n \"cacheHit\": {\n \"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n 0\n ] \n }},\n\n \"l2eaRdBW\": {\n \"$avg\": { \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n },\n \n \"l2eaWrBW\": {\n \"$avg\": { \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, { \"$subtract\": [\"&EndNs\", \"&BeginNs\"] } ] }\n }\n }\n },\n {\"$set\": {\n \"array\": [\n {\n \"L2 Util\": \"&L2Util\",\n \"Cache Hit\": \"&cacheHit\",\n \"L2-EA Rd BW\": \"&l2eaRdBW\",\n \"L2-EA Wr BW\": \"&l2eaWrBW\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "Speed-of-Light: L2 Cache",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {},
+ "indexByName": {
+ "Cache Hit 1": 2,
+ "Cache Hit 2": 3,
+ "L2 Util 1": 0,
+ "L2 Util 2": 1,
+ "L2-EA Rd BW 1": 4,
+ "L2-EA Rd BW 2": 5,
+ "L2-EA Wr BW 1": 6,
+ "L2-EA Wr BW 2": 7
+ },
+ "renameByName": {
+ "Cache Hit 1": "L2 Cache Hit (Current)",
+ "Cache Hit 2": "L2 Cache Hit (Baseline)",
+ "L2 Util 1": "L2 Util (Current)",
+ "L2 Util 2": "L2 Util (Baseline)",
+ "L2-EA Rd BW - GB/s 1": "L2-EA RD BW (Current)",
+ "L2-EA Rd BW - GB/s 2": "L2-EA RD BW (baseline)",
+ "L2-EA Rd BW 1": "L2-EA Rd BW (Current)",
+ "L2-EA Rd BW 2": "L2-EA Rd BW (Baseline)",
+ "L2-EA Wr BW - GB/s 1": "L2-EA WR BW (Current)",
+ "L2-EA Wr BW - GB/s 2": "L2-EA WR BW (Baseline)",
+ "L2-EA Wr BW 1": "L2-EA Wr BW (Current)",
+ "L2-EA Wr BW 2": "L2-EA Wr BW (Baseline)"
+ }
+ }
+ }
+ ],
+ "transparent": true,
+ "type": "bargauge"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 0,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 106
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 114
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Metric"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 148
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 16,
+ "w": 12,
+ "x": 12,
+ "y": 47
+ },
+ "id": 62,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": \"null\",\n \"readStall_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"readStall_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"readStall_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n\n \"writeStall_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"writeStall_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"writeStall_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n\n \n \"readBW_avg\":{\"$avg\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, \"&denom\" ]\n }},\n \"readBW_min\":{\"$min\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, \"&denom\" ]\n }},\n \"readBW_max\":{\"$max\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, \"&denom\" ]\n }},\n\n \"writeBW_avg\":{\"$avg\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, \"&denom\" ]\n }},\n \"writeBW_min\":{\"$min\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, \"&denom\" ]\n }},\n \"writeBW_max\":{\"$max\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, \"&denom\" ]\n }},\n\n \"read32_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_32B_sum\", \"&denom\" ]\n }},\n \"read32_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_32B_sum\", \"&denom\" ]\n }},\n \"read32_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_32B_sum\", \"&denom\" ]\n }},\n\n \"read32Uncached_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_RD_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"read32Uncached_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_RD_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"read32Uncached_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_RD_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n\n \"read64_avg\":{\"$avg\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, \"&denom\" ]\n }},\n \"read64_min\":{\"$min\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, \"&denom\" ]\n }},\n \"read64_max\":{\"$max\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, \"&denom\" ]\n }},\n\n \"hbmRead_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmRead_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmRead_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_DRAM_sum\", \"&denom\" ]\n }},\n\n \"write32_avg\":{\"$avg\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, \"&denom\" ]\n }},\n \"write32_min\":{\"$min\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, \"&denom\" ]\n }},\n \"write32_max\":{\"$max\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, \"&denom\" ]\n }},\n\n \"write32Uncached_avg\": {\"$avg\":{\n \"$divide\": [ \"&TCC_EA_WR_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"write32Uncached_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_WR_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"write32Uncached_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_WR_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n\n \"write64_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_64B_sum\", \"&denom\" ]\n }},\n \"write64_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_64B_sum\", \"&denom\" ]\n }},\n \"write64_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_64B_sum\", \"&denom\" ]\n }},\n\n \"hbmWrite_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmWrite_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmWrite_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_DRAM_sum\", \"&denom\" ]\n }},\n\n \"readLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\" ] },\n null\n ]\n }},\n \"readLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\" ] },\n null\n ]\n }},\n \"readLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\" ] },\n null\n ]\n }},\n\n \"writeLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\" ] },\n null\n ]\n }},\n \"writeLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\" ] },\n null\n ]\n }},\n \"writeLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\" ] },\n null\n ]\n }},\n\n \"atomicOpLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_ATOMIC_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_ATOMIC_LEVEL_sum\", \"&TCC_EA_ATOMIC_sum\" ] },\n null\n ]\n }},\n \"atomicOpLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_ATOMIC_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_ATOMIC_LEVEL_sum\", \"&TCC_EA_ATOMIC_sum\" ] },\n null\n ]\n }},\n \"atomicOpLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_ATOMIC_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_ATOMIC_LEVEL_sum\", \"&TCC_EA_ATOMIC_sum\" ] },\n null\n ]\n }}\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Read BW\",\n \"Avg\": \"&readBW_avg\",\n \"Min\":\"&readBW_min\",\n \"Max\":\"&readBW_max\",\n \"Unit\":{\"$concat\": [\"Bytes \", $normUnit] }\n },\n {\n \"Metric\": \"Write BW\",\n \"Avg\": \"&writeBW_avg\",\n \"Min\":\"&writeBW_min\",\n \"Max\":\"&writeBW_max\",\n \"Unit\":{\"$concat\": [\"Bytes \", $normUnit] }\n },\n {\n \"Metric\": \"Read (32B)\",\n \"Avg\": \"&read32_avg\",\n \"Min\":\"&read32_min\",\n \"Max\":\"&read32_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Read (Uncached 32B)\",\n \"Avg\": \"&read32Uncached_avg\",\n \"Min\":\"&read32Uncached_min\",\n \"Max\":\"&read32Uncached_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Read (64B)\",\n \"Avg\": \"&read64_avg\",\n \"Min\":\"&read64_min\",\n \"Max\":\"&read64_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"HBM Read\",\n \"Avg\": \"&hbmRead_avg\",\n \"Min\":\"&hbmRead_min\",\n \"Max\":\"&hbmRead_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Write (32B)\",\n \"Avg\": \"&write32_avg\",\n \"Min\":\"&write32_min\",\n \"Max\":\"&write32_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Write (Uncached 32B)\",\n \"Avg\": \"&write32Uncached_avg\",\n \"Min\":\"&write32Uncached_min\",\n \"Max\":\"&write32Uncached_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Write (64B)\",\n \"Avg\": \"&write64_avg\",\n \"Min\":\"&write64_min\",\n \"Max\":\"&write64_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"HBM Write\",\n \"Avg\": \"&hbmWrite_avg\",\n \"Min\":\"&hbmWrite_min\",\n \"Max\":\"&hbmWrite_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Read Latency\",\n \"Avg\": \"&readLatency_avg\",\n \"Min\":\"&readLatency_min\",\n \"Max\":\"&readLatency_max\",\n \"Unit\":\"Cycles\"\n },\n {\n \"Metric\": \"Write Latency\",\n \"Avg\": \"&writeLatency_avg\",\n \"Min\":\"&writeLatency_min\",\n \"Max\":\"&writeLatency_max\",\n \"Unit\":\"Cycles\"\n },\n {\n \"Metric\": \"Atomic Latency\",\n \"Avg\": \"&atomicOpLatency_avg\",\n \"Min\":\"&atomicOpLatency_min\",\n \"Max\":\"&atomicOpLatency_max\",\n \"Unit\":\"Cycles\"\n },\n {\n \"Metric\": \"Read Stall\",\n \"Avg\": \"&readStall_avg\",\n \"Min\":\"&readStall_min\",\n \"Max\":\"&readStall_max\",\n \"Unit\":\"pct\"\n },\n {\n \"Metric\": \"Write Stall\",\n \"Avg\": \"&writeStall_avg\",\n \"Min\":\"&writeStall_min\",\n \"Max\":\"&writeStall_max\",\n \"Unit\":\"pct\"\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(L2 Cache)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": \"null\",\n \"readStall_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"readStall_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"readStall_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n\n \"writeStall_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"writeStall_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n \"writeStall_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_BUSY_sum\", 0]},\n { \"$divide\": [ \n {\"$multiply\": [100, {\"$add\":[\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\"]}]},\n \"&TCC_BUSY_sum\" \n ]},\n null\n ]\n }},\n\n \"readBW_avg\":{\"$avg\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, \"&denom\" ]\n }},\n \"readBW_min\":{\"$min\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, \"&denom\" ]\n }},\n \"readBW_max\":{\"$max\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_RDREQ_32B_sum\", 32]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, 64] } ] }, \"&denom\" ]\n }},\n\n \"writeBW_avg\":{\"$avg\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, \"&denom\" ]\n }},\n \"writeBW_min\":{\"$min\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, \"&denom\" ]\n }},\n \"writeBW_max\":{\"$max\": {\n \"$divide\": [ { \"$add\" : [{ \"$multiply\": [\"&TCC_EA_WRREQ_64B_sum\", 64]}, { \"$multiply\": [{ \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, 32] } ] }, \"&denom\" ]\n }},\n\n \"read32_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_32B_sum\", \"&denom\" ]\n }},\n \"read32_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_32B_sum\", \"&denom\" ]\n }},\n \"read32_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_32B_sum\", \"&denom\" ]\n }},\n\n \"read32Uncached_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_RD_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"read32Uncached_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_RD_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"read32Uncached_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_RD_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n\n \"read64_avg\":{\"$avg\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, \"&denom\" ]\n }},\n \"read64_min\":{\"$min\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, \"&denom\" ]\n }},\n \"read64_max\":{\"$max\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_RDREQ_sum\", \"&TCC_EA_RDREQ_32B_sum\"] }, \"&denom\" ]\n }},\n\n \"hbmRead_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmRead_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmRead_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_RDREQ_DRAM_sum\", \"&denom\" ]\n }},\n\n \"write32_avg\":{\"$avg\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, \"&denom\" ]\n }},\n \"write32_min\":{\"$min\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, \"&denom\" ]\n }},\n \"write32_max\":{\"$max\": {\n \"$divide\": [ { \"$subtract\": [\"&TCC_EA_WRREQ_sum\", \"&TCC_EA_WRREQ_64B_sum\"] }, \"&denom\" ]\n }},\n\n \"write32Uncached_avg\": {\"$avg\":{\n \"$divide\": [ \"&TCC_EA_WR_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"write32Uncached_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_WR_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n \"write32Uncached_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_WR_UNCACHED_32B_sum\", \"&denom\" ]\n }},\n\n \"write64_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_64B_sum\", \"&denom\" ]\n }},\n \"write64_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_64B_sum\", \"&denom\" ]\n }},\n \"write64_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_64B_sum\", \"&denom\" ]\n }},\n\n \"hbmWrite_avg\":{\"$avg\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmWrite_min\":{\"$min\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_DRAM_sum\", \"&denom\" ]\n }},\n \"hbmWrite_max\":{\"$max\": {\n \"$divide\": [ \"&TCC_EA_WRREQ_DRAM_sum\", \"&denom\" ]\n }},\n\n \"readLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\" ] },\n null\n ]\n }},\n \"readLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\" ] },\n null\n ]\n }},\n \"readLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_RDREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_RDREQ_LEVEL_sum\", \"&TCC_EA_RDREQ_sum\" ] },\n null\n ]\n }},\n\n \"writeLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\" ] },\n null\n ]\n }},\n \"writeLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\" ] },\n null\n ]\n }},\n \"writeLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_WRREQ_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_WRREQ_LEVEL_sum\", \"&TCC_EA_WRREQ_sum\" ] },\n null\n ]\n }},\n\n \"atomicOpLatency_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_ATOMIC_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_ATOMIC_LEVEL_sum\", \"&TCC_EA_ATOMIC_sum\" ] },\n null\n ]\n }},\n \"atomicOpLatency_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_ATOMIC_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_ATOMIC_LEVEL_sum\", \"&TCC_EA_ATOMIC_sum\" ] },\n null\n ]\n }},\n \"atomicOpLatency_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [\"&TCC_EA_ATOMIC_sum\", 0]},\n { \"$divide\": [ \"&TCC_EA_ATOMIC_LEVEL_sum\", \"&TCC_EA_ATOMIC_sum\" ] },\n null\n ]\n }}\n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Read BW\",\n \"Avg\": \"&readBW_avg\",\n \"Min\":\"&readBW_min\",\n \"Max\":\"&readBW_max\",\n \"Unit\":{\"$concat\": [\"Bytes \", $normUnit] }\n },\n {\n \"Metric\": \"Write BW\",\n \"Avg\": \"&writeBW_avg\",\n \"Min\":\"&writeBW_min\",\n \"Max\":\"&writeBW_max\",\n \"Unit\":{\"$concat\": [\"Bytes \", $normUnit] }\n },\n {\n \"Metric\": \"Read (32B)\",\n \"Avg\": \"&read32_avg\",\n \"Min\":\"&read32_min\",\n \"Max\":\"&read32_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Read (Uncached 32B)\",\n \"Avg\": \"&read32Uncached_avg\",\n \"Min\":\"&read32Uncached_min\",\n \"Max\":\"&read32Uncached_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Read (64B)\",\n \"Avg\": \"&read64_avg\",\n \"Min\":\"&read64_min\",\n \"Max\":\"&read64_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"HBM Read\",\n \"Avg\": \"&hbmRead_avg\",\n \"Min\":\"&hbmRead_min\",\n \"Max\":\"&hbmRead_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Write (32B)\",\n \"Avg\": \"&write32_avg\",\n \"Min\":\"&write32_min\",\n \"Max\":\"&write32_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Write (Uncached 32B)\",\n \"Avg\": \"&write32Uncached_avg\",\n \"Min\":\"&write32Uncached_min\",\n \"Max\":\"&write32Uncached_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Write (64B)\",\n \"Avg\": \"&write64_avg\",\n \"Min\":\"&write64_min\",\n \"Max\":\"&write64_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n\n {\n \"Metric\": \"HBM Write\",\n \"Avg\": \"&hbmWrite_avg\",\n \"Min\":\"&hbmWrite_min\",\n \"Max\":\"&hbmWrite_max\",\n \"Unit\":{\"$concat\": [\"Req \", $normUnit] }\n },\n {\n \"Metric\": \"Read Latency\",\n \"Avg\": \"&readLatency_avg\",\n \"Min\":\"&readLatency_min\",\n \"Max\":\"&readLatency_max\",\n \"Unit\":\"Cycles\"\n },\n {\n \"Metric\": \"Write Latency\",\n \"Avg\": \"&writeLatency_avg\",\n \"Min\":\"&writeLatency_min\",\n \"Max\":\"&writeLatency_max\",\n \"Unit\":\"Cycles\"\n },\n {\n \"Metric\": \"Atomic Latency\",\n \"Avg\": \"&atomicOpLatency_avg\",\n \"Min\":\"&atomicOpLatency_min\",\n \"Max\":\"&atomicOpLatency_max\",\n \"Unit\":\"Cycles\"\n },\n {\n \"Metric\": \"Read Stall\",\n \"Avg\": \"&readStall_avg\",\n \"Min\":\"&readStall_min\",\n \"Max\":\"&readStall_max\",\n \"Unit\":\"pct\"\n },\n {\n \"Metric\": \"Write Stall\",\n \"Avg\": \"&writeStall_avg\",\n \"Min\":\"&writeStall_min\",\n \"Max\":\"&writeStall_max\",\n \"Unit\":\"pct\"\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "L2 - Fabric Transactions",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Metric 2": true,
+ "Unit 2": true
+ },
+ "indexByName": {
+ "Avg 1": 3,
+ "Avg 2": 4,
+ "Max 1": 7,
+ "Max 2": 8,
+ "Metric 1": 0,
+ "Metric 2": 1,
+ "Min 1": 5,
+ "Min 2": 6,
+ "Unit 1": 9,
+ "Unit 2": 2
+ },
+ "renameByName": {
+ "Avg 1": "Avg (Current)",
+ "Avg 2": "Avg (Baseline)",
+ "Max 1": "Max (Current)",
+ "Max 2": "Max (Baseline)",
+ "Min 1": "Min (Current)",
+ "Min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "datasource": {},
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "custom": {
+ "align": "auto",
+ "displayMode": "auto"
+ },
+ "decimals": 1,
+ "mappings": [],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green"
+ },
+ {
+ "color": "red",
+ "value": 80
+ }
+ ]
+ },
+ "unit": "locale"
+ },
+ "overrides": [
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 178
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Unit"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 128
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Avg (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 121
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Current)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 126
+ }
+ ]
+ },
+ {
+ "matcher": {
+ "id": "byName",
+ "options": "Min (Baseline)"
+ },
+ "properties": [
+ {
+ "id": "custom.width",
+ "value": 128
+ }
+ ]
+ }
+ ]
+ },
+ "gridPos": {
+ "h": 20,
+ "w": 12,
+ "x": 0,
+ "y": 54
+ },
+ "id": 58,
+ "options": {
+ "footer": {
+ "fields": "",
+ "reducer": [
+ "sum"
+ ],
+ "show": false
+ },
+ "showHeader": true,
+ "sortBy": []
+ },
+ "pluginVersion": "8.3.4",
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"req_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_REQ_sum\", \"&denom\"] }},\n \"req_min\":{\"$min\": { \"$divide\": [ \"&TCC_REQ_sum\", \"&denom\"] }},\n \"req_max\":{\"$max\": { \"$divide\": [ \"&TCC_REQ_sum\", \"&denom\"] }},\n\n \"streamingReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_STREAMING_REQ_sum\", \"&denom\" ] }},\n \"streamingReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_STREAMING_REQ_sum\", \"&denom\" ] }},\n \"streamingReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_STREAMING_REQ_sum\", \"&denom\" ] }},\n\n \"readReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_READ_sum\", \"&denom\" ] }},\n \"readReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_READ_sum\", \"&denom\" ] }},\n \"readReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_READ_sum\", \"&denom\" ] }},\n\n \"writeReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_WRITE_sum\", \"&denom\" ]}},\n\n \"atomicReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_ATOMIC_sum\", \"&denom\" ]}},\n \"atomicReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_ATOMIC_sum\", \"&denom\" ]}},\n \"atomicReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_ATOMIC_sum\", \"&denom\" ]}},\n\n \"probeReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_PROBE_sum\", \"&denom\" ]}},\n \"probeReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_PROBE_sum\", \"&denom\" ]}},\n \"probeReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_PROBE_sum\", \"&denom\" ]}},\n\n \"hits_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_HIT_sum\", \"&denom\"] }},\n \"hits_min\":{\"$min\": {\"$divide\": [ \"&TCC_HIT_sum\", \"&denom\"] }},\n \"hits_max\":{\"$max\": {\"$divide\": [ \"&TCC_HIT_sum\", \"&denom\"] }},\n\n \"misses_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_MISS_sum\", \"&denom\"] }},\n \"misses_min\":{\"$min\": { \"$divide\": [ \"&TCC_MISS_sum\", \"&denom\"] }},\n \"misses_max\":{\"$max\": { \"$divide\": [ \"&TCC_MISS_sum\", \"&denom\"] }},\n\n \"cacheHit_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n null\n ] \n }},\n \"cacheHit_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n null\n ] \n }},\n \"cacheHit_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n null\n ] \n }},\n\n\n \"writeback_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_WRITEBACK_sum\", \"&denom\"] }},\n \"writeback_min\":{\"$min\": {\"$divide\": [ \"&TCC_WRITEBACK_sum\", \"&denom\"] }},\n \"writeback_max\":{\"$max\": {\"$divide\": [ \"&TCC_WRITEBACK_sum\", \"&denom\"] }},\n\n \"nc_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_NC_REQ_sum\", \"&denom\" ] }},\n \"nc_min\":{\"$min\": {\"$divide\": [ \"&TCC_NC_REQ_sum\", \"&denom\" ] }},\n \"nc_max\":{\"$max\": {\"$divide\": [ \"&TCC_NC_REQ_sum\", \"&denom\" ] }},\n\n \"uc_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_UC_REQ_sum\", \"&denom\" ] }},\n \"uc_min\":{\"$min\": {\"$divide\": [ \"&TCC_UC_REQ_sum\", \"&denom\" ] }},\n \"uc_max\":{\"$max\": {\"$divide\": [ \"&TCC_UC_REQ_sum\", \"&denom\" ] }},\n\n \"cc_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_CC_REQ_sum\", \"&denom\" ] }},\n \"cc_min\":{\"$min\": {\"$divide\": [ \"&TCC_CC_REQ_sum\", \"&denom\" ] }},\n \"cc_max\":{\"$max\": {\"$divide\": [ \"&TCC_CC_REQ_sum\", \"&denom\" ] }},\n\n \"rw_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_RW_REQ_sum\", \"&denom\" ] }},\n \"rw_min\":{\"$min\": {\"$divide\": [ \"&TCC_RW_REQ_sum\", \"&denom\" ] }},\n \"rw_max\":{\"$max\": {\"$divide\": [ \"&TCC_RW_REQ_sum\", \"&denom\" ] }},\n\n \"writebackNorm_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_NORMAL_WRITEBACK_sum\", \"&denom\" ]}},\n \"writebackNorm_min\":{\"$min\": {\"$divide\": [ \"&TCC_NORMAL_WRITEBACK_sum\", \"&denom\" ]}},\n \"writebackNorm_max\":{\"$max\": {\"$divide\": [ \"&TCC_NORMAL_WRITEBACK_sum\", \"&denom\" ]}},\n\n \"writebackTC_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_ALL_TC_OP_WB_WRITEBACK_sum\", \"&denom\" ] }},\n \"writebackTC_min\":{\"$min\": {\"$divide\": [ \"&TCC_ALL_TC_OP_WB_WRITEBACK_sum\", \"&denom\" ] }},\n \"writebackTC_max\":{\"$max\": {\"$divide\": [ \"&TCC_ALL_TC_OP_WB_WRITEBACK_sum\", \"&denom\" ] }},\n\n \"evictNorm_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_NORMAL_EVICT_sum\", \"&denom\" ] }},\n \"evictNorm_min\":{\"$min\": { \"$divide\": [ \"&TCC_NORMAL_EVICT_sum\", \"&denom\" ] }},\n \"evictNorm_max\":{\"$max\": { \"$divide\": [ \"&TCC_NORMAL_EVICT_sum\", \"&denom\" ] }},\n\n \"evictTC_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_ALL_TC_OP_INV_EVICT_sum\", \"&denom\" ] }},\n \"evictTC_min\":{\"$min\": { \"$divide\": [ \"&TCC_ALL_TC_OP_INV_EVICT_sum\", \"&denom\" ] }},\n \"evictTC_max\":{\"$max\": { \"$divide\": [ \"&TCC_ALL_TC_OP_INV_EVICT_sum\", \"&denom\" ] }},\n\n\n \"readReq128_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TCR_REQ_XFER128B_COMBINING_sum\", \"&denom\" ] }},\n \"readReq128_min\":{\"$min\": {\"$divide\": [ \"&TCP_TCR_REQ_XFER128B_COMBINING_sum\", \"&denom\" ] }},\n \"readReq128_max\":{\"$max\": {\"$divide\": [ \"&TCP_TCR_REQ_XFER128B_COMBINING_sum\", \"&denom\" ] }}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"Req\",\n \"avg\": \"&req_avg\",\n \"min\": \"&req_min\",\n \"max\": \"&req_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Streaming Req\",\n \"avg\": \"&streamingReq_avg\",\n \"min\": \"&streamingReq_min\",\n \"max\": \"&streamingReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Read Req\",\n \"avg\": \"&readReq_avg\",\n \"min\": \"&readReq_min\",\n \"max\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n \n {\n \"metric\": \"Write Req\",\n \"avg\": \"&writeReq_avg\",\n \"min\": \"&writeReq_min\",\n \"max\": \"&writeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Req\",\n \"avg\": \"&atomicReq_avg\",\n \"min\": \"&atomicReq_min\",\n \"max\": \"&atomicReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Probe Req\",\n \"avg\": \"&probeReq_avg\",\n \"min\": \"&probeReq_min\",\n \"max\": \"&probeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Hits\",\n \"avg\": \"&hits_avg\",\n \"min\": \"&hits_min\",\n \"max\": \"&hits_max\",\n \"Unit\": {\"$concat\": [\"Hits \", $normUnit]}\n }, \n {\n \"metric\": \"Misses\",\n \"avg\": \"&misses_avg\",\n \"min\": \"&misses_min\",\n \"max\": \"&misses_max\",\n \"Unit\": {\"$concat\": [\"Misses \", $normUnit]}\n },\n {\n \"metric\": \"Cache Hit\",\n \"avg\": \"&cacheHit_avg\",\n \"min\": \"&cacheHit_min\",\n \"max\": \"&cacheHit_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Writeback\",\n \"avg\": \"&writeback_avg\",\n \"min\": \"&writeback_min\",\n \"max\": \"&writeback_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"NC Req\",\n \"avg\": \"&nc_avg\",\n \"min\": \"&nc_min\",\n \"max\": \"&nc_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"UC Req\",\n \"avg\": \"&uc_avg\",\n \"min\": \"&uc_min\",\n \"max\": \"&uc_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"CC Req\",\n \"avg\": \"&cc_avg\",\n \"min\": \"&cc_min\",\n \"max\": \"&cc_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"RW Req\",\n \"avg\": \"&rw_avg\",\n \"min\": \"&rw_min\",\n \"max\": \"&rw_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Writeback (Normal)\",\n \"avg\": \"&writebackNorm_avg\",\n \"min\": \"&writebackNorm_min\",\n \"max\": \"&writebackNorm_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"Writeback (TC Req)\",\n \"avg\": \"&writebackTC_avg\",\n \"min\": \"&writebackTC_min\",\n \"max\": \"&writebackTC_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"Evict (Normal)\",\n \"avg\": \"&evictNorm_avg\",\n \"min\": \"&evictNorm_min\",\n \"max\": \"&evictNorm_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"Evict (TC Req)\",\n \"avg\": \"&evictTC_avg\",\n \"min\": \"&evictTC_min\",\n \"max\": \"&evictTC_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n }\n\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n]);",
+ "type": "table"
+ },
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "hide": false,
+ "rawQuery": true,
+ "refId": "B",
+ "target": "${Workload2}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}},\n \"$expr\":{\"$regexMatch\": {\"input\":\"${select}\",\"regex\":\"(L2 Cache)\"}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n {\"$group\": {\n \"_id\": null,\n \"req_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_REQ_sum\", \"&denom\"] }},\n \"req_min\":{\"$min\": { \"$divide\": [ \"&TCC_REQ_sum\", \"&denom\"] }},\n \"req_max\":{\"$max\": { \"$divide\": [ \"&TCC_REQ_sum\", \"&denom\"] }},\n\n \"streamingReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_STREAMING_REQ_sum\", \"&denom\" ] }},\n \"streamingReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_STREAMING_REQ_sum\", \"&denom\" ] }},\n \"streamingReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_STREAMING_REQ_sum\", \"&denom\" ] }},\n\n \"readReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_READ_sum\", \"&denom\" ] }},\n \"readReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_READ_sum\", \"&denom\" ] }},\n \"readReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_READ_sum\", \"&denom\" ] }},\n\n \"writeReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_WRITE_sum\", \"&denom\" ]}},\n \"writeReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_WRITE_sum\", \"&denom\" ]}},\n\n \"atomicReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_ATOMIC_sum\", \"&denom\" ]}},\n \"atomicReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_ATOMIC_sum\", \"&denom\" ]}},\n \"atomicReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_ATOMIC_sum\", \"&denom\" ]}},\n\n \"probeReq_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_PROBE_sum\", \"&denom\" ]}},\n \"probeReq_min\":{\"$min\": {\"$divide\": [ \"&TCC_PROBE_sum\", \"&denom\" ]}},\n \"probeReq_max\":{\"$max\": {\"$divide\": [ \"&TCC_PROBE_sum\", \"&denom\" ]}},\n\n \"hits_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_HIT_sum\", \"&denom\"] }},\n \"hits_min\":{\"$min\": {\"$divide\": [ \"&TCC_HIT_sum\", \"&denom\"] }},\n \"hits_max\":{\"$max\": {\"$divide\": [ \"&TCC_HIT_sum\", \"&denom\"] }},\n\n \"misses_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_MISS_sum\", \"&denom\"] }},\n \"misses_min\":{\"$min\": { \"$divide\": [ \"&TCC_MISS_sum\", \"&denom\"] }},\n \"misses_max\":{\"$max\": { \"$divide\": [ \"&TCC_MISS_sum\", \"&denom\"] }},\n\n \"cacheHit_avg\":{\"$avg\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n null\n ] \n }},\n \"cacheHit_min\":{\"$min\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n null\n ] \n }},\n \"cacheHit_max\":{\"$max\": {\n \"$cond\": [\n {\"$ne\": [{ \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] }, 0]},\n { \"$divide\": [ { \"$multiply\": [100, \"&TCC_HIT_sum\"] }, { \"$add\": [ \"&TCC_HIT_sum\", \"&TCC_MISS_sum\" ] } ] },\n null\n ] \n }},\n\n\n \"writeback_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_WRITEBACK_sum\", \"&denom\"] }},\n \"writeback_min\":{\"$min\": {\"$divide\": [ \"&TCC_WRITEBACK_sum\", \"&denom\"] }},\n \"writeback_max\":{\"$max\": {\"$divide\": [ \"&TCC_WRITEBACK_sum\", \"&denom\"] }},\n\n \"nc_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_NC_REQ_sum\", \"&denom\" ] }},\n \"nc_min\":{\"$min\": {\"$divide\": [ \"&TCC_NC_REQ_sum\", \"&denom\" ] }},\n \"nc_max\":{\"$max\": {\"$divide\": [ \"&TCC_NC_REQ_sum\", \"&denom\" ] }},\n\n \"uc_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_UC_REQ_sum\", \"&denom\" ] }},\n \"uc_min\":{\"$min\": {\"$divide\": [ \"&TCC_UC_REQ_sum\", \"&denom\" ] }},\n \"uc_max\":{\"$max\": {\"$divide\": [ \"&TCC_UC_REQ_sum\", \"&denom\" ] }},\n\n \"cc_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_CC_REQ_sum\", \"&denom\" ] }},\n \"cc_min\":{\"$min\": {\"$divide\": [ \"&TCC_CC_REQ_sum\", \"&denom\" ] }},\n \"cc_max\":{\"$max\": {\"$divide\": [ \"&TCC_CC_REQ_sum\", \"&denom\" ] }},\n\n \"rw_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_RW_REQ_sum\", \"&denom\" ] }},\n \"rw_min\":{\"$min\": {\"$divide\": [ \"&TCC_RW_REQ_sum\", \"&denom\" ] }},\n \"rw_max\":{\"$max\": {\"$divide\": [ \"&TCC_RW_REQ_sum\", \"&denom\" ] }},\n\n \"writebackNorm_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_NORMAL_WRITEBACK_sum\", \"&denom\" ]}},\n \"writebackNorm_min\":{\"$min\": {\"$divide\": [ \"&TCC_NORMAL_WRITEBACK_sum\", \"&denom\" ]}},\n \"writebackNorm_max\":{\"$max\": {\"$divide\": [ \"&TCC_NORMAL_WRITEBACK_sum\", \"&denom\" ]}},\n\n \"writebackTC_avg\":{\"$avg\": {\"$divide\": [ \"&TCC_ALL_TC_OP_WB_WRITEBACK_sum\", \"&denom\" ] }},\n \"writebackTC_min\":{\"$min\": {\"$divide\": [ \"&TCC_ALL_TC_OP_WB_WRITEBACK_sum\", \"&denom\" ] }},\n \"writebackTC_max\":{\"$max\": {\"$divide\": [ \"&TCC_ALL_TC_OP_WB_WRITEBACK_sum\", \"&denom\" ] }},\n\n \"evictNorm_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_NORMAL_EVICT_sum\", \"&denom\" ] }},\n \"evictNorm_min\":{\"$min\": { \"$divide\": [ \"&TCC_NORMAL_EVICT_sum\", \"&denom\" ] }},\n \"evictNorm_max\":{\"$max\": { \"$divide\": [ \"&TCC_NORMAL_EVICT_sum\", \"&denom\" ] }},\n\n \"evictTC_avg\":{\"$avg\": { \"$divide\": [ \"&TCC_ALL_TC_OP_INV_EVICT_sum\", \"&denom\" ] }},\n \"evictTC_min\":{\"$min\": { \"$divide\": [ \"&TCC_ALL_TC_OP_INV_EVICT_sum\", \"&denom\" ] }},\n \"evictTC_max\":{\"$max\": { \"$divide\": [ \"&TCC_ALL_TC_OP_INV_EVICT_sum\", \"&denom\" ] }},\n\n \"readReq128_avg\":{\"$avg\": {\"$divide\": [ \"&TCP_TCR_REQ_XFER128B_COMBINING_sum\", \"&denom\" ] }},\n \"readReq128_min\":{\"$min\": {\"$divide\": [ \"&TCP_TCR_REQ_XFER128B_COMBINING_sum\", \"&denom\" ] }},\n \"readReq128_max\":{\"$max\": {\"$divide\": [ \"&TCP_TCR_REQ_XFER128B_COMBINING_sum\", \"&denom\" ] }}\n\n }},\n {\"$set\": {\n \"array\": [\n {\n \"metric\": \"Req\",\n \"avg\": \"&req_avg\",\n \"min\": \"&req_min\",\n \"max\": \"&req_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Streaming Req\",\n \"avg\": \"&streamingReq_avg\",\n \"min\": \"&streamingReq_min\",\n \"max\": \"&streamingReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Read Req\",\n \"avg\": \"&readReq_avg\",\n \"min\": \"&readReq_min\",\n \"max\": \"&readReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n \n {\n \"metric\": \"Write Req\",\n \"avg\": \"&writeReq_avg\",\n \"min\": \"&writeReq_min\",\n \"max\": \"&writeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Atomic Req\",\n \"avg\": \"&atomicReq_avg\",\n \"min\": \"&atomicReq_min\",\n \"max\": \"&atomicReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Probe Req\",\n \"avg\": \"&probeReq_avg\",\n \"min\": \"&probeReq_min\",\n \"max\": \"&probeReq_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Hits\",\n \"avg\": \"&hits_avg\",\n \"min\": \"&hits_min\",\n \"max\": \"&hits_max\",\n \"Unit\": {\"$concat\": [\"Hits \", $normUnit]}\n }, \n {\n \"metric\": \"Misses\",\n \"avg\": \"&misses_avg\",\n \"min\": \"&misses_min\",\n \"max\": \"&misses_max\",\n \"Unit\": {\"$concat\": [\"Misses \", $normUnit]}\n },\n {\n \"metric\": \"Cache Hit\",\n \"avg\": \"&cacheHit_avg\",\n \"min\": \"&cacheHit_min\",\n \"max\": \"&cacheHit_max\",\n \"Unit\": \"pct\"\n },\n {\n \"metric\": \"Writeback\",\n \"avg\": \"&writeback_avg\",\n \"min\": \"&writeback_min\",\n \"max\": \"&writeback_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"NC Req\",\n \"avg\": \"&nc_avg\",\n \"min\": \"&nc_min\",\n \"max\": \"&nc_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"UC Req\",\n \"avg\": \"&uc_avg\",\n \"min\": \"&uc_min\",\n \"max\": \"&uc_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"CC Req\",\n \"avg\": \"&cc_avg\",\n \"min\": \"&cc_min\",\n \"max\": \"&cc_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"RW Req\",\n \"avg\": \"&rw_avg\",\n \"min\": \"&rw_min\",\n \"max\": \"&rw_max\",\n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"metric\": \"Writeback (Normal)\",\n \"avg\": \"&writebackNorm_avg\",\n \"min\": \"&writebackNorm_min\",\n \"max\": \"&writebackNorm_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"Writeback (TC Req)\",\n \"avg\": \"&writebackTC_avg\",\n \"min\": \"&writebackTC_min\",\n \"max\": \"&writebackTC_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"Evict (Normal)\",\n \"avg\": \"&evictNorm_avg\",\n \"min\": \"&evictNorm_min\",\n \"max\": \"&evictNorm_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n },\n {\n \"metric\": \"Evict (TC Req)\",\n \"avg\": \"&evictTC_avg\",\n \"min\": \"&evictTC_min\",\n \"max\": \"&evictTC_max\",\n \"Unit\": {\"$concat\": [\"\", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "L2 Cache Accesses",
+ "transformations": [
+ {
+ "id": "concatenate",
+ "options": {}
+ },
+ {
+ "id": "organize",
+ "options": {
+ "excludeByName": {
+ "Unit 2": true,
+ "metric 2": true
+ },
+ "indexByName": {
+ "Unit 1": 9,
+ "Unit 2": 2,
+ "avg 1": 3,
+ "avg 2": 4,
+ "max 1": 7,
+ "max 2": 8,
+ "metric 1": 0,
+ "metric 2": 1,
+ "min 1": 5,
+ "min 2": 6
+ },
+ "renameByName": {
+ "avg 1": "Avg (Current)",
+ "avg 2": "Avg (Baseline)",
+ "max 1": "Max (Current)",
+ "max 2": "Max (Baseline)",
+ "min 1": "Min (Current)",
+ "min 2": "Min (Baseline)"
+ }
+ }
+ }
+ ],
+ "type": "table"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 30,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupColName": "Transaction",
+ "GroupCols": 1,
+ "GroupGap": 5,
+ "GroupLabelColor": "#FADE2A",
+ "GroupLabelFontSize": "120%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 0,
+ "Horizontal": true,
+ "LabelColName": "Metric",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "80%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 0,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#FF9830",
+ "ValueDecimals": 0,
+ "ValueFontSize": "100%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:81",
+ "Col": 3,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Selected": true
+ }
+ ],
+ "datasource": {},
+ "gridPos": {
+ "h": 7,
+ "w": 12,
+ "x": 12,
+ "y": 63
+ },
+ "id": 60,
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "$Workload1.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n \"ioStall_READ_avg\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"ioStall_READ_min\": {\n \"$min\": { \"$divide\": [\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"ioStall_READ_max\": {\n \"$max\": { \"$divide\": [\"&TCC_EA_RDREQ_IO_CREDIT_STALL_sum\", \"&denom\"] }\n },\n\n \"gmiStall_READ_avg\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"gmiStall_READ_min\": {\n \"$min\": { \"$divide\": [\"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"gmiStall_READ_max\": {\n \"$max\": { \"$divide\": [\"&TCC_EA_RDREQ_GMI_CREDIT_STALL_sum\", \"&denom\"] }\n },\n\n \"hbmStall_READ_avg\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"hbmStall_READ_min\": {\n \"$min\": { \"$divide\": [\"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"hbmStall_READ_max\": {\n \"$max\": { \"$divide\": [\"&TCC_EA_RDREQ_DRAM_CREDIT_STALL_sum\", \"&denom\"] }\n },\n\n \"ioStall_WRITE_avg\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"ioStall_WRITE_min\": {\n \"$min\": { \"$divide\": [\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"ioStall_WRITE_max\": {\n \"$max\": { \"$divide\": [\"&TCC_EA_WRREQ_IO_CREDIT_STALL_sum\", \"&denom\"] }\n },\n\n \"gmiStall_WRITE_avg\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"gmiStall_WRITE_min\": {\n \"$min\": { \"$divide\": [\"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"gmiStall_WRITE_max\": {\n \"$max\": { \"$divide\": [\"&TCC_EA_WRREQ_GMI_CREDIT_STALL_sum\", \"&denom\"] }\n },\n\n \"hbmStall_WRITE_avg\": {\n \"$avg\": { \"$divide\": [\"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"hbmStall_WRITE_min\": {\n \"$min\": { \"$divide\": [\"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\", \"&denom\"] }\n },\n \"hbmStall_WRITE_max\": {\n \"$max\": { \"$divide\": [\"&TCC_EA_WRREQ_DRAM_CREDIT_STALL_sum\", \"&denom\"] }\n },\n\n \"creditStarvation_avg\": {\n \"$avg\": { \"$divide\": [\"&TCC_TOO_MANY_EA_WRREQS_STALL_sum\", \"&denom\"] }\n },\n \"creditStarvation_min\": {\n \"$min\": { \"$divide\": [\"&TCC_TOO_MANY_EA_WRREQS_STALL_sum\", \"&denom\"] }\n },\n \"creditStarvation_max\": {\n \"$max\": { \"$divide\": [\"&TCC_TOO_MANY_EA_WRREQS_STALL_sum\", \"&denom\"] }\n } \n }},\n {\"$set\": {\n \"array\": [\n {\n \"Metric\": \"Remote Socket Stall\",\n \"Transaction\": \"Read\",\n \"Target\": \"I/O\",\n \"Avg\": \"&ioStall_READ_avg\",\n \"Min\": \"&ioStall_READ_min\",\n \"Max\": \"&ioStall_READ_max\", \n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Peer GCD Stall\",\n \"Transaction\": \"Read\",\n \"Target\": \"GMI\",\n \"Avg\": \"&gmiStall_READ_avg\",\n \"Min\": \"&gmiStall_READ_min\",\n \"Max\": \"&gmiStall_READ_max\", \n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"HBM Stall\",\n \"Transaction\": \"Read\",\n \"Target\": \"HBM\",\n \"Avg\": \"&hbmStall_READ_avg\",\n \"Min\": \"&hbmStall_READ_min\",\n \"Max\": \"&hbmStall_READ_max\", \n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Remote Socket Stall\",\n \"Transaction\": \"Write\",\n \"Target\": \"I/O\",\n \"Avg\": \"&ioStall_WRITE_avg\",\n \"Min\": \"&ioStall_WRITE_min\",\n \"Max\": \"&ioStall_WRITE_max\", \n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Peer GCD Stall\",\n \"Transaction\": \"Write\",\n \"Target\": \"GMI\",\n \"Avg\": \"&gmiStall_WRITE_avg\",\n \"Min\": \"&gmiStall_WRITE_min\",\n \"Max\": \"&gmiStall_WRITE_max\", \n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"HBM Stall\",\n \"Transaction\": \"Write\",\n \"Target\": \"HBM\",\n \"Avg\": \"&hbmStall_WRITE_avg\",\n \"Min\": \"&hbmStall_WRITE_min\",\n \"Max\": \"&hbmStall_WRITE_max\", \n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n },\n {\n \"Metric\": \"Credit Starvation\",\n \"Transaction\": \"Write\",\n \"Target\": \"Fabric\",\n \"Avg\": \"&creditStarvation_avg\",\n \"Min\": \"&creditStarvation_min\",\n \"Max\": \"&creditStarvation_max\", \n \"Unit\": {\"$concat\": [\"Req \", $normUnit]}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "L2 - Fabric Interface Stalls (Cycles $normUnit)",
+ "transparent": true,
+ "type": "michaeldmoore-multistat-panel"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "L2 Cache",
+ "type": "row"
+ },
+ {
+ "collapsed": true,
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "gridPos": {
+ "h": 1,
+ "w": 24,
+ "x": 0,
+ "y": 47
+ },
+ "id": 66,
+ "panels": [
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLimitValue": 100,
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineValue": 105,
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": true,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "light",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:850",
+ "Col": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "Hit Rate",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "description": "",
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 17
+ },
+ "id": 87,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 Cache Hit Rate (Percent) (Channel 0 - 15) ",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLimitValue": 100,
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineValue": 105,
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": true,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "light",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:850",
+ "Col": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "Hit Rate",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "description": "",
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 17
+ },
+ "id": 92,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "Cache Hit Rate % (Channel 16 - 31) ",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 80,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:565",
+ "Col": 3,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "Read Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 25
+ },
+ "id": 81,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L1 - L2 Read Requests(Channel 0-15) : $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:656",
+ "Col": 3,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "Read Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 25
+ },
+ "id": 82,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L1 - L 2 Read Requests (Channel 16-31): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 80,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:697",
+ "Col": 4,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "Write Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 33
+ },
+ "id": 83,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L1 - L2 Write Requests (Channel 0-15): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 0,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:750",
+ "Col": 4,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "Write Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 33
+ },
+ "id": 84,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L1 - L2 Write Requests (Channel 16-31): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLimitValue": 100,
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 0,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "100%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 80,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineValue": 105,
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": true,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:791",
+ "Col": 5,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "AtomicReq",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 41
+ },
+ "id": 85,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L1 - L2 Atomic Requests (Channel 0-15): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLimitValue": 100,
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 0,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "100%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 80,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineValue": 105,
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": true,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:791",
+ "Col": 5,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "AtomicReq",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 41
+ },
+ "id": 91,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L1 - L2 Atomic Requests (Channel 16-31): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 6,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 49
+ },
+ "id": 189,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Requests (Channel 0 - 15) : $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:341",
+ "Col": 6,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 49
+ },
+ "id": 195,
+ "maxDataPoints": 10,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Requests (Channel 16-31): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 7,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 57
+ },
+ "id": 191,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Requests (Channel 0 - 15) : $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:341",
+ "Col": 7,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Req",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 57
+ },
+ "id": 197,
+ "maxDataPoints": 10,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Requests (Channel 16-31): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 8,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA AtomicReq",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 65
+ },
+ "id": 193,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Atomic Request (Channel 0 - 15): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": false,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 2,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:341",
+ "Col": 8,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA AtomicReq",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 65
+ },
+ "id": 199,
+ "maxDataPoints": 10,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Atomic Requests (Channel 16-31): $normUnit",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupColName": "",
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 9,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Lat - cycles",
+ "Selected": true
+ }
+ ],
+ "datasource": {},
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 73
+ },
+ "hideTimeOverride": false,
+ "id": 68,
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n \"b0_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[0]\", \"&TCC_MISS[0]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[0]\"]}, \n { \"$add\": [\"&TCC_HIT[0]\", \"&TCC_MISS[0]\"] }\n ] \n },\n null \n ] \n }\n },\n \"b0_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[0]\"}, \"&denom\"] } \n },\n \"b0_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[0]\"}, \"&denom\"] } \n },\n \"b0_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[0]\"}, \"&denom\"] } \n },\n \"b0_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[0]\"}, \"&denom\"] } \n },\n \"b0_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[0]\"}, \"&denom\"] }\n },\n \"b0_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[0]\"}, \"&denom\"] } \n },\n \"b0_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[0]\"}, \"&denom\"] } \n },\n\n \"b0_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[0]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[0]\", \"&TCC_EA_RDREQ[0]\"]}, null] } },\n \"b0_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[0]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[0]\", \"&TCC_EA_WRREQ[0]\"]}, null] } },\n \"b0_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[0]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[0]\", \"&TCC_EA_ATOMIC[0]\"]}, null]}},\n\n \"b0_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[0]\"}, \"&denom\"] }},\n \"b0_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[0]\"}, \"&denom\"] }},\n \"b0_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[0]\"}, \"&denom\"] }},\n \"b0_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[0]\"}, \"&denom\"] }},\n \"b0_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[0]\"}, \"&denom\"] }},\n \"b0_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[0]\"}, \"&denom\"] }},\n \"b0_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[0]\"}, \"&denom\"] }},\n\n \n \"b1_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[1]\", \"&TCC_MISS[1]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[1]\"]}, \n { \"$add\": [\"&TCC_HIT[1]\", \"&TCC_MISS[1]\"] }\n ] \n },\n null \n ] \n }\n },\n \"b1_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[1]\"}, \"&denom\"] } \n },\n \"b1_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[1]\"}, \"&denom\"] } \n },\n \"b1_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[1]\"}, \"&denom\"] } \n },\n \"b1_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[1]\"}, \"&denom\"] } \n },\n \"b1_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[1]\"}, \"&denom\"] }\n },\n \"b1_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[1]\"}, \"&denom\"] } \n },\n \"b1_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[1]\"}, \"&denom\"] } \n },\n \"b1_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[1]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[1]\", \"&TCC_EA_RDREQ[1]\"]}, null] } },\n \"b1_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[1]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[1]\", \"&TCC_EA_WRREQ[1]\"]}, null] } },\n \"b1_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[1]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[1]\", \"&TCC_EA_ATOMIC[1]\"]}, null]}},\n\n \"b1_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[1]\"}, \"&denom\"] }},\n \"b1_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[1]\"}, \"&denom\"] }},\n \"b1_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[1]\"}, \"&denom\"] }},\n \"b1_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[1]\"}, \"&denom\"] }},\n \"b1_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[1]\"}, \"&denom\"] }},\n \"b1_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[1]\"}, \"&denom\"] }},\n \"b1_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[1]\"}, \"&denom\"] }},\n\n\n \"b2_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[2]\", \"&TCC_MISS[2]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[2]\"]}, \n { \"$add\": [\"&TCC_HIT[2]\", \"&TCC_MISS[2]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b2_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[2]\"}, \"&denom\"] }\n },\n \"b2_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[2]\"}, \"&denom\"] } \n },\n \"b2_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[2]\"}, \"&denom\"] }\n },\n \"b2_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[2]\"}, \"&denom\"] }\n },\n \"b2_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[2]\"}, \"&denom\"] }\n },\n \"b2_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[2]\"}, \"&denom\"] }\n },\n \"b2_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[2]\"}, \"&denom\"] }\n },\n \"b2_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[2]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[2]\", \"&TCC_EA_RDREQ[2]\"]}, null] } },\n \"b2_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[2]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[2]\", \"&TCC_EA_WRREQ[2]\"]}, null] } },\n \"b2_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[2]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[2]\", \"&TCC_EA_ATOMIC[2]\"]}, null]}},\n\n \"b2_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[2]\"}, \"&denom\"] }},\n \"b2_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[2]\"}, \"&denom\"] }},\n \"b2_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[2]\"}, \"&denom\"] }},\n \"b2_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[2]\"}, \"&denom\"] }},\n \"b2_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[2]\"}, \"&denom\"] }},\n \"b2_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[2]\"}, \"&denom\"] }},\n \"b2_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[2]\"}, \"&denom\"] }},\n\n\n \n \"b3_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[3]\", \"&TCC_MISS[3]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[3]\"]}, \n { \"$add\": [\"&TCC_HIT[3]\", \"&TCC_MISS[3]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b3_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[3]\"}, \"&denom\"] } \n },\n \"b3_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[3]\"}, \"&denom\"] } \n },\n \"b3_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[3]\"}, \"&denom\"] }\n },\n \"b3_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[3]\"}, \"&denom\"] }\n },\n \"b3_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[3]\"}, \"&denom\"] }\n },\n \"b3_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[3]\"}, \"&denom\"] }\n },\n \"b3_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[3]\"}, \"&denom\"] } \n },\n \"b3_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[3]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[3]\", \"&TCC_EA_RDREQ[3]\"]}, null] } },\n \"b3_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[3]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[3]\", \"&TCC_EA_WRREQ[3]\"]}, null] } },\n \"b3_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[3]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[3]\", \"&TCC_EA_ATOMIC[3]\"]}, null]}},\n\n \"b3_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[3]\"}, \"&denom\"] }},\n \"b3_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[3]\"}, \"&denom\"] }},\n \"b3_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[3]\"}, \"&denom\"] }},\n \"b3_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[3]\"}, \"&denom\"] }},\n \"b3_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[3]\"}, \"&denom\"] }},\n \"b3_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[3]\"}, \"&denom\"] }},\n \"b3_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[3]\"}, \"&denom\"] }},\n\n\n \n \"b4_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[4]\", \"&TCC_MISS[4]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[4]\"]}, \n { \"$add\": [\"&TCC_HIT[4]\", \"&TCC_MISS[4]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b4_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[4]\"}, \"&denom\"] } \n },\n \"b4_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[4]\"}, \"&denom\"] } \n },\n \"b4_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[4]\"}, \"&denom\"] }\n },\n \"b4_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[4]\"}, \"&denom\"] } \n },\n \"b4_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[4]\"}, \"&denom\"] } \n },\n \"b4_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[4]\"}, \"&denom\"] } \n },\n \"b4_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[4]\"}, \"&denom\"] } \n },\n \"b4_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[4]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[4]\", \"&TCC_EA_RDREQ[4]\"]}, null] } },\n \"b4_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[4]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[4]\", \"&TCC_EA_WRREQ[4]\"]}, null] } },\n \"b4_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[4]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[4]\", \"&TCC_EA_ATOMIC[4]\"]}, null]}},\n\n \"b4_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[4]\"}, \"&denom\"] }},\n \"b4_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[4]\"}, \"&denom\"] }},\n \"b4_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[4]\"}, \"&denom\"] }},\n \"b4_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[4]\"}, \"&denom\"] }},\n \"b4_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[4]\"}, \"&denom\"] }},\n \"b4_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[4]\"}, \"&denom\"] }},\n \"b4_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[4]\"}, \"&denom\"] }},\n\n\n \n \"b5_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[5]\", \"&TCC_MISS[5]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[5]\"]}, \n { \"$add\": [\"&TCC_HIT[5]\", \"&TCC_MISS[5]\"] }\n ] \n },\n null \n ] \n }\n },\n \"b5_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[5]\"}, \"&denom\"] } \n },\n \"b5_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[5]\"}, \"&denom\"] } \n },\n \"b5_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[5]\"}, \"&denom\"] } \n },\n \"b5_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[5]\"}, \"&denom\"] } \n },\n \"b5_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[5]\"}, \"&denom\"] } \n },\n \"b5_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[5]\"}, \"&denom\"] } \n },\n \"b5_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[5]\"}, \"&denom\"] } \n },\n \"b5_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[5]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[5]\", \"&TCC_EA_RDREQ[5]\"]}, null] } },\n \"b5_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[5]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[5]\", \"&TCC_EA_WRREQ[5]\"]}, null] } },\n \"b5_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[5]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[5]\", \"&TCC_EA_ATOMIC[5]\"]}, null]}},\n\n \"b5_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[5]\"}, \"&denom\"] }},\n \"b5_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[5]\"}, \"&denom\"] }},\n \"b5_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[5]\"}, \"&denom\"] }},\n \"b5_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[5]\"}, \"&denom\"] }},\n \"b5_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[5]\"}, \"&denom\"] }},\n \"b5_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[5]\"}, \"&denom\"] }},\n \"b5_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[5]\"}, \"&denom\"] }},\n\n\n \n \"b6_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[6]\", \"&TCC_MISS[6]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[6]\"]}, \n { \"$add\": [\"&TCC_HIT[6]\", \"&TCC_MISS[6]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b6_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[6]\"}, \"&denom\"] } \n },\n \"b6_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[6]\"}, \"&denom\"] } \n },\n \"b6_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[6]\"}, \"&denom\"] } \n },\n \"b6_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[6]\"}, \"&denom\"] } \n },\n \"b6_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[6]\"}, \"&denom\"] } \n },\n \"b6_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[6]\"}, \"&denom\"] }\n },\n \"b6_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[6]\"}, \"&denom\"] } \n },\n \"b6_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[6]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[6]\", \"&TCC_EA_RDREQ[6]\"]}, null] } },\n \"b6_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[6]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[6]\", \"&TCC_EA_WRREQ[6]\"]}, null] } },\n \"b6_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[6]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[6]\", \"&TCC_EA_ATOMIC[6]\"]}, null]}},\n\n \"b6_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[6]\"}, \"&denom\"] }},\n \"b6_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[6]\"}, \"&denom\"] }},\n \"b6_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[6]\"}, \"&denom\"] }},\n \"b6_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[6]\"}, \"&denom\"] }},\n \"b6_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[6]\"}, \"&denom\"] }},\n \"b6_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[6]\"}, \"&denom\"] }},\n \"b6_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[6]\"}, \"&denom\"] }},\n\n\n \n \"b7_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[7]\", \"&TCC_MISS[7]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[7]\"]}, \n { \"$add\": [\"&TCC_HIT[7]\", \"&TCC_MISS[7]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b7_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[7]\"}, \"&denom\"] } \n },\n \"b7_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[7]\"}, \"&denom\"] } \n },\n \"b7_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[7]\"}, \"&denom\"] } \n },\n \"b7_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[7]\"}, \"&denom\"] } \n },\n \"b7_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[7]\"}, \"&denom\"] } \n },\n \"b7_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[7]\"}, \"&denom\"] }\n },\n \"b7_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[7]\"}, \"&denom\"] } \n },\n \"b7_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[7]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[7]\", \"&TCC_EA_RDREQ[7]\"]}, null] } },\n \"b7_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[7]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[7]\", \"&TCC_EA_WRREQ[7]\"]}, null] } },\n \"b7_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[7]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[7]\", \"&TCC_EA_ATOMIC[7]\"]}, null]}},\n\n \"b7_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[7]\"}, \"&denom\"] }},\n \"b7_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[7]\"}, \"&denom\"] }},\n \"b7_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[7]\"}, \"&denom\"] }},\n \"b7_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[7]\"}, \"&denom\"] }},\n \"b7_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[7]\"}, \"&denom\"] }},\n \"b7_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[7]\"}, \"&denom\"] }},\n \"b7_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[7]\"}, \"&denom\"] }},\n\n\n \n \"b8_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[8]\", \"&TCC_MISS[8]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[8]\"]}, \n { \"$add\": [\"&TCC_HIT[8]\", \"&TCC_MISS[8]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b8_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[8]\"}, \"&denom\"] } \n },\n \"b8_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[8]\"}, \"&denom\"] } \n },\n \"b8_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[8]\"}, \"&denom\"] } \n },\n \"b8_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[8]\"}, \"&denom\"] } \n },\n \"b8_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[8]\"}, \"&denom\"] } \n },\n \"b8_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[8]\"}, \"&denom\"] } \n },\n \"b8_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[8]\"}, \"&denom\"] } \n },\n \"b8_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[8]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[8]\", \"&TCC_EA_RDREQ[8]\"]}, null] } },\n \"b8_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[8]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[8]\", \"&TCC_EA_WRREQ[8]\"]}, null] } },\n \"b8_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[8]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[8]\", \"&TCC_EA_ATOMIC[8]\"]}, null]}},\n\n \"b8_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[8]\"}, \"&denom\"] }},\n \"b8_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[8]\"}, \"&denom\"] }},\n \"b8_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[8]\"}, \"&denom\"] }},\n \"b8_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[8]\"}, \"&denom\"] }},\n \"b8_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[8]\"}, \"&denom\"] }},\n \"b8_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[8]\"}, \"&denom\"] }},\n \"b8_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[8]\"}, \"&denom\"] }},\n\n\n \n \"b9_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[9]\", \"&TCC_MISS[9]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[9]\"]}, \n { \"$add\": [\"&TCC_HIT[9]\", \"&TCC_MISS[9]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b9_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[9]\"}, \"&denom\"] } \n },\n \"b9_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[9]\"}, \"&denom\"] } \n },\n \"b9_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[9]\"}, \"&denom\"] } \n },\n \"b9_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[9]\"}, \"&denom\"] } \n },\n \"b9_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[9]\"}, \"&denom\"] } \n },\n \"b9_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[9]\"}, \"&denom\"] } \n },\n \"b9_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[9]\"}, \"&denom\"] } \n },\n \"b9_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[9]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[9]\", \"&TCC_EA_RDREQ[9]\"]}, null] } },\n \"b9_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[9]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[9]\", \"&TCC_EA_WRREQ[9]\"]}, null] } },\n \"b9_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[9]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[9]\", \"&TCC_EA_ATOMIC[9]\"]}, null]}},\n\n \"b9_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[9]\"}, \"&denom\"] }},\n \"b9_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[9]\"}, \"&denom\"] }},\n \"b9_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[9]\"}, \"&denom\"] }},\n \"b9_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[9]\"}, \"&denom\"] }},\n \"b9_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[9]\"}, \"&denom\"] }},\n \"b9_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[9]\"}, \"&denom\"] }},\n \"b9_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[9]\"}, \"&denom\"] }},\n\n\n \n \"b10_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[10]\", \"&TCC_MISS[10]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[10]\"]}, \n { \"$add\": [\"&TCC_HIT[10]\", \"&TCC_MISS[10]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b10_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[10]\"}, \"&denom\"] } \n },\n \"b10_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[10]\"}, \"&denom\"] } \n },\n \"b10_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[10]\"}, \"&denom\"] } \n },\n \"b10_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[10]\"}, \"&denom\"] } \n },\n \"b10_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[10]\"}, \"&denom\"] } \n },\n \"b10_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[10]\"}, \"&denom\"] } \n },\n \"b10_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[10]\"}, \"&denom\"] } \n },\n \"b10_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[10]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[10]\", \"&TCC_EA_RDREQ[10]\"]}, null] } },\n \"b10_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[10]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[10]\", \"&TCC_EA_WRREQ[10]\"]}, null] } },\n \"b10_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[10]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[10]\", \"&TCC_EA_ATOMIC[10]\"]}, null]}},\n\n \"b10_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[10]\"}, \"&denom\"] }},\n \"b10_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[10]\"}, \"&denom\"] }},\n \"b10_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[10]\"}, \"&denom\"] }},\n \"b10_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[10]\"}, \"&denom\"] }},\n \"b10_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[10]\"}, \"&denom\"] }},\n \"b10_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[10]\"}, \"&denom\"] }},\n \"b10_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[10]\"}, \"&denom\"] }},\n\n\n \n \"b11_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[11]\", \"&TCC_MISS[11]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[11]\"]}, \n { \"$add\": [\"&TCC_HIT[11]\", \"&TCC_MISS[11]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b11_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[11]\"}, \"&denom\"] } \n },\n \"b11_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[11]\"}, \"&denom\"] } \n },\n \"b11_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[11]\"}, \"&denom\"] } \n },\n \"b11_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[11]\"}, \"&denom\"] } \n },\n \"b11_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[11]\"}, \"&denom\"] } \n },\n \"b11_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[11]\"}, \"&denom\"] } \n },\n \"b11_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[11]\"}, \"&denom\"] } \n },\n \"b11_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[11]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[11]\", \"&TCC_EA_RDREQ[11]\"]}, null] } },\n \"b11_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[11]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[11]\", \"&TCC_EA_WRREQ[11]\"]}, null] } },\n \"b11_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[11]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[11]\", \"&TCC_EA_ATOMIC[11]\"]}, null]}},\n\n \"b11_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[11]\"}, \"&denom\"] }},\n \"b11_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[11]\"}, \"&denom\"] }},\n \"b11_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[11]\"}, \"&denom\"] }},\n \"b11_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[11]\"}, \"&denom\"] }},\n \"b11_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[11]\"}, \"&denom\"] }},\n \"b11_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[11]\"}, \"&denom\"] }},\n \"b11_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[11]\"}, \"&denom\"] }},\n\n\n \n \"b12_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[12]\", \"&TCC_MISS[12]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[12]\"]}, \n { \"$add\": [\"&TCC_HIT[12]\", \"&TCC_MISS[12]\"] }\n ] \n },\n null \n ] \n }\n },\n \"b12_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[12]\"}, \"&denom\"] } \n },\n \"b12_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[12]\"}, \"&denom\"] } \n },\n \"b12_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[12]\"}, \"&denom\"] } \n },\n \"b12_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[12]\"}, \"&denom\"] } \n },\n \"b12_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[12]\"}, \"&denom\"] } \n },\n \"b12_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[12]\"}, \"&denom\"] } \n },\n \"b12_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[12]\"}, \"&denom\"] } \n },\n \"b12_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[12]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[12]\", \"&TCC_EA_RDREQ[12]\"]}, null] } },\n \"b12_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[12]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[12]\", \"&TCC_EA_WRREQ[12]\"]}, null] } },\n \"b12_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[12]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[12]\", \"&TCC_EA_ATOMIC[12]\"]}, null]}},\n\n \"b12_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[12]\"}, \"&denom\"] }},\n \"b12_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[12]\"}, \"&denom\"] }},\n \"b12_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[12]\"}, \"&denom\"] }},\n \"b12_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[12]\"}, \"&denom\"] }},\n \"b12_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[12]\"}, \"&denom\"] }},\n \"b12_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[12]\"}, \"&denom\"] }},\n \"b12_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[12]\"}, \"&denom\"] }},\n\n\n \n \"b13_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[13]\", \"&TCC_MISS[13]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[13]\"]}, \n { \"$add\": [\"&TCC_HIT[13]\", \"&TCC_MISS[13]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b13_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[13]\"}, \"&denom\"] } \n },\n \"b13_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[13]\"}, \"&denom\"] } \n },\n \"b13_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[13]\"}, \"&denom\"] } \n },\n \"b13_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[13]\"}, \"&denom\"] } \n },\n \"b13_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[13]\"}, \"&denom\"] } \n },\n \"b13_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[13]\"}, \"&denom\"] }\n },\n \"b13_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[13]\"}, \"&denom\"] } \n },\n \"b13_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[13]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[13]\", \"&TCC_EA_RDREQ[13]\"]}, null] } },\n \"b13_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[13]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[13]\", \"&TCC_EA_WRREQ[13]\"]}, null] } },\n \"b13_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[13]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[13]\", \"&TCC_EA_ATOMIC[13]\"]}, null]}},\n\n \"b13_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[13]\"}, \"&denom\"] }},\n \"b13_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[13]\"}, \"&denom\"] }},\n \"b13_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[13]\"}, \"&denom\"] }},\n \"b13_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[13]\"}, \"&denom\"] }},\n \"b13_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[13]\"}, \"&denom\"] }},\n \"b13_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[13]\"}, \"&denom\"] }},\n \"b13_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[13]\"}, \"&denom\"] }},\n\n\n \n \"b14_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[14]\", \"&TCC_MISS[14]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[14]\"]}, \n { \"$add\": [\"&TCC_HIT[14]\", \"&TCC_MISS[14]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b14_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[14]\"}, \"&denom\"] } \n },\n \"b14_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[14]\"}, \"&denom\"] } \n },\n \"b14_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[14]\"}, \"&denom\"] } \n },\n \"b14_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[14]\"}, \"&denom\"] } \n },\n \"b14_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[14]\"}, \"&denom\"] } \n },\n \"b14_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[14]\"}, \"&denom\"] } \n },\n \"b14_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[14]\"}, \"&denom\"] } \n },\n \"b14_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[14]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[14]\", \"&TCC_EA_RDREQ[14]\"]}, null] } },\n \"b14_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[14]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[14]\", \"&TCC_EA_WRREQ[14]\"]}, null] } },\n \"b14_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[14]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[14]\", \"&TCC_EA_ATOMIC[14]\"]}, null]}},\n\n \"b14_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[14]\"}, \"&denom\"] }},\n \"b14_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[14]\"}, \"&denom\"] }},\n \"b14_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[14]\"}, \"&denom\"] }},\n \"b14_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[14]\"}, \"&denom\"] }},\n \"b14_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[14]\"}, \"&denom\"] }},\n \"b14_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[14]\"}, \"&denom\"] }},\n \"b14_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[14]\"}, \"&denom\"] }},\n\n\n \n \"b15_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[15]\", \"&TCC_MISS[15]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[15]\"]}, \n { \"$add\": [\"&TCC_HIT[15]\", \"&TCC_MISS[15]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b15_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[15]\"}, \"&denom\"] } \n },\n \"b15_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[15]\"}, \"&denom\"] } \n },\n \"b15_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[15]\"}, \"&denom\"] } \n },\n \"b15_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[15]\"}, \"&denom\"] } \n },\n \"b15_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[15]\"}, \"&denom\"] } \n },\n \"b15_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[15]\"}, \"&denom\"] } \n },\n \"b15_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[15]\"}, \"&denom\"] }\n },\n \"b15_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[15]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[15]\", \"&TCC_EA_RDREQ[15]\"]}, null] } },\n \"b15_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[15]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[15]\", \"&TCC_EA_WRREQ[15]\"]}, null] } },\n \"b15_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[15]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[15]\", \"&TCC_EA_ATOMIC[15]\"]}, null]}},\n\n \"b15_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[15]\"}, \"&denom\"] }},\n \"b15_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[15]\"}, \"&denom\"] }},\n \"b15_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[15]\"}, \"&denom\"] }},\n \"b15_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[15]\"}, \"&denom\"] }},\n \"b15_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[15]\"}, \"&denom\"] }},\n \"b15_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[15]\"}, \"&denom\"] }},\n \"b15_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[15]\"}, \"&denom\"] }}\n \n }},\n {\"$set\": {\n \"array\": [\n {\n \"Channel\": \"0\",\n \"Hit Rate\": \"&b0_hitRate\",\n \"Req\": \"&b0_req\",\n \"Read Req\": \"&b0_readReq\",\n \"Write Req\": \"&b0_writeReq\",\n \"AtomicReq\": \"&b0_atomicReq\",\n \"EA Read Req\": \"&b0_eaReadReq\",\n \"EA Write Req\": \"&b0_eaWriteReq\",\n \"EA AtomicReq\": \"&b0_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b0_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b0_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b0_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b0_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b0_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b0_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b0_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b0_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b0_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b0_ea_write_stall_too_many\"\n },\n {\n \"Channel\": \"1\",\n \"Hit Rate\": \"&b1_hitRate\",\n \"Req\": \"&b1_req\",\n \"Read Req\": \"&b1_readReq\",\n \"Write Req\": \"&b1_writeReq\",\n \"AtomicReq\": \"&b1_atomicReq\",\n \"EA Read Req\": \"&b1_eaReadReq\",\n \"EA Write Req\": \"&b1_eaWriteReq\",\n \"EA AtomicReq\": \"&b1_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b1_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b1_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b1_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b1_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b1_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b1_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b1_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b1_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b1_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b1_ea_write_stall_too_many\"\n },\n {\n \"Channel\": \"2\",\n \"Hit Rate\": \"&b2_hitRate\",\n \"Req\": \"&b2_req\",\n \"Read Req\": \"&b2_readReq\",\n \"Write Req\": \"&b2_writeReq\",\n \"AtomicReq\": \"&b2_atomicReq\",\n \"EA Read Req\": \"&b2_eaReadReq\",\n \"EA Write Req\": \"&b2_eaWriteReq\",\n \"EA AtomicReq\": \"&b2_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b2_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b2_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b2_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b2_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b2_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b2_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b2_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b2_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b2_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b2_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"3\",\n \"Hit Rate\": \"&b3_hitRate\",\n \"Req\": \"&b3_req\",\n \"Read Req\": \"&b3_readReq\",\n \"Write Req\": \"&b3_writeReq\",\n \"AtomicReq\": \"&b3_atomicReq\",\n \"EA Read Req\": \"&b3_eaReadReq\",\n \"EA Write Req\": \"&b3_eaWriteReq\",\n \"EA AtomicReq\": \"&b3_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b3_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b3_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b3_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b3_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b3_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b3_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b3_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b3_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b3_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b3_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"4\",\n \"Hit Rate\": \"&b4_hitRate\",\n \"Req\": \"&b4_req\",\n \"Read Req\": \"&b4_readReq\",\n \"Write Req\": \"&b4_writeReq\",\n \"AtomicReq\": \"&b4_atomicReq\",\n \"EA Read Req\": \"&b4_eaReadReq\",\n \"EA Write Req\": \"&b4_eaWriteReq\",\n \"EA AtomicReq\": \"&b4_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b4_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b4_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b4_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b4_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b4_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b4_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b4_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b4_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b4_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b4_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"5\",\n \"Hit Rate\": \"&b5_hitRate\",\n \"Req\": \"&b5_req\",\n \"Read Req\": \"&b5_readReq\",\n \"Write Req\": \"&b5_writeReq\",\n \"AtomicReq\": \"&b5_atomicReq\",\n \"EA Read Req\": \"&b5_eaReadReq\",\n \"EA Write Req\": \"&b5_eaWriteReq\",\n \"EA AtomicReq\": \"&b5_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b5_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b5_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b5_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b5_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b5_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b5_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b5_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b5_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b5_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b5_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"6\",\n \"Hit Rate\": \"&b6_hitRate\",\n \"Req\": \"&b6_req\",\n \"Read Req\": \"&b6_readReq\",\n \"Write Req\": \"&b6_writeReq\",\n \"AtomicReq\": \"&b6_atomicReq\",\n \"EA Read Req\": \"&b6_eaReadReq\",\n \"EA Write Req\": \"&b6_eaWriteReq\",\n \"EA AtomicReq\": \"&b6_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b6_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b6_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b6_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b6_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b6_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b6_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b6_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b6_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b6_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b6_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"7\",\n \"Hit Rate\": \"&b7_hitRate\",\n \"Req\": \"&b7_req\",\n \"Read Req\": \"&b7_readReq\",\n \"Write Req\": \"&b7_writeReq\",\n \"AtomicReq\": \"&b7_atomicReq\",\n \"EA Read Req\": \"&b7_eaReadReq\",\n \"EA Write Req\": \"&b7_eaWriteReq\",\n \"EA AtomicReq\": \"&b7_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b7_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b7_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b7_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b7_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b7_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b7_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b7_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b7_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b7_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b7_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"8\",\n \"Hit Rate\": \"&b8_hitRate\",\n \"Req\": \"&b8_req\",\n \"Read Req\": \"&b8_readReq\",\n \"Write Req\": \"&b8_writeReq\",\n \"AtomicReq\": \"&b8_atomicReq\",\n \"EA Read Req\": \"&b8_eaReadReq\",\n \"EA Write Req\": \"&b8_eaWriteReq\",\n \"EA AtomicReq\": \"&b8_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b8_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b8_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b8_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b8_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b8_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b8_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b8_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b8_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b8_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b8_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"9\",\n \"Hit Rate\": \"&b9_hitRate\",\n \"Req\": \"&b9_req\",\n \"Read Req\": \"&b9_readReq\",\n \"Write Req\": \"&b9_writeReq\",\n \"AtomicReq\": \"&b9_atomicReq\",\n \"EA Read Req\": \"&b9_eaReadReq\",\n \"EA Write Req\": \"&b9_eaWriteReq\",\n \"EA AtomicReq\": \"&b9_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b9_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b9_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b9_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b9_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b9_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b9_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b9_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b9_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b9_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b9_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"10\",\n \"Hit Rate\": \"&b10_hitRate\",\n \"Req\": \"&b10_req\",\n \"Read Req\": \"&b10_readReq\",\n \"Write Req\": \"&b10_writeReq\",\n \"AtomicReq\": \"&b10_atomicReq\",\n \"EA Read Req\": \"&b10_eaReadReq\",\n \"EA Write Req\": \"&b10_eaWriteReq\",\n \"EA AtomicReq\": \"&b10_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b10_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b10_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b10_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b10_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b10_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b10_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b10_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b10_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b10_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b10_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"11\",\n \"Hit Rate\": \"&b11_hitRate\",\n \"Req\": \"&b11_req\",\n \"Read Req\": \"&b11_readReq\",\n \"Write Req\": \"&b11_writeReq\",\n \"AtomicReq\": \"&b11_atomicReq\",\n \"EA Read Req\": \"&b11_eaReadReq\",\n \"EA Write Req\": \"&b11_eaWriteReq\",\n \"EA AtomicReq\": \"&b11_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b11_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b11_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b11_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b11_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b11_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b11_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b11_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b11_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b11_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b11_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"12\",\n \"Hit Rate\": \"&b12_hitRate\",\n \"Req\": \"&b12_req\",\n \"Read Req\": \"&b12_readReq\",\n \"Write Req\": \"&b12_writeReq\",\n \"AtomicReq\": \"&b12_atomicReq\",\n \"EA Read Req\": \"&b12_eaReadReq\",\n \"EA Write Req\": \"&b12_eaWriteReq\",\n \"EA AtomicReq\": \"&b12_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b12_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b12_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b12_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b12_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b12_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b12_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b12_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b12_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b12_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b12_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"13\",\n \"Hit Rate\": \"&b13_hitRate\",\n \"Req\": \"&b13_req\",\n \"Read Req\": \"&b13_readReq\",\n \"Write Req\": \"&b13_writeReq\",\n \"AtomicReq\": \"&b13_atomicReq\",\n \"EA Read Req\": \"&b13_eaReadReq\",\n \"EA Write Req\": \"&b13_eaWriteReq\",\n \"EA AtomicReq\": \"&b13_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b13_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b13_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b13_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b13_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b13_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b13_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b13_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b13_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b13_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b13_ea_write_stall_too_many\"\n\n\n },\n {\n \"Channel\": \"14\",\n \"Hit Rate\": \"&b14_hitRate\",\n \"Req\": \"&b14_req\",\n \"Read Req\": \"&b14_readReq\",\n \"Write Req\": \"&b14_writeReq\",\n \"AtomicReq\": \"&b14_atomicReq\",\n \"EA Read Req\": \"&b14_eaReadReq\",\n \"EA Write Req\": \"&b14_eaWriteReq\",\n \"EA AtomicReq\": \"&b14_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b14_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b14_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b14_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b14_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b14_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b14_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b14_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b14_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b14_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b14_ea_write_stall_too_many\"\n\n\n },\n {\n \"Channel\": \"15\",\n \"Hit Rate\": \"&b15_hitRate\",\n \"Req\": \"&b15_req\",\n \"Read Req\": \"&b15_readReq\",\n \"Write Req\": \"&b15_writeReq\",\n \"AtomicReq\": \"&b15_atomicReq\",\n \"EA Read Req\": \"&b15_eaReadReq\",\n \"EA Write Req\": \"&b15_eaWriteReq\",\n \"EA AtomicReq\": \"&b15_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b15_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b15_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b15_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b15_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b15_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b15_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b15_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b15_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b15_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b15_ea_write_stall_too_many\"\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"$array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"$array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "L2 - EA Read Latency (Channel 0 - 15) (Cycles)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:341",
+ "Col": 9,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Lat - cycles",
+ "Selected": true
+ }
+ ],
+ "datasource": {},
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 73
+ },
+ "id": 70,
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "Zzw1yR27k"
+ },
+ "rawQuery": true,
+ "refId": "A",
+ "target": "${Workload1}.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n\n {\"$addFields\": {\n \"denom\": {\n \"$switch\" : {\n \"branches\": [\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Wave\"]} ,\n \"then\": \"&SQ_WAVES\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Cycle\"]} ,\n \"then\": \"&GRBM_GUI_ACTIVE\"\n },\n {\n \"case\": { \"$eq\": [ $normUnit, \"per Sec\"]} ,\n \"then\": {\"$divide\":[{\"$subtract\": [\"&EndNs\", \"&BeginNs\" ]}, 1000000000]}\n }\n ],\n \"default\": 1\n } \n } \n }},\n\n {\"$group\": {\n \"_id\": null,\n \"b16_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[16]\", \"&TCC_MISS[16]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[16]\"]}, \n { \"$add\": [\"&TCC_HIT[16]\", \"&TCC_MISS[16]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b16_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[16]\"}, \"&denom\"] } \n },\n \"b16_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[16]\"}, \"&denom\"] } \n },\n \"b16_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[16]\"}, \"&denom\"] } \n },\n \"b16_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[16]\"}, \"&denom\"] } \n },\n \"b16_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[16]\"}, \"&denom\"] }\n },\n \"b16_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[16]\"}, \"&denom\"] } \n },\n \"b16_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[16]\"}, \"&denom\"] } \n },\n\n \"b16_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[16]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[16]\", \"&TCC_EA_RDREQ[16]\"]}, null] } },\n \"b16_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[16]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[16]\", \"&TCC_EA_WRREQ[16]\"]}, null] } },\n \"b16_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[16]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[16]\", \"&TCC_EA_ATOMIC[16]\"]}, null]}},\n \"b16_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[16]\"}, \"&denom\"] }},\n \"b16_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[16]\"}, \"&denom\"] }},\n \"b16_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[16]\"}, \"&denom\"] }},\n \"b16_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[16]\"}, \"&denom\"] }},\n \"b16_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[16]\"}, \"&denom\"] }},\n \"b16_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[16]\"}, \"&denom\"] }},\n \"b16_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[16]\"}, \"&denom\"] }},\n\n \n \"b17_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[17]\", \"&TCC_MISS[17]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[17]\"]}, \n { \"$add\": [\"&TCC_HIT[17]\", \"&TCC_MISS[17]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b17_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[17]\"}, \"&denom\"] } \n },\n \"b17_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[17]\"}, \"&denom\"] } \n },\n \"b17_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[17]\"}, \"&denom\"] } \n },\n \"b17_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[17]\"}, \"&denom\"] } \n },\n \"b17_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[17]\"}, \"&denom\"] }\n },\n \"b17_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[17]\"}, \"&denom\"] } \n },\n \"b17_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[17]\"}, \"&denom\"] } \n },\n \"b17_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[17]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[17]\", \"&TCC_EA_RDREQ[17]\"]}, null] } },\n \"b17_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[17]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[17]\", \"&TCC_EA_WRREQ[17]\"]}, null] } },\n \"b17_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[17]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[17]\", \"&TCC_EA_ATOMIC[17]\"]}, null]}},\n \"b17_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[17]\"}, \"&denom\"] }},\n \"b17_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[17]\"}, \"&denom\"] }},\n \"b17_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[17]\"}, \"&denom\"] }},\n \"b17_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[17]\"}, \"&denom\"] }},\n \"b17_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[17]\"}, \"&denom\"] }},\n \"b17_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[17]\"}, \"&denom\"] }},\n \"b17_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[17]\"}, \"&denom\"] }},\n\n \n \"b18_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[18]\", \"&TCC_MISS[18]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[18]\"]}, \n { \"$add\": [\"&TCC_HIT[18]\", \"&TCC_MISS[18]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b18_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[18]\"}, \"&denom\"] }\n },\n \"b18_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[18]\"}, \"&denom\"] } \n },\n \"b18_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[18]\"}, \"&denom\"] }\n },\n \"b18_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[18]\"}, \"&denom\"] }\n },\n \"b18_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[18]\"}, \"&denom\"] }\n },\n \"b18_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[18]\"}, \"&denom\"] }\n },\n \"b18_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[18]\"}, \"&denom\"] }\n },\n \"b18_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[18]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[18]\", \"&TCC_EA_RDREQ[18]\"]}, null] } },\n \"b18_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[18]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[18]\", \"&TCC_EA_WRREQ[18]\"]}, null] } },\n \"b18_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[18]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[18]\", \"&TCC_EA_ATOMIC[18]\"]}, null]}},\n \"b18_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[18]\"}, \"&denom\"] }},\n \"b18_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[18]\"}, \"&denom\"] }},\n \"b18_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[18]\"}, \"&denom\"] }},\n \"b18_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[18]\"}, \"&denom\"] }},\n \"b18_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[18]\"}, \"&denom\"] }},\n \"b18_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[18]\"}, \"&denom\"] }},\n \"b18_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[18]\"}, \"&denom\"] }},\n\n \n \"b19_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[19]\", \"&TCC_MISS[19]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[19]\"]}, \n { \"$add\": [\"&TCC_HIT[19]\", \"&TCC_MISS[19]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b19_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[19]\"}, \"&denom\"] } \n },\n \"b19_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[19]\"}, \"&denom\"] } \n },\n \"b19_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[19]\"}, \"&denom\"] }\n },\n \"b19_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[19]\"}, \"&denom\"] }\n },\n \"b19_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[19]\"}, \"&denom\"] }\n },\n \"b19_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[19]\"}, \"&denom\"] }\n },\n \"b19_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[19]\"}, \"&denom\"] } \n },\n \"b19_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[19]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[19]\", \"&TCC_EA_RDREQ[19]\"]}, null] } },\n \"b19_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[19]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[19]\", \"&TCC_EA_WRREQ[19]\"]}, null] } },\n \"b19_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[19]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[19]\", \"&TCC_EA_ATOMIC[19]\"]}, null]}},\n \"b19_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[19]\"}, \"&denom\"] }},\n \"b19_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[19]\"}, \"&denom\"] }},\n \"b19_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[19]\"}, \"&denom\"] }},\n \"b19_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[19]\"}, \"&denom\"] }},\n \"b19_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[19]\"}, \"&denom\"] }},\n \"b19_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[19]\"}, \"&denom\"] }},\n \"b19_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[19]\"}, \"&denom\"] }},\n\n \n \"b20_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[20]\", \"&TCC_MISS[20]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[20]\"]}, \n { \"$add\": [\"&TCC_HIT[20]\", \"&TCC_MISS[20]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b20_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[20]\"}, \"&denom\"] } \n },\n \"b20_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[20]\"}, \"&denom\"] } \n },\n \"b20_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[20]\"}, \"&denom\"] }\n },\n \"b20_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[20]\"}, \"&denom\"] } \n },\n \"b20_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[20]\"}, \"&denom\"] } \n },\n \"b20_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[20]\"}, \"&denom\"] } \n },\n \"b20_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[20]\"}, \"&denom\"] } \n },\n \"b20_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[20]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[20]\", \"&TCC_EA_RDREQ[20]\"]}, null] } },\n \"b20_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[20]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[20]\", \"&TCC_EA_WRREQ[20]\"]}, null] } },\n \"b20_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[20]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[20]\", \"&TCC_EA_ATOMIC[20]\"]}, null]}},\n \"b20_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[20]\"}, \"&denom\"] }},\n \"b20_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[20]\"}, \"&denom\"] }},\n \"b20_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[20]\"}, \"&denom\"] }},\n \"b20_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[20]\"}, \"&denom\"] }},\n \"b20_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[20]\"}, \"&denom\"] }},\n \"b20_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[20]\"}, \"&denom\"] }},\n \"b20_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[20]\"}, \"&denom\"] }},\n\n \n\n \"b21_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[21]\", \"&TCC_MISS[21]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[21]\"]}, \n { \"$add\": [\"&TCC_HIT[21]\", \"&TCC_MISS[21]\"] }\n ] \n },\n null \n ] \n }\n },\n \"b21_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[21]\"}, \"&denom\"] } \n },\n \"b21_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[21]\"}, \"&denom\"] } \n },\n \"b21_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[21]\"}, \"&denom\"] } \n },\n \"b21_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[21]\"}, \"&denom\"] } \n },\n \"b21_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[21]\"}, \"&denom\"] } \n },\n \"b21_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[21]\"}, \"&denom\"] } \n },\n \"b21_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[21]\"}, \"&denom\"] } \n },\n \"b21_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[21]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[21]\", \"&TCC_EA_RDREQ[21]\"]}, null] } },\n \"b21_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[21]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[21]\", \"&TCC_EA_WRREQ[21]\"]}, null] } },\n \"b21_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[21]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[21]\", \"&TCC_EA_ATOMIC[21]\"]}, null]}},\n \"b21_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[21]\"}, \"&denom\"] }},\n \"b21_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[21]\"}, \"&denom\"] }},\n \"b21_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[21]\"}, \"&denom\"] }},\n \"b21_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[21]\"}, \"&denom\"] }},\n \"b21_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[21]\"}, \"&denom\"] }},\n \"b21_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[21]\"}, \"&denom\"] }},\n \"b21_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[21]\"}, \"&denom\"] }},\n\n \n\n \"b22_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[22]\", \"&TCC_MISS[22]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[22]\"]}, \n { \"$add\": [\"&TCC_HIT[22]\", \"&TCC_MISS[22]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b22_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[22]\"}, \"&denom\"] } \n },\n \"b22_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[22]\"}, \"&denom\"] } \n },\n \"b22_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[22]\"}, \"&denom\"] } \n },\n \"b22_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[22]\"}, \"&denom\"] } \n },\n \"b22_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[22]\"}, \"&denom\"] } \n },\n \"b22_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[22]\"}, \"&denom\"] }\n },\n \"b22_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[22]\"}, \"&denom\"] } \n },\n \"b22_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[22]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[22]\", \"&TCC_EA_RDREQ[22]\"]}, null] } },\n \"b22_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[22]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[22]\", \"&TCC_EA_WRREQ[22]\"]}, null] } },\n \"b22_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[22]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[22]\", \"&TCC_EA_ATOMIC[22]\"]}, null]}},\n \"b22_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[22]\"}, \"&denom\"] }},\n \"b22_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[22]\"}, \"&denom\"] }},\n \"b22_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[22]\"}, \"&denom\"] }},\n \"b22_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[22]\"}, \"&denom\"] }},\n \"b22_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[22]\"}, \"&denom\"] }},\n \"b22_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[22]\"}, \"&denom\"] }},\n \"b22_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[22]\"}, \"&denom\"] }},\n\n \n\n \"b23_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[23]\", \"&TCC_MISS[23]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[23]\"]}, \n { \"$add\": [\"&TCC_HIT[23]\", \"&TCC_MISS[23]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b23_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[23]\"}, \"&denom\"] } \n },\n \"b23_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[23]\"}, \"&denom\"] } \n },\n \"b23_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[23]\"}, \"&denom\"] } \n },\n \"b23_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[23]\"}, \"&denom\"] } \n },\n \"b23_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[23]\"}, \"&denom\"] } \n },\n \"b23_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[23]\"}, \"&denom\"] }\n },\n \"b23_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[23]\"}, \"&denom\"] } \n },\n \"b23_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[23]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[23]\", \"&TCC_EA_RDREQ[23]\"]}, null] } },\n \"b23_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[23]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[23]\", \"&TCC_EA_WRREQ[23]\"]}, null] } },\n \"b23_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[23]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[23]\", \"&TCC_EA_ATOMIC[23]\"]}, null]}},\n \"b23_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[23]\"}, \"&denom\"] }},\n \"b23_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[23]\"}, \"&denom\"] }},\n \"b23_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[23]\"}, \"&denom\"] }},\n \"b23_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[23]\"}, \"&denom\"] }},\n \"b23_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[23]\"}, \"&denom\"] }},\n \"b23_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[23]\"}, \"&denom\"] }},\n \"b23_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[23]\"}, \"&denom\"] }},\n\n \n \"b24_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[24]\", \"&TCC_MISS[24]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[24]\"]}, \n { \"$add\": [\"&TCC_HIT[24]\", \"&TCC_MISS[24]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b24_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[24]\"}, \"&denom\"] } \n },\n \"b24_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[24]\"}, \"&denom\"] } \n },\n \"b24_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[24]\"}, \"&denom\"] } \n },\n \"b24_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[24]\"}, \"&denom\"] } \n },\n \"b24_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[24]\"}, \"&denom\"] } \n },\n \"b24_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[24]\"}, \"&denom\"] } \n },\n \"b24_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[24]\"}, \"&denom\"] } \n },\n \"b24_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[24]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[24]\", \"&TCC_EA_RDREQ[24]\"]}, null] } },\n \"b24_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[24]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[24]\", \"&TCC_EA_WRREQ[24]\"]}, null] } },\n \"b24_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[24]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[24]\", \"&TCC_EA_ATOMIC[24]\"]}, null]}},\n \"b24_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[24]\"}, \"&denom\"] }},\n \"b24_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[24]\"}, \"&denom\"] }},\n \"b24_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[24]\"}, \"&denom\"] }},\n \"b24_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[24]\"}, \"&denom\"] }},\n \"b24_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[24]\"}, \"&denom\"] }},\n \"b24_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[24]\"}, \"&denom\"] }},\n \"b24_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[24]\"}, \"&denom\"] }},\n\n \n \"b25_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[25]\", \"&TCC_MISS[25]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[25]\"]}, \n { \"$add\": [\"&TCC_HIT[25]\", \"&TCC_MISS[25]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b25_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[25]\"}, \"&denom\"] } \n },\n \"b25_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[25]\"}, \"&denom\"] } \n },\n \"b25_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[25]\"}, \"&denom\"] } \n },\n \"b25_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[25]\"}, \"&denom\"] } \n },\n \"b25_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[25]\"}, \"&denom\"] } \n },\n \"b25_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[25]\"}, \"&denom\"] } \n },\n \"b25_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[25]\"}, \"&denom\"] } \n },\n \"b25_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[25]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[25]\", \"&TCC_EA_RDREQ[25]\"]}, null] } },\n \"b25_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[25]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[25]\", \"&TCC_EA_WRREQ[25]\"]}, null] } },\n \"b25_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[25]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[25]\", \"&TCC_EA_ATOMIC[25]\"]}, null]}},\n \"b25_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[25]\"}, \"&denom\"] }},\n \"b25_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[25]\"}, \"&denom\"] }},\n \"b25_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[25]\"}, \"&denom\"] }},\n \"b25_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[25]\"}, \"&denom\"] }},\n \"b25_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[25]\"}, \"&denom\"] }},\n \"b25_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[25]\"}, \"&denom\"] }},\n \"b25_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[25]\"}, \"&denom\"] }},\n\n \n \"b26_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[26]\", \"&TCC_MISS[26]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[26]\"]}, \n { \"$add\": [\"&TCC_HIT[26]\", \"&TCC_MISS[26]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b26_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[26]\"}, \"&denom\"] } \n },\n \"b26_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[26]\"}, \"&denom\"] } \n },\n \"b26_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[26]\"}, \"&denom\"] } \n },\n \"b26_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[26]\"}, \"&denom\"] } \n },\n \"b26_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[26]\"}, \"&denom\"] } \n },\n \"b26_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[26]\"}, \"&denom\"] } \n },\n \"b26_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[26]\"}, \"&denom\"] } \n },\n \"b26_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[26]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[26]\", \"&TCC_EA_RDREQ[26]\"]}, null] } },\n \"b26_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[26]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[26]\", \"&TCC_EA_WRREQ[26]\"]}, null] } },\n \"b26_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[26]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[26]\", \"&TCC_EA_ATOMIC[26]\"]}, null]}},\n \"b26_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[26]\"}, \"&denom\"] }},\n \"b26_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[26]\"}, \"&denom\"] }},\n \"b26_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[26]\"}, \"&denom\"] }},\n \"b26_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[26]\"}, \"&denom\"] }},\n \"b26_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[26]\"}, \"&denom\"] }},\n \"b26_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[26]\"}, \"&denom\"] }},\n \"b26_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[26]\"}, \"&denom\"] }},\n\n \n \"b27_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[27]\", \"&TCC_MISS[27]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[27]\"]}, \n { \"$add\": [\"&TCC_HIT[27]\", \"&TCC_MISS[27]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b27_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[27]\"}, \"&denom\"] } \n },\n \"b27_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[27]\"}, \"&denom\"] } \n },\n \"b27_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[27]\"}, \"&denom\"] } \n },\n \"b27_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[27]\"}, \"&denom\"] } \n },\n \"b27_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[27]\"}, \"&denom\"] } \n },\n \"b27_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[27]\"}, \"&denom\"] } \n },\n \"b27_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[27]\"}, \"&denom\"] } \n },\n \"b27_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[27]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[27]\", \"&TCC_EA_RDREQ[27]\"]}, null] } },\n \"b27_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[27]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[27]\", \"&TCC_EA_WRREQ[27]\"]}, null] } },\n \"b27_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[27]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[27]\", \"&TCC_EA_ATOMIC[27]\"]}, null]}},\n \"b27_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[27]\"}, \"&denom\"] }},\n \"b27_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[27]\"}, \"&denom\"] }},\n \"b27_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[27]\"}, \"&denom\"] }},\n \"b27_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[27]\"}, \"&denom\"] }},\n \"b27_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[27]\"}, \"&denom\"] }},\n \"b27_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[27]\"}, \"&denom\"] }},\n \"b27_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[27]\"}, \"&denom\"] }},\n\n \n \"b28_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[28]\", \"&TCC_MISS[28]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[28]\"]}, \n { \"$add\": [\"&TCC_HIT[28]\", \"&TCC_MISS[28]\"] }\n ] \n },\n null \n ] \n }\n },\n \"b28_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[28]\"}, \"&denom\"] } \n },\n \"b28_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[28]\"}, \"&denom\"] } \n },\n \"b28_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[28]\"}, \"&denom\"] } \n },\n \"b28_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[28]\"}, \"&denom\"] } \n },\n \"b28_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[28]\"}, \"&denom\"] } \n },\n \"b28_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[28]\"}, \"&denom\"] } \n },\n \"b28_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[28]\"}, \"&denom\"] } \n },\n \"b28_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[28]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[28]\", \"&TCC_EA_RDREQ[28]\"]}, null] } },\n \"b28_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[28]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[28]\", \"&TCC_EA_WRREQ[28]\"]}, null] } },\n \"b28_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[28]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[28]\", \"&TCC_EA_ATOMIC[28]\"]}, null]}},\n \"b28_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[28]\"}, \"&denom\"] }},\n \"b28_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[28]\"}, \"&denom\"] }},\n \"b28_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[28]\"}, \"&denom\"] }},\n \"b28_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[28]\"}, \"&denom\"] }},\n \"b28_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[28]\"}, \"&denom\"] }},\n \"b28_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[28]\"}, \"&denom\"] }},\n \"b28_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[28]\"}, \"&denom\"] }},\n\n \n \"b29_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[29]\", \"&TCC_MISS[29]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[29]\"]}, \n { \"$add\": [\"&TCC_HIT[29]\", \"&TCC_MISS[29]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b29_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[29]\"}, \"&denom\"] } \n },\n \"b29_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[29]\"}, \"&denom\"] } \n },\n \"b29_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[29]\"}, \"&denom\"] } \n },\n \"b29_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[29]\"}, \"&denom\"] } \n },\n \"b29_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[29]\"}, \"&denom\"] } \n },\n \"b29_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[29]\"}, \"&denom\"] }\n },\n \"b29_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[29]\"}, \"&denom\"] } \n },\n \"b29_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[29]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[29]\", \"&TCC_EA_RDREQ[29]\"]}, null] } },\n \"b29_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[29]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[29]\", \"&TCC_EA_WRREQ[29]\"]}, null] } },\n \"b29_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[29]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[29]\", \"&TCC_EA_ATOMIC[29]\"]}, null]}},\n \"b29_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[29]\"}, \"&denom\"] }},\n \"b29_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[29]\"}, \"&denom\"] }},\n \"b29_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[29]\"}, \"&denom\"] }},\n \"b29_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[29]\"}, \"&denom\"] }},\n \"b29_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[29]\"}, \"&denom\"] }},\n \"b29_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[29]\"}, \"&denom\"] }},\n \"b29_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[29]\"}, \"&denom\"] }},\n\n \n \"b30_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[30]\", \"&TCC_MISS[30]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[30]\"]}, \n { \"$add\": [\"&TCC_HIT[30]\", \"&TCC_MISS[30]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b30_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[30]\"}, \"&denom\"] } \n },\n \"b30_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[30]\"}, \"&denom\"] } \n },\n \"b30_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[30]\"}, \"&denom\"] } \n },\n \"b30_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[30]\"}, \"&denom\"] } \n },\n \"b30_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[30]\"}, \"&denom\"] } \n },\n \"b30_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[30]\"}, \"&denom\"] } \n },\n \"b30_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[30]\"}, \"&denom\"] } \n },\n \"b30_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[30]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[30]\", \"&TCC_EA_RDREQ[30]\"]}, null] } },\n \"b30_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[30]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[30]\", \"&TCC_EA_WRREQ[30]\"]}, null] } },\n \"b30_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[30]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[30]\", \"&TCC_EA_ATOMIC[30]\"]}, null]}},\n \"b30_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[30]\"}, \"&denom\"] }},\n \"b30_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[30]\"}, \"&denom\"] }},\n \"b30_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[30]\"}, \"&denom\"] }},\n \"b30_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[30]\"}, \"&denom\"] }},\n \"b30_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[30]\"}, \"&denom\"] }},\n \"b30_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[30]\"}, \"&denom\"] }},\n \"b30_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[30]\"}, \"&denom\"] }},\n\n \n \"b31_hitRate\": {\n \"$avg\":{ \n \"$cond\": [ \n {\"$ne\": [{ \"$add\": [\"&TCC_HIT[31]\", \"&TCC_MISS[31]\"] }, 0]}, \n {\"$divide\": [\n { \"$multiply\": [100, \"&TCC_HIT[31]\"]}, \n { \"$add\": [\"&TCC_HIT[31]\", \"&TCC_MISS[31]\"] }\n ] \n },\n null\n ] \n }\n },\n \"b31_req\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_REQ[31]\"}, \"&denom\"] } \n },\n \"b31_readReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_READ[31]\"}, \"&denom\"] } \n },\n \"b31_writeReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_WRITE[31]\"}, \"&denom\"] } \n },\n \"b31_atomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_ATOMIC[31]\"}, \"&denom\"] } \n },\n \"b31_eaReadReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ[31]\"}, \"&denom\"] } \n },\n \"b31_eaWriteReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ[31]\"}, \"&denom\"] } \n },\n \"b31_eaAtomicReq\": {\n \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_ATOMIC[31]\"}, \"&denom\"] }\n },\n \"b31_eaReadLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_RDREQ[31]\", 0]}, {\"$divide\": [\"&TCC_EA_RDREQ_LEVEL[31]\", \"&TCC_EA_RDREQ[31]\"]}, null] } },\n \"b31_eaWriteLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_WRREQ[31]\", 0]}, {\"$divide\": [\"&TCC_EA_WRREQ_LEVEL[31]\", \"&TCC_EA_WRREQ[31]\"]}, null] } },\n \"b31_eaAtomicLat\": { \"$avg\": {\"$cond\": [{\"$ne\": [\"&TCC_EA_ATOMIC[31]\", 0]}, {\"$divide\": [\"&TCC_EA_ATOMIC_LEVEL[31]\", \"&TCC_EA_ATOMIC[31]\"]}, null]}},\n \"b31_ea_read_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_IO_CREDIT_STALL[31]\"}, \"&denom\"] }},\n \"b31_ea_read_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_GMI_CREDIT_STALL[31]\"}, \"&denom\"] }},\n \"b31_ea_read_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_RDREQ_DRAM_CREDIT_STALL[31]\"}, \"&denom\"] }},\n \"b31_ea_write_stall_io_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_IO_CREDIT_STALL[31]\"}, \"&denom\"] }},\n \"b31_ea_write_stall_gmi_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_GMI_CREDIT_STALL[31]\"}, \"&denom\"] }},\n \"b31_ea_write_stall_dram_credit\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_EA_WRREQ_DRAM_CREDIT_STALL[31]\"}, \"&denom\"] }},\n \"b31_ea_write_stall_too_many\": { \"$avg\":{ \"$divide\":[{\"$toInt\": \"&TCC_TOO_MANY_EA_WRREQS_STALL[31]\"}, \"&denom\"] }}\n\n \n }},\n {\"$set\": {\n \"array\": [\n {\n \"Channel\": \"16\",\n \"Hit Rate\": \"&b16_hitRate\",\n \"Req\": \"&b16_req\",\n \"Read Req\": \"&b16_readReq\",\n \"Write Req\": \"&b16_writeReq\",\n \"AtomicReq\": \"&b16_atomicReq\",\n \"EA Read Req\": \"&b16_eaReadReq\",\n \"EA Write Req\": \"&b16_eaWriteReq\",\n \"EA AtomicReq\": \"&b16_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b16_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b16_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b16_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b16_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b16_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b16_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b16_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b16_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b16_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b16_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"17\",\n \"Hit Rate\": \"&b17_hitRate\",\n \"Req\": \"&b17_req\",\n \"Read Req\": \"&b17_readReq\",\n \"Write Req\": \"&b17_writeReq\",\n \"AtomicReq\": \"&b17_atomicReq\",\n \"EA Read Req\": \"&b17_eaReadReq\",\n \"EA Write Req\": \"&b17_eaWriteReq\",\n \"EA AtomicReq\": \"&b17_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b17_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b17_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b17_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b17_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b17_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b17_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b17_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b17_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b17_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b17_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"18\",\n \"Hit Rate\": \"&b18_hitRate\",\n \"Req\": \"&b18_req\",\n \"Read Req\": \"&b18_readReq\",\n \"Write Req\": \"&b18_writeReq\",\n \"AtomicReq\": \"&b18_atomicReq\",\n \"EA Read Req\": \"&b18_eaReadReq\",\n \"EA Write Req\": \"&b18_eaWriteReq\",\n \"EA AtomicReq\": \"&b18_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b18_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b18_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b18_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b18_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b18_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b18_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b18_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b18_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b18_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b18_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"19\",\n \"Hit Rate\": \"&b19_hitRate\",\n \"Req\": \"&b19_req\",\n \"Read Req\": \"&b19_readReq\",\n \"Write Req\": \"&b19_writeReq\",\n \"AtomicReq\": \"&b19_atomicReq\",\n \"EA Read Req\": \"&b19_eaReadReq\",\n \"EA Write Req\": \"&b19_eaWriteReq\",\n \"EA AtomicReq\": \"&b19_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b19_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b19_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b19_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b19_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b19_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b19_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b19_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b19_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b19_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b19_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"20\",\n \"Hit Rate\": \"&b20_hitRate\",\n \"Req\": \"&b20_req\",\n \"Read Req\": \"&b20_readReq\",\n \"Write Req\": \"&b20_writeReq\",\n \"AtomicReq\": \"&b20_atomicReq\",\n \"EA Read Req\": \"&b20_eaReadReq\",\n \"EA Write Req\": \"&b20_eaWriteReq\",\n \"EA AtomicReq\": \"&b20_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b20_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b20_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b20_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b20_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b20_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b20_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b20_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b20_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b20_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b20_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"21\",\n \"Hit Rate\": \"&b21_hitRate\",\n \"Req\": \"&b21_req\",\n \"Read Req\": \"&b21_readReq\",\n \"Write Req\": \"&b21_writeReq\",\n \"AtomicReq\": \"&b21_atomicReq\",\n \"EA Read Req\": \"&b21_eaReadReq\",\n \"EA Write Req\": \"&b21_eaWriteReq\",\n \"EA AtomicReq\": \"&b21_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b21_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b21_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b21_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b21_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b21_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b21_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b21_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b21_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b21_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b21_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"22\",\n \"Hit Rate\": \"&b22_hitRate\",\n \"Req\": \"&b22_req\",\n \"Read Req\": \"&b22_readReq\",\n \"Write Req\": \"&b22_writeReq\",\n \"AtomicReq\": \"&b22_atomicReq\",\n \"EA Read Req\": \"&b22_eaReadReq\",\n \"EA Write Req\": \"&b22_eaWriteReq\",\n \"EA AtomicReq\": \"&b22_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b22_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b22_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b22_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b22_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b22_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b22_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b22_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b22_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b22_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b22_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"23\",\n \"Hit Rate\": \"&b23_hitRate\",\n \"Req\": \"&b23_req\",\n \"Read Req\": \"&b23_readReq\",\n \"Write Req\": \"&b23_writeReq\",\n \"AtomicReq\": \"&b23_atomicReq\",\n \"EA Read Req\": \"&b23_eaReadReq\",\n \"EA Write Req\": \"&b23_eaWriteReq\",\n \"EA AtomicReq\": \"&b23_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b23_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b23_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b23_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b23_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b23_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b23_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b23_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b23_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b23_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b23_ea_write_stall_too_many\"\n\n\n },\n {\n \"Channel\": \"24\",\n \"Hit Rate\": \"&b24_hitRate\",\n \"Req\": \"&b24_req\",\n \"Read Req\": \"&b24_readReq\",\n \"Write Req\": \"&b24_writeReq\",\n \"AtomicReq\": \"&b24_atomicReq\",\n \"EA Read Req\": \"&b24_eaReadReq\",\n \"EA Write Req\": \"&b24_eaWriteReq\",\n \"EA AtomicReq\": \"&b24_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b24_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b24_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b24_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b24_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b24_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b24_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b24_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b24_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b24_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b24_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"25\",\n \"Hit Rate\": \"&b25_hitRate\",\n \"Req\": \"&b25_req\",\n \"Read Req\": \"&b25_readReq\",\n \"Write Req\": \"&b25_writeReq\",\n \"AtomicReq\": \"&b25_atomicReq\",\n \"EA Read Req\": \"&b25_eaReadReq\",\n \"EA Write Req\": \"&b25_eaWriteReq\",\n \"EA AtomicReq\": \"&b25_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b25_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b25_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b25_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b25_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b25_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b25_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b25_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b25_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b25_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b25_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"26\",\n \"Hit Rate\": \"&b26_hitRate\",\n \"Req\": \"&b26_req\",\n \"Read Req\": \"&b26_readReq\",\n \"Write Req\": \"&b26_writeReq\",\n \"AtomicReq\": \"&b26_atomicReq\",\n \"EA Read Req\": \"&b26_eaReadReq\",\n \"EA Write Req\": \"&b26_eaWriteReq\",\n \"EA AtomicReq\": \"&b26_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b26_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b26_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b26_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b26_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b26_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b26_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b26_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b26_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b26_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b26_ea_write_stall_too_many\"\n\n\n },\n {\n \"Channel\": \"27\",\n \"Hit Rate\": \"&b27_hitRate\",\n \"Req\": \"&b27_req\",\n \"Read Req\": \"&b27_readReq\",\n \"Write Req\": \"&b27_writeReq\",\n \"AtomicReq\": \"&b27_atomicReq\",\n \"EA Read Req\": \"&b27_eaReadReq\",\n \"EA Write Req\": \"&b27_eaWriteReq\",\n \"EA AtomicReq\": \"&b27_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b27_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b27_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b27_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b27_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b27_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b27_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b27_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b27_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b27_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b27_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"28\",\n \"Hit Rate\": \"&b28_hitRate\",\n \"Req\": \"&b28_req\",\n \"Read Req\": \"&b28_readReq\",\n \"Write Req\": \"&b28_writeReq\",\n \"AtomicReq\": \"&b28_atomicReq\",\n \"EA Read Req\": \"&b28_eaReadReq\",\n \"EA Write Req\": \"&b28_eaWriteReq\",\n \"EA AtomicReq\": \"&b28_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b28_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b28_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b28_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b28_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b28_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b28_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b28_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b28_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b28_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b28_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"29\",\n \"Hit Rate\": \"&b29_hitRate\",\n \"Req\": \"&b29_req\",\n \"Read Req\": \"&b29_readReq\",\n \"Write Req\": \"&b29_writeReq\",\n \"AtomicReq\": \"&b29_atomicReq\",\n \"EA Read Req\": \"&b29_eaReadReq\",\n \"EA Write Req\": \"&b29_eaWriteReq\",\n \"EA AtomicReq\": \"&b29_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b29_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b29_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b29_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b29_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b29_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b29_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b29_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b29_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b29_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b29_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"30\",\n \"Hit Rate\": \"&b30_hitRate\",\n \"Req\": \"&b30_req\",\n \"Read Req\": \"&b30_readReq\",\n \"Write Req\": \"&b30_writeReq\",\n \"AtomicReq\": \"&b30_atomicReq\",\n \"EA Read Req\": \"&b30_eaReadReq\",\n \"EA Write Req\": \"&b30_eaWriteReq\",\n \"EA AtomicReq\": \"&b30_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b30_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b30_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b30_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b30_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b30_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b30_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b30_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b30_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b30_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b30_ea_write_stall_too_many\"\n\n },\n {\n \"Channel\": \"31\",\n \"Hit Rate\": \"&b31_hitRate\",\n \"Req\": \"&b31_req\",\n \"Read Req\": \"&b31_readReq\",\n \"Write Req\": \"&b31_writeReq\",\n \"AtomicReq\": \"&b31_atomicReq\",\n \"EA Read Req\": \"&b31_eaReadReq\",\n \"EA Write Req\": \"&b31_eaWriteReq\",\n \"EA AtomicReq\": \"&b31_eaAtomicReq\",\n \"EA Read Lat - cycles\": \"&b31_eaReadLat\",\n \"EA Write Lat - cycles\": \"&b31_eaWriteLat\",\n \"EA Atomic Lat - cycles\": \"&b31_eaAtomicLat\",\n \"EA Read Stall - IO\": \"&b31_ea_read_stall_io_credit\",\n \"EA Read Stall - GMI\": \"&b31_ea_read_stall_gmi_credit\",\n \"EA Read Stall - DRAM\": \"&b31_ea_read_stall_dram_credit\",\n \"EA Write Stall - IO\": \"&b31_ea_write_stall_io_credit\",\n \"EA Write Stall - GMI\": \"&b31_ea_write_stall_gmi_credit\",\n \"EA Write Stall - DRAM\": \"&b31_ea_write_stall_dram_credit\",\n \"EA Write Stall - Starve\": \"&b31_ea_write_stall_too_many\"\n\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"$array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"$array\"\n }}\n]);",
+ "type": "table"
+ }
+ ],
+ "title": "L2 - EA Read Latency (Channel 16-31) (Cycles)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 10,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Lat - cycles",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 81
+ },
+ "id": 93,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Latency (Channel 0 - 15) (Cycles)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 10,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Lat - cycles",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 81
+ },
+ "id": 94,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Latency (Channel 16 - 31) (Cycles)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 11,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Atomic Lat - cycles",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 89
+ },
+ "id": 187,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Atomic Latency (Channel 0 - 15) (Cycles)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 11,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Atomic Lat - cycles",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 89
+ },
+ "id": 201,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Atomic Latency (Channel 16 - 31) (Cycles)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 12,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Stall - IO",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 97
+ },
+ "id": 220,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Stall - I/O (Channel 0 - 15) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 12,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Stall - IO",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 97
+ },
+ "id": 227,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Stall - I/O (Channel 16 - 31) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 13,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Stall - GMI",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 105
+ },
+ "id": 221,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Stall - GMI (Channel 0 - 15) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 13,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Stall - GMI",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 105
+ },
+ "id": 228,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Stall - GMI (Channel 16 - 31) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 14,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Stall - DRAM",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 113
+ },
+ "id": 222,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Stall - HBM (Channel 0 - 15) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 14,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Read Stall - DRAM",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 113
+ },
+ "id": 229,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Read Stall - HBM (Channel 16 - 31) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 15,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - IO",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 121
+ },
+ "id": 223,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Stall - I/O (Channel 0 - 15) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 15,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - IO",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 121
+ },
+ "id": 230,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Stall - I/O (Channel 16 - 31) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 16,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - GMI",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 129
+ },
+ "id": 225,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Stall - GMI (Channel 0 - 15) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 16,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - GMI",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 129
+ },
+ "id": 231,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Stall - GMI (Channel 16 - 31) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 17,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - DRAM",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 137
+ },
+ "id": 224,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Stall - HBM (Channel 0 - 15) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 17,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - DRAM",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 137
+ },
+ "id": 232,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Stall - HBM (Channel 16 - 31) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 18,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - Starve",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 0,
+ "y": 145
+ },
+ "id": 226,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 68,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Starve (Channel 0 - 15) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ },
+ {
+ "Aggregate": "last",
+ "BarPadding": 10,
+ "BaseLineColor": "#ff0000",
+ "BaseLineWidth": 1,
+ "CurveType": "Monotone",
+ "DateFormat": "YYYY-MM-DD HH:mm:ss",
+ "DateTimeColName": "date",
+ "DotColor": "white",
+ "DotSize": 10,
+ "EvenRowColor": "rgba(61, 61, 64, 0.78)",
+ "FlashHighLimitBar": false,
+ "FlashLowLimitBar": false,
+ "GroupCols": 0,
+ "GroupGap": 5,
+ "GroupLabelColor": "#ffffff",
+ "GroupLabelFontSize": "200%",
+ "GroupNameFilter": "",
+ "GroupRenamingRules": [],
+ "GroupSortString": "",
+ "HighAxisColor": "#ffffff",
+ "HighAxisWidth": 1,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "HighLimitBarColor": "#ff0000",
+ "HighLimitBarFlashColor": "#ffa500",
+ "HighLimitBarFlashTimeout": 1000,
+ "HighLimitLineColor": "#ff0000",
+ "HighLmitLineWidth": 1,
+ "HighSideMargin": 22,
+ "Horizontal": false,
+ "LabelColName": "Channel",
+ "LabelColor": "#ffffff",
+ "LabelFontSize": "70%",
+ "LabelNameFilter": "",
+ "LabelRenamingRules": [],
+ "LableAngle": 0,
+ "Legend": false,
+ "LineColor": "blue",
+ "LineWidth": 5,
+ "Links": [],
+ "LowAxisColor": "#ffffff",
+ "LowAxisWidth": 1,
+ "LowBarColor": "teal",
+ "LowLimitBarColor": "#ff0000",
+ "LowLimitBarFlashColor": "#ffa500",
+ "LowLimitBarFlashTimeout": 200,
+ "LowLimitLineColor": "#ff0000",
+ "LowLmitLineWidth": 1,
+ "LowSideMargin": 50,
+ "MaxLineColor": "rgb(74, 232, 12)",
+ "MaxLineWidth": 1,
+ "MinLineColor": "#ff0000",
+ "MinLineWidth": 1,
+ "MultiBarPadding": 10,
+ "OddRowColor": "rgba(33, 33, 34, 0.92)",
+ "OutOfRangeLabelColor": "#ffffff",
+ "OutlineColor": "rgba(245, 255, 0, 0.1)",
+ "RecolorHighLimitBar": false,
+ "RecolorLowLimitBar": false,
+ "RecolorRules": [],
+ "ScaleFactor": 1,
+ "ShowBars": true,
+ "ShowBaseLine": false,
+ "ShowDate": false,
+ "ShowGroupLabels": true,
+ "ShowHighLimitLine": false,
+ "ShowLabels": true,
+ "ShowLeftAxis": true,
+ "ShowLines": false,
+ "ShowLowLimitLine": false,
+ "ShowMaxLine": false,
+ "ShowMinLine": false,
+ "ShowRightAxis": true,
+ "ShowValues": true,
+ "SortColName": "value",
+ "SortDirection": "ascending",
+ "TZOffsetHours": 0,
+ "ToolTipFontSize": "100%",
+ "ToolTipType": "",
+ "TooltipDateFormat": "YYYY-MM-DD HH:mm:ss",
+ "VGroupGap": 5,
+ "ValueColName": "",
+ "ValueColor": "#ffffff",
+ "ValueDecimals": 0,
+ "ValueFontSize": "70%",
+ "ValuePosition": "top",
+ "Values": [
+ {
+ "$$hashKey": "object:277",
+ "Col": 18,
+ "HighBarColor": "rgb(120, 128, 0)",
+ "LowBarColor": "teal",
+ "Name": "EA Write Stall - Starve",
+ "Selected": true
+ }
+ ],
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "gridPos": {
+ "h": 8,
+ "w": 12,
+ "x": 12,
+ "y": 145
+ },
+ "id": 233,
+ "targets": [
+ {
+ "datasource": {
+ "type": "datasource",
+ "uid": "-- Dashboard --"
+ },
+ "panelId": 70,
+ "refId": "A"
+ }
+ ],
+ "title": "L2 - EA Write Starve (Channel 16 - 31) (Cycles $normUnit)",
+ "type": "michaeldmoore-multistat-panel"
+ }
+ ],
+ "targets": [
+ {
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "refId": "A"
+ }
+ ],
+ "title": "L2 Cache (per Channel)",
+ "type": "row"
+ }
+ ],
+ "refresh": "",
+ "schemaVersion": 34,
+ "style": "dark",
+ "tags": [],
+ "templating": {
+ "list": [
+ {
+ "current": {
+ "selected": true,
+ "text": "\"per Wave\"",
+ "value": "\"per Wave\""
+ },
+ "hide": 0,
+ "includeAll": false,
+ "label": "Normalization",
+ "multi": false,
+ "name": "normUnit",
+ "options": [
+ {
+ "selected": true,
+ "text": "\"per Wave\"",
+ "value": "\"per Wave\""
+ },
+ {
+ "selected": false,
+ "text": "\"per Cycle\"",
+ "value": "\"per Cycle\""
+ },
+ {
+ "selected": false,
+ "text": "\"per Sec\"",
+ "value": "\"per Sec\""
+ },
+ {
+ "selected": false,
+ "text": "\"per Kernel\"",
+ "value": "\"per Kernel\""
+ }
+ ],
+ "query": "\"per Wave\",\n\"per Cycle\",\n\"per Sec\",\n\"per Kernel\"",
+ "queryValue": "",
+ "skipUrlSync": false,
+ "type": "custom"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "32",
+ "value": "32"
+ },
+ "definition": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&L2Banks\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "L2 Channels",
+ "multi": false,
+ "name": "L2Banks",
+ "options": [],
+ "query": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&L2Banks\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "8",
+ "value": "8"
+ },
+ "definition": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSE\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "#SEs",
+ "multi": false,
+ "name": "numSE",
+ "options": [],
+ "query": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSE\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "110",
+ "value": "110"
+ },
+ "definition": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numCU\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "#CUs",
+ "multi": false,
+ "name": "numCU",
+ "options": [],
+ "query": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numCU\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "32",
+ "value": "32"
+ },
+ "definition": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&maxWavesPerCU\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Max Waves/CU",
+ "multi": false,
+ "name": "maxWavesPerCU",
+ "options": [],
+ "query": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&maxWavesPerCU\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "1700",
+ "value": "1700"
+ },
+ "definition": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&sclk\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "SCLK (MHz)",
+ "multi": false,
+ "name": "sclk",
+ "options": [],
+ "query": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&sclk\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "56",
+ "value": "56"
+ },
+ "definition": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSQC\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "#SQC",
+ "multi": false,
+ "name": "numSQC",
+ "options": [],
+ "query": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSQC\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "1638.4",
+ "value": "1638.4"
+ },
+ "definition": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&hbmBW\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "HBM BW (GB/s)",
+ "multi": false,
+ "name": "hbmBW",
+ "options": [],
+ "query": "$Workload1.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&hbmBW\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "miperf_ast_reproducer_swatomics_mi200",
+ "value": "miperf_ast_reproducer_swatomics_mi200"
+ },
+ "definition": "workload_names.names.aggregate([\n {\"$group\": {\n \"_id\": \"&name\"\n }}\n]);",
+ "hide": 0,
+ "includeAll": false,
+ "label": "Workload",
+ "multi": false,
+ "name": "Workload1",
+ "options": [],
+ "query": "workload_names.names.aggregate([\n {\"$group\": {\n \"_id\": \"&name\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 1,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "1528823703",
+ "value": "1528823703"
+ },
+ "definition": "$Workload1.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n\n {\"$group\": {\n \"_id\": null,\n \"myAvg\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }, 1000] }, $sclk] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"_id\": { \"$round\": [\"&myAvg\", 0] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Kernel Cycles",
+ "multi": false,
+ "name": "kernelBusyCycles",
+ "options": [],
+ "query": "$Workload1.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n\n {\"$group\": {\n \"_id\": null,\n \"myAvg\": {\n \"$avg\": { \"$multiply\": [{ \"$divide\": [{ \"$subtract\": [\"&EndNs\", \"&BeginNs\"] }, 1000] }, $sclk] }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"_id\": { \"$round\": [\"&myAvg\", 0] }\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "110",
+ "value": "110"
+ },
+ "definition": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"theAvg\": {\n \"$avg\": {\n \"$cond\":[\n {\"$ne\": [\"&GRBM_GUI_ACTIVE\", 0]},\n {\"$divide\": [{ \"$multiply\": [4, \"&SQ_BUSY_CU_CYCLES\"] }, \"&GRBM_GUI_ACTIVE\"]},\n \"\"\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"_id\": {\"$toInt\": { \"$min\": [{ \"$add\": [{ \"$multiply\": [{ \"$divide\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU] },8] }, { \"$min\": [{ \"$mod\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU] }, 8] }] }, $numCU] }}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"$array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"$array\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Active CUs",
+ "multi": false,
+ "name": "numActiveCUs",
+ "options": [],
+ "query": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": null,\n \"theAvg\": {\n \"$avg\": {\n \"$cond\":[\n {\"$ne\": [\"&GRBM_GUI_ACTIVE\", 0]},\n {\"$divide\": [{ \"$multiply\": [4, \"&SQ_BUSY_CU_CYCLES\"] }, \"&GRBM_GUI_ACTIVE\"]},\n \"\"\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"_id\": {\"$toInt\": { \"$min\": [{ \"$add\": [{ \"$multiply\": [{ \"$divide\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU] },8] }, { \"$min\": [{ \"$mod\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU] }, 8] }] }, $numCU] }}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"$array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"$array\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "All",
+ "value": "$__all"
+ },
+ "definition": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": \"&Index\"\n }},\n {\"$sort\": {\n \"_id\": 1\n }}\n]);",
+ "description": "Defaults to all DispatchIDs",
+ "hide": 2,
+ "includeAll": true,
+ "label": "Filtered Dispatch ID",
+ "multi": false,
+ "name": "DispatchIDFilter",
+ "options": [],
+ "query": "$Workload1.pmc_perf.aggregate([\n {\"$match\": {\n \"gpu-id\": { \"$in\": [${gpuFilter:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter:json}}\n }},\n {\"$group\": {\n \"_id\": \"&Index\"\n }},\n {\"$sort\": {\n \"_id\": 1\n }}\n]);",
+ "refresh": 1,
+ "regex": "${DispatchID:text}",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": true,
+ "text": "",
+ "value": ""
+ },
+ "description": "Desired DispatchID filters as regex ex. (1|18)",
+ "hide": 0,
+ "label": "Dispatch Filter",
+ "name": "DispatchID",
+ "options": [
+ {
+ "selected": true,
+ "text": "",
+ "value": ""
+ }
+ ],
+ "query": "",
+ "skipUrlSync": false,
+ "type": "textbox"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "0",
+ "value": "0"
+ },
+ "definition": "$Workload1.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&gpu-id\"\n }}\n]);",
+ "hide": 0,
+ "includeAll": false,
+ "label": "GCD",
+ "multi": false,
+ "name": "gpuFilter",
+ "options": [],
+ "query": "$Workload1.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&gpu-id\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 3,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": true,
+ "text": [
+ "All"
+ ],
+ "value": [
+ "$__all"
+ ]
+ },
+ "definition": "$Workload1.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&KernelName\"\n }}\n]);",
+ "hide": 0,
+ "includeAll": true,
+ "label": "Kernels",
+ "multi": true,
+ "name": "KernelNameFilter",
+ "options": [],
+ "query": "$Workload1.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&KernelName\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "miperf_asw_vcopy_mi200",
+ "value": "miperf_asw_vcopy_mi200"
+ },
+ "definition": "workload_names.names.aggregate([\n {\"$group\": {\n \"_id\": \"&name\"\n }}\n]);",
+ "hide": 0,
+ "includeAll": false,
+ "label": "Baseline Workload",
+ "multi": false,
+ "name": "Workload2",
+ "options": [],
+ "query": "workload_names.names.aggregate([\n {\"$group\": {\n \"_id\": \"&name\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 1,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "84",
+ "value": "84"
+ },
+ "definition": "$Workload2.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}}\n }},\n\n {\"$group\": {\n \"_id\": null,\n \"theAvg\": {\n \"$avg\": {\n \"$cond\":[\n {\"$ne\": [\"&GRBM_GUI_ACTIVE\", 0]},\n {\"$divide\": [{ \"$multiply\": [4, \"&SQ_BUSY_CU_CYCLES\"] }, \"&GRBM_GUI_ACTIVE\"]},\n \"\"\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"_id\": {\"$toInt\": { \"$min\": [{ \"$add\": [{ \"$multiply\": [{ \"$divide\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU2] },8] }, { \"$min\": [{ \"$mod\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU2] }, 8] }] }, $numCU2] }}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline ActiveCUs",
+ "multi": false,
+ "name": "numActiveCUs2",
+ "options": [],
+ "query": "$Workload2.pmc_perf.aggregate([\n{\"$match\": {\n \"Index\": { \"$in\": [${DispatchIDFilter2:raw}] },\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}}\n }},\n\n {\"$group\": {\n \"_id\": null,\n \"theAvg\": {\n \"$avg\": {\n \"$cond\":[\n {\"$ne\": [\"&GRBM_GUI_ACTIVE\", 0]},\n {\"$divide\": [{ \"$multiply\": [4, \"&SQ_BUSY_CU_CYCLES\"] }, \"&GRBM_GUI_ACTIVE\"]},\n \"\"\n ]\n }\n }\n }},\n {\"$set\": {\n \"array\": [\n {\n \"_id\": {\"$toInt\": { \"$min\": [{ \"$add\": [{ \"$multiply\": [{ \"$divide\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU2] },8] }, { \"$min\": [{ \"$mod\": [{ \"$round\": [\"$theAvg\", 0] }, $maxWavesPerCU2] }, 8] }] }, $numCU2] }}\n }\n ]\n }},\n {\"$unwind\": {\n \"path\": \"&array\"\n }},\n {\"$replaceRoot\": {\n \"newRoot\": \"&array\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "All",
+ "value": "$__all"
+ },
+ "definition": "$Workload2.pmc_perf.aggregate([\n {\"$match\": {\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}}\n }},\n {\"$group\": {\n \"_id\": \"&Index\"\n }},\n {\"$sort\": {\n \"_id\": 1\n }}\n]);",
+ "description": "Defaults to all DispatchIDs",
+ "hide": 2,
+ "includeAll": true,
+ "label": "Baseline Dispatch IDs",
+ "multi": false,
+ "name": "DispatchIDFilter2",
+ "options": [],
+ "query": "$Workload2.pmc_perf.aggregate([\n {\"$match\": {\n \"gpu-id\": { \"$in\": [${gpuFilter2:raw}] },\n \"KernelName\": { \"$in\": ${KernelNameFilter2:json}}\n }},\n {\"$group\": {\n \"_id\": \"&Index\"\n }},\n {\"$sort\": {\n \"_id\": 1\n }}\n]);",
+ "refresh": 1,
+ "regex": "${DispatchID2:text}",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": true,
+ "text": "",
+ "value": ""
+ },
+ "description": "Desired DispatchID filters as regex ex. (1|18)",
+ "hide": 0,
+ "label": "Baseline Dispatch Filter",
+ "name": "DispatchID2",
+ "options": [
+ {
+ "selected": true,
+ "text": "",
+ "value": ""
+ }
+ ],
+ "query": "",
+ "skipUrlSync": false,
+ "type": "textbox"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "0",
+ "value": "0"
+ },
+ "definition": "$Workload2.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&gpu-id\"\n }}\n]);",
+ "hide": 0,
+ "includeAll": false,
+ "label": "Baseline GCD",
+ "multi": false,
+ "name": "gpuFilter2",
+ "options": [],
+ "query": "$Workload2.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&gpu-id\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": true,
+ "text": [
+ "All"
+ ],
+ "value": [
+ "$__all"
+ ]
+ },
+ "datasource": {
+ "type": "amd-miperf-data-plugin",
+ "uid": "oVK0I__nk"
+ },
+ "definition": "$Workload2.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&KernelName\"\n }}\n]);",
+ "hide": 0,
+ "includeAll": true,
+ "label": "Baseline Kernels",
+ "multi": true,
+ "name": "KernelNameFilter2",
+ "options": [],
+ "query": "$Workload2.pmc_perf.aggregate([\n {\"$group\": {\n \"_id\": \"&KernelName\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": true,
+ "text": [
+ "System Info"
+ ],
+ "value": [
+ "System Info"
+ ]
+ },
+ "hide": 0,
+ "includeAll": false,
+ "label": "Comparison Panels",
+ "multi": true,
+ "name": "select",
+ "options": [
+ {
+ "selected": true,
+ "text": "System Info",
+ "value": "System Info"
+ },
+ {
+ "selected": false,
+ "text": "System Speed-of-Light",
+ "value": "System Speed-of-Light"
+ },
+ {
+ "selected": false,
+ "text": "Roofline",
+ "value": "Roofline"
+ },
+ {
+ "selected": false,
+ "text": "Command Processor",
+ "value": "Command Processor"
+ },
+ {
+ "selected": false,
+ "text": "Shader Processor Input",
+ "value": "Shader Processor Input"
+ },
+ {
+ "selected": false,
+ "text": "Wavefront",
+ "value": "Wavefront"
+ },
+ {
+ "selected": false,
+ "text": "Compute Pipeline",
+ "value": "Compute Pipeline"
+ },
+ {
+ "selected": false,
+ "text": "Instruction Mix",
+ "value": "Instruction Mix"
+ },
+ {
+ "selected": false,
+ "text": "Local Data Share",
+ "value": "Local Data Share"
+ },
+ {
+ "selected": false,
+ "text": "Instruction Cache",
+ "value": "Instruction Cache"
+ },
+ {
+ "selected": false,
+ "text": "Scalar L1D Cache",
+ "value": "Scalar L1D Cache"
+ },
+ {
+ "selected": false,
+ "text": "Texture Addr and Data",
+ "value": "Texture Addr and Data"
+ },
+ {
+ "selected": false,
+ "text": "Vector L1D Cache",
+ "value": "Vector L1D Cache"
+ },
+ {
+ "selected": false,
+ "text": "L2 Cache",
+ "value": "L2 Cache"
+ }
+ ],
+ "query": "System Info, \nSystem Speed-of-Light, \nRoofline,\nCommand Processor, \nShader Processor Input, \nWavefront,\nCompute Pipeline, \nInstruction Mix,\nLocal Data Share, \nInstruction Cache, \nScalar L1D Cache, \nTexture Addr and Data, \nVector L1D Cache,\nL2 Cache",
+ "queryValue": "",
+ "skipUrlSync": false,
+ "type": "custom"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "32",
+ "value": "32"
+ },
+ "definition": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&L2Banks\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline L2 Channels",
+ "multi": false,
+ "name": "L2Banks2",
+ "options": [],
+ "query": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&L2Banks\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "8",
+ "value": "8"
+ },
+ "definition": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSE\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline #SEs",
+ "multi": false,
+ "name": "numSE2",
+ "options": [],
+ "query": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSE\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "110",
+ "value": "110"
+ },
+ "definition": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numCU\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline #CUs",
+ "multi": false,
+ "name": "numCU2",
+ "options": [],
+ "query": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numCU\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "32",
+ "value": "32"
+ },
+ "definition": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&maxWavesPerCU\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline Max Waves/CU",
+ "multi": false,
+ "name": "maxWavesPerCU2",
+ "options": [],
+ "query": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&maxWavesPerCU\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "1700",
+ "value": "1700"
+ },
+ "definition": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&sclk\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline SCLK (MHz)",
+ "multi": false,
+ "name": "sclk2",
+ "options": [],
+ "query": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&sclk\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "56",
+ "value": "56"
+ },
+ "definition": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSQC\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline #SQC",
+ "multi": false,
+ "name": "numSQC2",
+ "options": [],
+ "query": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&numSQC\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "1638.4",
+ "value": "1638.4"
+ },
+ "definition": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&hbmBW\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "Baseline HBM BW (GB/s)",
+ "multi": false,
+ "name": "hbmBW2",
+ "options": [],
+ "query": "$Workload2.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&hbmBW\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": false,
+ "text": "mi200",
+ "value": "mi200"
+ },
+ "definition": "${Workload1}.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&name\"\n }}\n]);",
+ "hide": 2,
+ "includeAll": false,
+ "label": "SOC",
+ "multi": false,
+ "name": "soc",
+ "options": [],
+ "query": "${Workload1}.sysinfo.aggregate([\n {\"$group\": {\n \"_id\": \"&name\"\n }}\n]);",
+ "refresh": 1,
+ "regex": "",
+ "skipUrlSync": false,
+ "sort": 0,
+ "type": "query"
+ },
+ {
+ "current": {
+ "selected": true,
+ "text": "5",
+ "value": "5"
+ },
+ "hide": 0,
+ "includeAll": false,
+ "multi": false,
+ "name": "TopN",
+ "options": [
+ {
+ "selected": false,
+ "text": "1",
+ "value": "1"
+ },
+ {
+ "selected": true,
+ "text": "5",
+ "value": "5"
+ },
+ {
+ "selected": false,
+ "text": "10",
+ "value": "10"
+ },
+ {
+ "selected": false,
+ "text": "15",
+ "value": "15"
+ },
+ {
+ "selected": false,
+ "text": "20",
+ "value": "20"
+ },
+ {
+ "selected": false,
+ "text": "50",
+ "value": "50"
+ },
+ {
+ "selected": false,
+ "text": "100",
+ "value": "100"
+ }
+ ],
+ "query": "1,5,10,15,20,50,100",
+ "queryValue": "",
+ "skipUrlSync": false,
+ "type": "custom"
+ }
+ ]
+ },
+ "time": {
+ "from": "2021-11-04T14:21:39.749Z",
+ "to": "2021-11-08T14:21:39.749Z"
+ },
+ "timepicker": {},
+ "timezone": "",
+ "title": "Omniperf_v1.0.5_pub",
+ "uid": "MIPerf_v1_0_0630202211",
+ "version": 3,
+ "weekStart": ""
+}
\ No newline at end of file
diff --git a/grafana_plugins/svg_plugin/package.json b/grafana_plugins/svg_plugin/package.json
index 1908ef09ea..fb88025c1d 100644
--- a/grafana_plugins/svg_plugin/package.json
+++ b/grafana_plugins/svg_plugin/package.json
@@ -13,19 +13,19 @@
"author": "Audacious Software Group",
"license": "MIT",
"devDependencies": {
- "@grafana/data": "latest",
"@grafana/toolkit": "latest",
- "@grafana/ui": "latest",
- "emotion": "10.0.27"
+ "emotion": "10.0.27",
+ "react-monaco-editor": "^0.44.0",
+ "tslib": "^2.3.1"
},
"engines": {
"node": ">=14"
},
"dependencies": {
- "@grafana/runtime": "^8.1.1",
- "@svgdotjs/svg.js": "^3.1.1",
- "react-monaco-editor": "^0.44.0",
- "tslib": "^2.3.1"
+ "@grafana/runtime": "9.1.2",
+ "@grafana/data": "9.1.2",
+ "@grafana/ui": "9.1.2",
+ "@svgdotjs/svg.js": "^3.1.1"
},
"_comments": "Dependencies are not included as part of Omniperf. It's the user's responsibility to accept any licensing implications before building the project."
}
diff --git a/pyproject.toml b/pyproject.toml
index 08ec85685d..933c110895 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -31,5 +31,5 @@ pythonpath = [
".",
"src",
"src/utils",
- "src/omniperf_cli/utils"
+ "src/omniperf_analyze/utils"
]
diff --git a/src/docs/conf.py b/src/docs/conf.py
index b967810f1d..2b5d2e62d0 100644
--- a/src/docs/conf.py
+++ b/src/docs/conf.py
@@ -52,6 +52,8 @@ extensions = [
"myst_parser",
]
+myst_heading_anchors = 2
+
# Add any paths that contain templates here, relative to this directory.
templates_path = ["_templates"]
diff --git a/src/docs/getting_started.md b/src/docs/getting_started.md
index a92581ef5f..c5c13d6322 100644
--- a/src/docs/getting_started.md
+++ b/src/docs/getting_started.md
@@ -69,7 +69,9 @@ Modes change the fundamental behavior of the Omniperf command line tool. Dependi
- **Database**: Our detailed Grafana GUI is built on a MongoDB database. `--import` profiling results to the DB to interact with the workload in Grafana or `--remove` the workload from the DB.
- Connection options will need to be specified. See the [*Omniperf Performance Analysis*](performance_analysis.md#omniperf-grafana-gui-import) section for more details on this.
+ Connection options will need to be specified. See the [*Grafana
+ Analysis*](grafana_analyzer.md#grafana-gui-import) import section
+ for more details on this.
```shell
$ omniperf database --help
diff --git a/src/docs/grafana_analyzer.md b/src/docs/grafana_analyzer.md
index 5f9bcf46eb..1a05f6f0d9 100644
--- a/src/docs/grafana_analyzer.md
+++ b/src/docs/grafana_analyzer.md
@@ -68,6 +68,11 @@ The uniform color coding is applied to most visualizations (bars, table, diagram
## Grafana GUI Import
The omniperf database `--import` option imports the raw profiling data to Grafana's backend MongoDB database. This step is only required for Grafana GUI based performance analysis.
+Default username and password for MongoDB (to be used in database mode) are as follows:
+
+ - Username: **temp**
+ - Password: **temp123**
+
Each workload is imported to a separate database with the following naming convention:
omniperf___
diff --git a/src/docs/installation.md b/src/docs/installation.md
index 124cec8699..65be7aa300 100644
--- a/src/docs/installation.md
+++ b/src/docs/installation.md
@@ -180,7 +180,7 @@ $ sudo docker-compose up -d
> Note that TCP ports for Grafana (4000) and MongoDB (27017) in the docker container are mapped to 14000 and 27018, respectively, on the host side.
### Setup Grafana Instance
-Once you've launced your docker container you should be able to reach Grafana at **http://\:1400**. The default login credentials for the first-time Grafana setup are:
+Once you've launced your docker container you should be able to reach Grafana at **http://\:14000**. The default login credentials for the first-time Grafana setup are:
- Username: **admin**
- Password: **admin**
diff --git a/src/docs/standalone_gui_analyzer.md b/src/docs/standalone_gui_analyzer.md
index 08d0b2bf4d..db46253a89 100644
--- a/src/docs/standalone_gui_analyzer.md
+++ b/src/docs/standalone_gui_analyzer.md
@@ -41,7 +41,7 @@ Analyze
Dash is running on http://0.0.0.0:8050/
- * Serving Flask app 'omniperf_cli.omniperf_cli' (lazy loading)
+ * Serving Flask app 'omniperf_analyze.omniperf_analyze' (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
diff --git a/src/omniperf b/src/omniperf
index b21ec78cd2..f32b7abbb5 100755
--- a/src/omniperf
+++ b/src/omniperf
@@ -30,6 +30,7 @@ import glob
import pandas as pd
from datetime import datetime
from pathlib import Path as path
+import warnings
from parser import parse
from utils import specs
@@ -37,7 +38,7 @@ from utils.perfagg import perfmon_filter, pmc_filter
from utils import remove_workload
from utils import csv_converter # Import workload
from utils import plot_roofline # standalone roofline
-from omniperf_cli.omniperf_cli import omniperf_cli # CLI analysis
+from omniperf_analyze.omniperf_analyze import analyze # CLI analysis
from common import (
OMNIPERF_HOME,
@@ -51,6 +52,12 @@ from common import getVersion
################################################
# Helper Functions
################################################
+def run_subprocess(cmd):
+ subprocess.run(
+ cmd,
+ check=True
+ )
+
def resolve_rocprof():
# ROCPROF INFO
global rocprof_cmd
@@ -71,6 +78,7 @@ def resolve_rocprof():
print("ROC Profiler: ", rocprof_path.stdout.decode("utf-8"))
+
def get_soc():
mspec = specs.get_machine_specs(0)
@@ -108,20 +116,24 @@ def isWorkloadEmpty(my_parser, path):
def replace_timestamps(workload_dir):
df_stamps = pd.read_csv(workload_dir + "/timestamps.csv")
- df_pmc_perf = pd.read_csv(workload_dir + "/pmc_perf.csv")
+ if "BeginNs" in df_stamps.columns and "EndNs" in df_stamps.columns:
+ df_pmc_perf = pd.read_csv(workload_dir + "/pmc_perf.csv")
- df_pmc_perf["BeginNs"] = df_stamps["BeginNs"]
- df_pmc_perf["EndNs"] = df_stamps["EndNs"]
- df_pmc_perf.to_csv(workload_dir + "/pmc_perf.csv", index=False)
+ df_pmc_perf["BeginNs"] = df_stamps["BeginNs"]
+ df_pmc_perf["EndNs"] = df_stamps["EndNs"]
+ df_pmc_perf.to_csv(workload_dir + "/pmc_perf.csv", index=False)
+ else:
+ warnings.warn("WARNING: Incomplete profiling data detected. Unable to update timestamps.")
-def gen_sysinfo(workload_name, workload_dir, ip_blocks, skip_roof):
+def gen_sysinfo(workload_name, workload_dir, ip_blocks, app_cmd, skip_roof):
# Record system information
mspec = specs.get_machine_specs(0)
sysinfo = open(workload_dir + "/" + "sysinfo.csv", "w")
# write header
header = "workload_name,"
+ header += "command,"
header += "host_name,host_cpu,host_distro,host_kernel,host_rocmver,date,"
header += "gpu_soc,numSE,numCU,numSIMD,waveSize,maxWavesPerCU,maxWorkgroupSize,"
header += "L1,L2,sclk,mclk,cur_sclk,cur_mclk,L2Banks,name,numSQC,hbmBW,"
@@ -136,6 +148,7 @@ def gen_sysinfo(workload_name, workload_dir, ip_blocks, skip_roof):
timestamp = now.strftime("%c") + " (" + local_tzname + ")"
# host info
param = [workload_name]
+ param += [app_cmd]
param += [
mspec.hostname,
mspec.cpu,
@@ -195,10 +208,12 @@ def mongo_import(args, profileAndImport):
csv_converter.convert_folder(connectionInfo, Extractionlvl)
print("-- Complete! --")
+
################################################
# Roofline Helpers
################################################
+
def detect_roofline():
mspec = specs.get_machine_specs(0)
rocm_ver = mspec.rocmversion[:1]
@@ -212,7 +227,7 @@ def detect_roofline():
rooflineBinary = os.environ["ROOFLINE_BIN"]
if os.path.exists(rooflineBinary):
print("Detected user-supplied binary")
- return {"rocm_ver":"override", "distro":"override", "path":rooflineBinary}
+ return {"rocm_ver": "override", "distro": "override", "path": rooflineBinary}
else:
print("ROOFLINE ERROR: user-supplied path to binary not accessible")
print("--> ROOFLINE_BIN = %s\n" % target_binary)
@@ -230,26 +245,34 @@ def detect_roofline():
print("ROOFLINE ERROR: Cannot find a valid binary for your operating system")
sys.exit(1)
- target_binary = { "rocm_ver":rocm_ver, "distro":distro }
+ target_binary = {"rocm_ver": rocm_ver, "distro": distro}
return target_binary
+
def mibench(args):
print("No roofline data found. Generating...")
-
+
target_binary = detect_roofline()
if target_binary["rocm_ver"] == "override":
path_to_binary = target_binary["path"]
else:
- path_to_binary = str(OMNIPERF_HOME) + "/utils/rooflines/roofline" + "-" + DISTRO_MAP[target_binary["distro"]] + "-" + args.target.lower() + "-rocm" + target_binary["rocm_ver"]
+ path_to_binary = (
+ str(OMNIPERF_HOME)
+ + "/utils/rooflines/roofline"
+ + "-"
+ + DISTRO_MAP[target_binary["distro"]]
+ + "-"
+ + args.target.lower()
+ + "-rocm"
+ + target_binary["rocm_ver"]
+ )
# Distro is valid but cant find rocm ver
if not os.path.exists(path_to_binary):
- print(
- "ROOFLINE ERROR: ROCm version not supported."
- )
+ print("ROOFLINE ERROR: Unable to locate expected binary (%s)." % path_to_binary)
sys.exit(1)
- subprocess.run(
+ run_subprocess(
[
path_to_binary,
"-o",
@@ -276,6 +299,7 @@ def characterize_app(path, cmd, verbose):
print(fname)
run_prof(fname, workload_dir, perfmon_dir, app_cmd, verbose)
+
################################################
# Profiling Helpers
################################################
@@ -290,13 +314,11 @@ def run_prof(fname, workload_dir, perfmon_dir, cmd, verbose):
print("pmc file:", os.path.basename(fname))
# profile the app
- subprocess.run(
+ run_subprocess(
[
rocprof_cmd,
"-i",
fname,
- "-m",
- perfmon_dir + "/" + "metrics.xml",
"--timestamp",
"on",
"-o",
@@ -306,7 +328,7 @@ def run_prof(fname, workload_dir, perfmon_dir, cmd, verbose):
)
-def omniperf_profile(args,VER):
+def omniperf_profile(args, VER):
# Verify valid target
if args.target not in SOC_LIST:
parse.print_help(sys.stderr)
@@ -335,7 +357,7 @@ def omniperf_profile(args,VER):
for fname in glob.glob(workload_dir + "/perfmon/*.txt"):
# Kernel filtering (in-place replacement)
if not args.kernel == None:
- subprocess.run(
+ run_subprocess(
[
"sed",
"-i",
@@ -347,7 +369,7 @@ def omniperf_profile(args,VER):
# Dispatch filtering (inplace replacement)
if not args.dispatch == None:
- subprocess.run(
+ run_subprocess(
[
"sed",
"-i",
@@ -359,7 +381,7 @@ def omniperf_profile(args,VER):
run_prof(fname, workload_dir, perfmon_dir, args.remaining, args.verbose)
# run again with timestamps
- subprocess.run(
+ run_subprocess(
[
rocprof_cmd,
# "-i", fname,
@@ -376,7 +398,7 @@ def omniperf_profile(args,VER):
replace_timestamps(workload_dir)
# Generate sysinfo
- gen_sysinfo(args.name, workload_dir, args.ipblocks, args.no_roof)
+ gen_sysinfo(args.name, workload_dir, args.ipblocks, args.remaining, args.no_roof)
# Add tracing & roofline metrics (mi200 only)
if args.target.lower() == "mi200":
@@ -386,15 +408,25 @@ def omniperf_profile(args,VER):
if target_binary["rocm_ver"] == "override":
path_to_binary = target_binary["path"]
else:
- path_to_binary = str(OMNIPERF_HOME) + "/utils/rooflines/roofline" + "-" + DISTRO_MAP[target_binary["distro"]] + "-" + args.target.lower() + "-rocm" + target_binary["rocm_ver"]
- # Distro is valid but cant find rocm ver
+ path_to_binary = (
+ str(OMNIPERF_HOME)
+ + "/utils/rooflines/roofline"
+ + "-"
+ + DISTRO_MAP[target_binary["distro"]]
+ + "-"
+ + args.target.lower()
+ + "-rocm"
+ + target_binary["rocm_ver"]
+ )
+ # Distro is valid but cant find valid binary
if not os.path.exists(path_to_binary):
print(
- "ROOFLINE ERROR: ROCm version not supported."
+ "ROOFLINE ERROR: Unable to locate expected binary (%s))."
+ % path_to_binary
)
sys.exit(1)
- subprocess.run(
+ run_subprocess(
[
path_to_binary,
"-o",
@@ -404,6 +436,7 @@ def omniperf_profile(args,VER):
]
)
+
################################################
# MAIN
################################################
@@ -422,7 +455,7 @@ def main():
args = my_parser.parse_args()
vData = getVersion()
- VER = vData['version']
+ VER = vData["version"]
if args.mode == None:
throw_parse_error(
@@ -498,7 +531,7 @@ def main():
sysinfo_exists = os.path.isfile(sysinfo_path)
if not sysinfo_exists:
print("sysinfo not found")
- gen_sysinfo(args.name, args.path, [], False)
+ gen_sysinfo(args.name, args.path, [], args.remaining, False)
# does app data exist?
print("Checking for pmc_perf.csv in ", args.path)
@@ -512,7 +545,7 @@ def main():
if not args.remaining:
throw_parse_error(
my_parser,
- "Cannot find existing application data.\nAttempting to generate application data from -c.\n--cmd option is required to generate application data.",
+ "Cannot find existing application data.\nAttempting to generate application data from -- .\n-- option is required to generate application data.",
)
else:
characterize_app(args.path, args.remaining, args.verbose)
@@ -522,7 +555,7 @@ def main():
# Profile only
else:
print("\n-------------\nProfile only\n-------------\n")
- omniperf_profile(args,VER)
+ omniperf_profile(args, VER)
##############
# DATABASE MODE
@@ -583,7 +616,7 @@ def main():
##############
if args.mode == "analyze":
if args.list_metrics:
- omniperf_cli(args)
+ analyze(args)
else:
if args.path:
if ".." in str(args.path):
@@ -607,7 +640,7 @@ def main():
my_parser, dir[0]
) # Verify workload is valid before analyzing
- omniperf_cli(args)
+ analyze(args)
else:
throw_parse_error(
my_parser,
diff --git a/src/omniperf_cli/README.md b/src/omniperf_analyze/README.md
similarity index 93%
rename from src/omniperf_cli/README.md
rename to src/omniperf_analyze/README.md
index 2b6b5586b8..9d544a48e7 100644
--- a/src/omniperf_cli/README.md
+++ b/src/omniperf_analyze/README.md
@@ -1,6 +1,6 @@
# Description
-omniperf_cli.py is a post-processing profiling tool with the raw data collected from omniperf.
+omniperf_analyze.py is a post-processing profiling tool with the raw data collected from omniperf.
## Features
diff --git a/src/omniperf_cli/assets/default.css b/src/omniperf_analyze/assets/default.css
similarity index 100%
rename from src/omniperf_cli/assets/default.css
rename to src/omniperf_analyze/assets/default.css
diff --git a/src/omniperf_cli/assets/font-awesome/css/font-awesome.css b/src/omniperf_analyze/assets/font-awesome/css/font-awesome.css
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/css/font-awesome.css
rename to src/omniperf_analyze/assets/font-awesome/css/font-awesome.css
diff --git a/src/omniperf_cli/assets/font-awesome/css/font-awesome.min.css b/src/omniperf_analyze/assets/font-awesome/css/font-awesome.min.css
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/css/font-awesome.min.css
rename to src/omniperf_analyze/assets/font-awesome/css/font-awesome.min.css
diff --git a/src/omniperf_cli/assets/font-awesome/fonts/FontAwesome.otf b/src/omniperf_analyze/assets/font-awesome/fonts/FontAwesome.otf
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/fonts/FontAwesome.otf
rename to src/omniperf_analyze/assets/font-awesome/fonts/FontAwesome.otf
diff --git a/src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.eot b/src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.eot
rename to src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.eot
diff --git a/src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.svg b/src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.svg
rename to src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.svg
diff --git a/src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.ttf b/src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.ttf
rename to src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.ttf
diff --git a/src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.woff b/src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/fonts/fontawesome-webfont.woff
rename to src/omniperf_analyze/assets/font-awesome/fonts/fontawesome-webfont.woff
diff --git a/src/omniperf_cli/assets/font-awesome/less/bordered-pulled.less b/src/omniperf_analyze/assets/font-awesome/less/bordered-pulled.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/bordered-pulled.less
rename to src/omniperf_analyze/assets/font-awesome/less/bordered-pulled.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/core.less b/src/omniperf_analyze/assets/font-awesome/less/core.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/core.less
rename to src/omniperf_analyze/assets/font-awesome/less/core.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/fixed-width.less b/src/omniperf_analyze/assets/font-awesome/less/fixed-width.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/fixed-width.less
rename to src/omniperf_analyze/assets/font-awesome/less/fixed-width.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/font-awesome.less b/src/omniperf_analyze/assets/font-awesome/less/font-awesome.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/font-awesome.less
rename to src/omniperf_analyze/assets/font-awesome/less/font-awesome.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/icons.less b/src/omniperf_analyze/assets/font-awesome/less/icons.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/icons.less
rename to src/omniperf_analyze/assets/font-awesome/less/icons.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/larger.less b/src/omniperf_analyze/assets/font-awesome/less/larger.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/larger.less
rename to src/omniperf_analyze/assets/font-awesome/less/larger.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/list.less b/src/omniperf_analyze/assets/font-awesome/less/list.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/list.less
rename to src/omniperf_analyze/assets/font-awesome/less/list.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/mixins.less b/src/omniperf_analyze/assets/font-awesome/less/mixins.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/mixins.less
rename to src/omniperf_analyze/assets/font-awesome/less/mixins.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/path.less b/src/omniperf_analyze/assets/font-awesome/less/path.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/path.less
rename to src/omniperf_analyze/assets/font-awesome/less/path.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/rotated-flipped.less b/src/omniperf_analyze/assets/font-awesome/less/rotated-flipped.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/rotated-flipped.less
rename to src/omniperf_analyze/assets/font-awesome/less/rotated-flipped.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/spinning.less b/src/omniperf_analyze/assets/font-awesome/less/spinning.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/spinning.less
rename to src/omniperf_analyze/assets/font-awesome/less/spinning.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/stacked.less b/src/omniperf_analyze/assets/font-awesome/less/stacked.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/stacked.less
rename to src/omniperf_analyze/assets/font-awesome/less/stacked.less
diff --git a/src/omniperf_cli/assets/font-awesome/less/variables.less b/src/omniperf_analyze/assets/font-awesome/less/variables.less
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/less/variables.less
rename to src/omniperf_analyze/assets/font-awesome/less/variables.less
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_bordered-pulled.scss b/src/omniperf_analyze/assets/font-awesome/scss/_bordered-pulled.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_bordered-pulled.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_bordered-pulled.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_core.scss b/src/omniperf_analyze/assets/font-awesome/scss/_core.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_core.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_core.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_fixed-width.scss b/src/omniperf_analyze/assets/font-awesome/scss/_fixed-width.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_fixed-width.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_fixed-width.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_icons.scss b/src/omniperf_analyze/assets/font-awesome/scss/_icons.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_icons.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_icons.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_larger.scss b/src/omniperf_analyze/assets/font-awesome/scss/_larger.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_larger.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_larger.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_list.scss b/src/omniperf_analyze/assets/font-awesome/scss/_list.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_list.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_list.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_mixins.scss b/src/omniperf_analyze/assets/font-awesome/scss/_mixins.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_mixins.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_mixins.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_path.scss b/src/omniperf_analyze/assets/font-awesome/scss/_path.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_path.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_path.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_rotated-flipped.scss b/src/omniperf_analyze/assets/font-awesome/scss/_rotated-flipped.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_rotated-flipped.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_rotated-flipped.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_spinning.scss b/src/omniperf_analyze/assets/font-awesome/scss/_spinning.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_spinning.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_spinning.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_stacked.scss b/src/omniperf_analyze/assets/font-awesome/scss/_stacked.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_stacked.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_stacked.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/_variables.scss b/src/omniperf_analyze/assets/font-awesome/scss/_variables.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/_variables.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/_variables.scss
diff --git a/src/omniperf_cli/assets/font-awesome/scss/font-awesome.scss b/src/omniperf_analyze/assets/font-awesome/scss/font-awesome.scss
similarity index 100%
rename from src/omniperf_cli/assets/font-awesome/scss/font-awesome.scss
rename to src/omniperf_analyze/assets/font-awesome/scss/font-awesome.scss
diff --git a/src/omniperf_cli/assets/fontello/css/animation.css b/src/omniperf_analyze/assets/fontello/css/animation.css
similarity index 100%
rename from src/omniperf_cli/assets/fontello/css/animation.css
rename to src/omniperf_analyze/assets/fontello/css/animation.css
diff --git a/src/omniperf_cli/assets/fontello/css/fontello-codes.css b/src/omniperf_analyze/assets/fontello/css/fontello-codes.css
similarity index 100%
rename from src/omniperf_cli/assets/fontello/css/fontello-codes.css
rename to src/omniperf_analyze/assets/fontello/css/fontello-codes.css
diff --git a/src/omniperf_cli/assets/fontello/css/fontello-embedded.css b/src/omniperf_analyze/assets/fontello/css/fontello-embedded.css
similarity index 100%
rename from src/omniperf_cli/assets/fontello/css/fontello-embedded.css
rename to src/omniperf_analyze/assets/fontello/css/fontello-embedded.css
diff --git a/src/omniperf_cli/assets/fontello/css/fontello-ie7-codes.css b/src/omniperf_analyze/assets/fontello/css/fontello-ie7-codes.css
similarity index 100%
rename from src/omniperf_cli/assets/fontello/css/fontello-ie7-codes.css
rename to src/omniperf_analyze/assets/fontello/css/fontello-ie7-codes.css
diff --git a/src/omniperf_cli/assets/fontello/css/fontello-ie7.css b/src/omniperf_analyze/assets/fontello/css/fontello-ie7.css
similarity index 100%
rename from src/omniperf_cli/assets/fontello/css/fontello-ie7.css
rename to src/omniperf_analyze/assets/fontello/css/fontello-ie7.css
diff --git a/src/omniperf_cli/assets/fontello/css/fontello.css b/src/omniperf_analyze/assets/fontello/css/fontello.css
similarity index 100%
rename from src/omniperf_cli/assets/fontello/css/fontello.css
rename to src/omniperf_analyze/assets/fontello/css/fontello.css
diff --git a/src/omniperf_cli/assets/fontello/font/fontello.eot b/src/omniperf_analyze/assets/fontello/font/fontello.eot
similarity index 100%
rename from src/omniperf_cli/assets/fontello/font/fontello.eot
rename to src/omniperf_analyze/assets/fontello/font/fontello.eot
diff --git a/src/omniperf_cli/assets/fontello/font/fontello.svg b/src/omniperf_analyze/assets/fontello/font/fontello.svg
similarity index 100%
rename from src/omniperf_cli/assets/fontello/font/fontello.svg
rename to src/omniperf_analyze/assets/fontello/font/fontello.svg
diff --git a/src/omniperf_cli/assets/fontello/font/fontello.ttf b/src/omniperf_analyze/assets/fontello/font/fontello.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fontello/font/fontello.ttf
rename to src/omniperf_analyze/assets/fontello/font/fontello.ttf
diff --git a/src/omniperf_cli/assets/fontello/font/fontello.woff b/src/omniperf_analyze/assets/fontello/font/fontello.woff
similarity index 100%
rename from src/omniperf_cli/assets/fontello/font/fontello.woff
rename to src/omniperf_analyze/assets/fontello/font/fontello.woff
diff --git a/src/omniperf_cli/assets/fonts.css b/src/omniperf_analyze/assets/fonts.css
similarity index 100%
rename from src/omniperf_cli/assets/fonts.css
rename to src/omniperf_analyze/assets/fonts.css
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.eot b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.eot
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.svg b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.svg
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.ttf b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.woff b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-bold-webfont.woff
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-bold-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.eot b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.eot
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.svg b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.svg
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.ttf b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.woff b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-italic-webfont.woff
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-italic-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.eot b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.eot
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.svg b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.svg
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.ttf b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.woff b/src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/librebaskerville/librebaskerville-regular-webfont.woff
rename to src/omniperf_analyze/assets/fonts/librebaskerville/librebaskerville-regular-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Bold-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Bold-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-BoldItalic-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-BoldItalic-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBold-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBold-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-ExtraBoldItalic-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Italic-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Italic-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Light-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Light-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-LightItalic-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-LightItalic-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Regular-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Regular-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-Semibold-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-Semibold-webfont.woff
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.eot b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.eot
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.eot
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.eot
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.svg b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.svg
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.svg
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.svg
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.ttf b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.ttf
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.ttf
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.ttf
diff --git a/src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.woff b/src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.woff
similarity index 100%
rename from src/omniperf_cli/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.woff
rename to src/omniperf_analyze/assets/fonts/opensans/OpenSans-SemiboldItalic-webfont.woff
diff --git a/src/omniperf_cli/assets/layout.css b/src/omniperf_analyze/assets/layout.css
similarity index 100%
rename from src/omniperf_cli/assets/layout.css
rename to src/omniperf_analyze/assets/layout.css
diff --git a/src/omniperf_cli/assets/magnific-popup.css b/src/omniperf_analyze/assets/magnific-popup.css
similarity index 100%
rename from src/omniperf_cli/assets/magnific-popup.css
rename to src/omniperf_analyze/assets/magnific-popup.css
diff --git a/src/omniperf_cli/assets/media-queries.css b/src/omniperf_analyze/assets/media-queries.css
similarity index 100%
rename from src/omniperf_cli/assets/media-queries.css
rename to src/omniperf_analyze/assets/media-queries.css
diff --git a/src/omniperf_cli/configs/gfx906/0000_top_stat.yaml b/src/omniperf_analyze/configs/gfx906/0000_top_stat.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/0000_top_stat.yaml
rename to src/omniperf_analyze/configs/gfx906/0000_top_stat.yaml
diff --git a/src/omniperf_cli/configs/gfx906/0100_system_info.yaml b/src/omniperf_analyze/configs/gfx906/0100_system_info.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/0100_system_info.yaml
rename to src/omniperf_analyze/configs/gfx906/0100_system_info.yaml
diff --git a/src/omniperf_cli/configs/gfx906/0200_system-speed-of-light.yaml b/src/omniperf_analyze/configs/gfx906/0200_system-speed-of-light.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/0200_system-speed-of-light.yaml
rename to src/omniperf_analyze/configs/gfx906/0200_system-speed-of-light.yaml
diff --git a/src/omniperf_cli/configs/gfx906/0500_command-processor.yaml b/src/omniperf_analyze/configs/gfx906/0500_command-processor.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/0500_command-processor.yaml
rename to src/omniperf_analyze/configs/gfx906/0500_command-processor.yaml
diff --git a/src/omniperf_cli/configs/gfx906/0600_shader-processor-input.yaml b/src/omniperf_analyze/configs/gfx906/0600_shader-processor-input.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/0600_shader-processor-input.yaml
rename to src/omniperf_analyze/configs/gfx906/0600_shader-processor-input.yaml
diff --git a/src/omniperf_cli/configs/gfx906/0700_wavefront-launch.yaml b/src/omniperf_analyze/configs/gfx906/0700_wavefront-launch.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/0700_wavefront-launch.yaml
rename to src/omniperf_analyze/configs/gfx906/0700_wavefront-launch.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1000_compute-unit-instruction-mix.yaml b/src/omniperf_analyze/configs/gfx906/1000_compute-unit-instruction-mix.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1000_compute-unit-instruction-mix.yaml
rename to src/omniperf_analyze/configs/gfx906/1000_compute-unit-instruction-mix.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1100_compute-unit-compute-pipeline.yaml b/src/omniperf_analyze/configs/gfx906/1100_compute-unit-compute-pipeline.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1100_compute-unit-compute-pipeline.yaml
rename to src/omniperf_analyze/configs/gfx906/1100_compute-unit-compute-pipeline.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1200_lds.yaml b/src/omniperf_analyze/configs/gfx906/1200_lds.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1200_lds.yaml
rename to src/omniperf_analyze/configs/gfx906/1200_lds.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1300_instruction-cache.yaml b/src/omniperf_analyze/configs/gfx906/1300_instruction-cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1300_instruction-cache.yaml
rename to src/omniperf_analyze/configs/gfx906/1300_instruction-cache.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1400_constant-cache.yaml b/src/omniperf_analyze/configs/gfx906/1400_constant-cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1400_constant-cache.yaml
rename to src/omniperf_analyze/configs/gfx906/1400_constant-cache.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1500_TA_and_TD.yaml b/src/omniperf_analyze/configs/gfx906/1500_TA_and_TD.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1500_TA_and_TD.yaml
rename to src/omniperf_analyze/configs/gfx906/1500_TA_and_TD.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1600_L1_cache.yaml b/src/omniperf_analyze/configs/gfx906/1600_L1_cache.yaml
similarity index 93%
rename from src/omniperf_cli/configs/gfx906/1600_L1_cache.yaml
rename to src/omniperf_analyze/configs/gfx906/1600_L1_cache.yaml
index b2e950f476..a25e831de3 100644
--- a/src/omniperf_cli/configs/gfx906/1600_L1_cache.yaml
+++ b/src/omniperf_analyze/configs/gfx906/1600_L1_cache.yaml
@@ -25,8 +25,8 @@ Panel Config:
!= 0) else None))
tips:
Cache BW:
- value: AVG(((100 * TCP_TOTAL_CACHE_ACCESSES_sum) / ((GRBM_GUI_ACTIVE * $numCU)
- * 4)))
+ value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs))))
+ / ((($sclk / 1000) * 64) * $numCU))
tips:
Cache Hit:
value: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
@@ -130,6 +130,12 @@ Panel Config:
/ $denom))
unit: (Req + $normUnit)
tips:
+ Cache BW:
+ avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ unit: GB/s
+ tips:
Cache Accesses:
avg: AVG((TCP_TOTAL_CACHE_ACCESSES_sum / $denom))
min: MIN((TCP_TOTAL_CACHE_ACCESSES_sum / $denom))
@@ -169,7 +175,13 @@ Panel Config:
max: MAX((TCP_TOTAL_WRITEBACK_INVALIDATES_sum / $denom))
unit: ( + $normUnit)
tips:
- L1-TCR Read:
+ L1-L2 BW:
+ avg: AVG(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ min: MIN(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ max: MAX(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ unit: (Bytes + $normUnit)
+ tips:
+ L1-L2 Read:
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
max: MAX((TCP_TCC_READ_REQ_sum / $denom))
diff --git a/src/omniperf_cli/configs/gfx906/1700_L2_cache.yaml b/src/omniperf_analyze/configs/gfx906/1700_L2_cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1700_L2_cache.yaml
rename to src/omniperf_analyze/configs/gfx906/1700_L2_cache.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1800_L2_cache_per_channel.yaml b/src/omniperf_analyze/configs/gfx906/1800_L2_cache_per_channel.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1800_L2_cache_per_channel.yaml
rename to src/omniperf_analyze/configs/gfx906/1800_L2_cache_per_channel.yaml
diff --git a/src/omniperf_cli/configs/gfx906/1900_memory_chart.yaml b/src/omniperf_analyze/configs/gfx906/1900_memory_chart.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/1900_memory_chart.yaml
rename to src/omniperf_analyze/configs/gfx906/1900_memory_chart.yaml
diff --git a/src/omniperf_cli/configs/gfx906/2000_kernels.yaml b/src/omniperf_analyze/configs/gfx906/2000_kernels.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx906/2000_kernels.yaml
rename to src/omniperf_analyze/configs/gfx906/2000_kernels.yaml
diff --git a/src/omniperf_cli/configs/gfx908/0000_top_stat.yaml b/src/omniperf_analyze/configs/gfx908/0000_top_stat.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/0000_top_stat.yaml
rename to src/omniperf_analyze/configs/gfx908/0000_top_stat.yaml
diff --git a/src/omniperf_cli/configs/gfx908/0100_system_info.yaml b/src/omniperf_analyze/configs/gfx908/0100_system_info.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/0100_system_info.yaml
rename to src/omniperf_analyze/configs/gfx908/0100_system_info.yaml
diff --git a/src/omniperf_cli/configs/gfx908/0200_system-speed-of-light.yaml b/src/omniperf_analyze/configs/gfx908/0200_system-speed-of-light.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/0200_system-speed-of-light.yaml
rename to src/omniperf_analyze/configs/gfx908/0200_system-speed-of-light.yaml
diff --git a/src/omniperf_cli/configs/gfx908/0500_command-processor.yaml b/src/omniperf_analyze/configs/gfx908/0500_command-processor.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/0500_command-processor.yaml
rename to src/omniperf_analyze/configs/gfx908/0500_command-processor.yaml
diff --git a/src/omniperf_cli/configs/gfx908/0600_shader-processor-input.yaml b/src/omniperf_analyze/configs/gfx908/0600_shader-processor-input.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/0600_shader-processor-input.yaml
rename to src/omniperf_analyze/configs/gfx908/0600_shader-processor-input.yaml
diff --git a/src/omniperf_cli/configs/gfx908/0700_wavefront-launch.yaml b/src/omniperf_analyze/configs/gfx908/0700_wavefront-launch.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/0700_wavefront-launch.yaml
rename to src/omniperf_analyze/configs/gfx908/0700_wavefront-launch.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1000_compute-unit-instruction-mix.yaml b/src/omniperf_analyze/configs/gfx908/1000_compute-unit-instruction-mix.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1000_compute-unit-instruction-mix.yaml
rename to src/omniperf_analyze/configs/gfx908/1000_compute-unit-instruction-mix.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1100_compute-unit-compute-pipeline.yaml b/src/omniperf_analyze/configs/gfx908/1100_compute-unit-compute-pipeline.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1100_compute-unit-compute-pipeline.yaml
rename to src/omniperf_analyze/configs/gfx908/1100_compute-unit-compute-pipeline.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1200_lds.yaml b/src/omniperf_analyze/configs/gfx908/1200_lds.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1200_lds.yaml
rename to src/omniperf_analyze/configs/gfx908/1200_lds.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1300_instruction-cache.yaml b/src/omniperf_analyze/configs/gfx908/1300_instruction-cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1300_instruction-cache.yaml
rename to src/omniperf_analyze/configs/gfx908/1300_instruction-cache.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1400_constant-cache.yaml b/src/omniperf_analyze/configs/gfx908/1400_constant-cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1400_constant-cache.yaml
rename to src/omniperf_analyze/configs/gfx908/1400_constant-cache.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1500_TA_and_TD.yaml b/src/omniperf_analyze/configs/gfx908/1500_TA_and_TD.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1500_TA_and_TD.yaml
rename to src/omniperf_analyze/configs/gfx908/1500_TA_and_TD.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1600_L1_cache.yaml b/src/omniperf_analyze/configs/gfx908/1600_L1_cache.yaml
similarity index 93%
rename from src/omniperf_cli/configs/gfx908/1600_L1_cache.yaml
rename to src/omniperf_analyze/configs/gfx908/1600_L1_cache.yaml
index 704ec0b6bb..f609ee86c2 100644
--- a/src/omniperf_cli/configs/gfx908/1600_L1_cache.yaml
+++ b/src/omniperf_analyze/configs/gfx908/1600_L1_cache.yaml
@@ -25,8 +25,8 @@ Panel Config:
!= 0) else None))
tips:
Cache BW:
- value: AVG(((100 * TCP_TOTAL_CACHE_ACCESSES_sum) / ((GRBM_GUI_ACTIVE * $numCU)
- * 4)))
+ value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs))))
+ / ((($sclk / 1000) * 64) * $numCU))
tips:
Cache Hit:
value: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
@@ -129,7 +129,13 @@ Panel Config:
max: MAX(((TCP_TOTAL_ATOMIC_WITH_RET_sum + TCP_TOTAL_ATOMIC_WITHOUT_RET_sum)
/ $denom))
unit: (Req + $normUnit)
- tips:
+ tips:
+ Cache BW:
+ avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ unit: GB/s
+ tips:
Cache Accesses:
avg: AVG((TCP_TOTAL_CACHE_ACCESSES_sum / $denom))
min: MIN((TCP_TOTAL_CACHE_ACCESSES_sum / $denom))
@@ -169,7 +175,13 @@ Panel Config:
max: MAX((TCP_TOTAL_WRITEBACK_INVALIDATES_sum / $denom))
unit: ( + $normUnit)
tips:
- L1-TCR Read:
+ L1-L2 BW:
+ avg: AVG(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ min: MIN(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ max: MAX(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ unit: (Bytes + $normUnit)
+ tips:
+ L1-L2 Read:
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
max: MAX((TCP_TCC_READ_REQ_sum / $denom))
diff --git a/src/omniperf_cli/configs/gfx908/1700_L2_cache.yaml b/src/omniperf_analyze/configs/gfx908/1700_L2_cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1700_L2_cache.yaml
rename to src/omniperf_analyze/configs/gfx908/1700_L2_cache.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1800_L2_cache_per_channel.yaml b/src/omniperf_analyze/configs/gfx908/1800_L2_cache_per_channel.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1800_L2_cache_per_channel.yaml
rename to src/omniperf_analyze/configs/gfx908/1800_L2_cache_per_channel.yaml
diff --git a/src/omniperf_cli/configs/gfx908/1900_memory_chart.yaml b/src/omniperf_analyze/configs/gfx908/1900_memory_chart.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/1900_memory_chart.yaml
rename to src/omniperf_analyze/configs/gfx908/1900_memory_chart.yaml
diff --git a/src/omniperf_cli/configs/gfx908/2000_kernels.yaml b/src/omniperf_analyze/configs/gfx908/2000_kernels.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx908/2000_kernels.yaml
rename to src/omniperf_analyze/configs/gfx908/2000_kernels.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/0000_top_stat.yaml b/src/omniperf_analyze/configs/gfx90a/0000_top_stat.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/0000_top_stat.yaml
rename to src/omniperf_analyze/configs/gfx90a/0000_top_stat.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/0100_system_info.yaml b/src/omniperf_analyze/configs/gfx90a/0100_system_info.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/0100_system_info.yaml
rename to src/omniperf_analyze/configs/gfx90a/0100_system_info.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/0200_system-speed-of-light.yaml b/src/omniperf_analyze/configs/gfx90a/0200_system-speed-of-light.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/0200_system-speed-of-light.yaml
rename to src/omniperf_analyze/configs/gfx90a/0200_system-speed-of-light.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/0500_command-processor.yaml b/src/omniperf_analyze/configs/gfx90a/0500_command-processor.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/0500_command-processor.yaml
rename to src/omniperf_analyze/configs/gfx90a/0500_command-processor.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/0600_shader-processor-input.yaml b/src/omniperf_analyze/configs/gfx90a/0600_shader-processor-input.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/0600_shader-processor-input.yaml
rename to src/omniperf_analyze/configs/gfx90a/0600_shader-processor-input.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/0700_wavefront-launch.yaml b/src/omniperf_analyze/configs/gfx90a/0700_wavefront-launch.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/0700_wavefront-launch.yaml
rename to src/omniperf_analyze/configs/gfx90a/0700_wavefront-launch.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1000_compute-unit-instruction-mix.yaml b/src/omniperf_analyze/configs/gfx90a/1000_compute-unit-instruction-mix.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1000_compute-unit-instruction-mix.yaml
rename to src/omniperf_analyze/configs/gfx90a/1000_compute-unit-instruction-mix.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1100_compute-unit-compute-pipeline.yaml b/src/omniperf_analyze/configs/gfx90a/1100_compute-unit-compute-pipeline.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1100_compute-unit-compute-pipeline.yaml
rename to src/omniperf_analyze/configs/gfx90a/1100_compute-unit-compute-pipeline.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1200_lds.yaml b/src/omniperf_analyze/configs/gfx90a/1200_lds.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1200_lds.yaml
rename to src/omniperf_analyze/configs/gfx90a/1200_lds.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1300_instruction-cache.yaml b/src/omniperf_analyze/configs/gfx90a/1300_instruction-cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1300_instruction-cache.yaml
rename to src/omniperf_analyze/configs/gfx90a/1300_instruction-cache.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1400_constant-cache.yaml b/src/omniperf_analyze/configs/gfx90a/1400_constant-cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1400_constant-cache.yaml
rename to src/omniperf_analyze/configs/gfx90a/1400_constant-cache.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1500_TA_and_TD.yaml b/src/omniperf_analyze/configs/gfx90a/1500_TA_and_TD.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1500_TA_and_TD.yaml
rename to src/omniperf_analyze/configs/gfx90a/1500_TA_and_TD.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1600_L1_cache.yaml b/src/omniperf_analyze/configs/gfx90a/1600_L1_cache.yaml
similarity index 93%
rename from src/omniperf_cli/configs/gfx90a/1600_L1_cache.yaml
rename to src/omniperf_analyze/configs/gfx90a/1600_L1_cache.yaml
index d056c5883c..acf0d58bd1 100644
--- a/src/omniperf_cli/configs/gfx90a/1600_L1_cache.yaml
+++ b/src/omniperf_analyze/configs/gfx90a/1600_L1_cache.yaml
@@ -25,8 +25,8 @@ Panel Config:
!= 0) else None))
tips:
Cache BW:
- value: AVG(((100 * TCP_TOTAL_CACHE_ACCESSES_sum) / ((GRBM_GUI_ACTIVE * $numCU)
- * 4)))
+ value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs))))
+ / ((($sclk / 1000) * 64) * $numCU))
tips:
Cache Hit:
value: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
@@ -129,7 +129,13 @@ Panel Config:
max: MAX(((TCP_TOTAL_ATOMIC_WITH_RET_sum + TCP_TOTAL_ATOMIC_WITHOUT_RET_sum)
/ $denom))
unit: (Req + $normUnit)
- tips:
+ tips:
+ Cache BW:
+ avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (EndNs - BeginNs)))
+ unit: GB/s
+ tips:
Cache Accesses:
avg: AVG((TCP_TOTAL_CACHE_ACCESSES_sum / $denom))
min: MIN((TCP_TOTAL_CACHE_ACCESSES_sum / $denom))
@@ -169,7 +175,13 @@ Panel Config:
max: MAX((TCP_TOTAL_WRITEBACK_INVALIDATES_sum / $denom))
unit: (Req + $normUnit)
tips:
- L1-TCR Read:
+ L1-L2 BW:
+ avg: AVG(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ min: MIN(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ max: MAX(((64 * (TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
+ unit: (Bytes + $normUnit)
+ tips:
+ L1-L2 Read:
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
max: MAX((TCP_TCC_READ_REQ_sum / $denom))
diff --git a/src/omniperf_cli/configs/gfx90a/1700_L2_cache.yaml b/src/omniperf_analyze/configs/gfx90a/1700_L2_cache.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1700_L2_cache.yaml
rename to src/omniperf_analyze/configs/gfx90a/1700_L2_cache.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1800_L2_cache_per_channel.yaml b/src/omniperf_analyze/configs/gfx90a/1800_L2_cache_per_channel.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1800_L2_cache_per_channel.yaml
rename to src/omniperf_analyze/configs/gfx90a/1800_L2_cache_per_channel.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/1900_memory_chart.yaml b/src/omniperf_analyze/configs/gfx90a/1900_memory_chart.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/1900_memory_chart.yaml
rename to src/omniperf_analyze/configs/gfx90a/1900_memory_chart.yaml
diff --git a/src/omniperf_cli/configs/gfx90a/2000_kernels.yaml b/src/omniperf_analyze/configs/gfx90a/2000_kernels.yaml
similarity index 100%
rename from src/omniperf_cli/configs/gfx90a/2000_kernels.yaml
rename to src/omniperf_analyze/configs/gfx90a/2000_kernels.yaml
diff --git a/src/omniperf_cli/configs/panel_config_template.yaml b/src/omniperf_analyze/configs/panel_config_template.yaml
similarity index 100%
rename from src/omniperf_cli/configs/panel_config_template.yaml
rename to src/omniperf_analyze/configs/panel_config_template.yaml
diff --git a/src/omniperf_cli/convertor/mongodb/README.md b/src/omniperf_analyze/convertor/mongodb/README.md
similarity index 76%
rename from src/omniperf_cli/convertor/mongodb/README.md
rename to src/omniperf_analyze/convertor/mongodb/README.md
index 7fedc3f759..755ef3fa68 100644
--- a/src/omniperf_cli/convertor/mongodb/README.md
+++ b/src/omniperf_analyze/convertor/mongodb/README.md
@@ -1,6 +1,6 @@
# Description
-The convert is designed to convert major core metric definitions from Omniperf to omniperf_cli. It depends on the syntax and usage of Grafana and MongoDB query in Omniperf. We are not intending to write a full parser of Grafana/MongoDB.
+The convert is designed to convert major core metric definitions from Omniperf to omniperf_analyze. It depends on the syntax and usage of Grafana and MongoDB query in Omniperf. We are not intending to write a full parser of Grafana/MongoDB.
Originally, we hope to make it one-stop script, a.k.a, "convert -s 0". However, it seems 2 stages conversion is a good practice.
@@ -15,7 +15,7 @@ Originally, we hope to make it one-stop script, a.k.a, "convert -s 0". However,
- `./convert -s 2`
- `diff ./converted ./converted_bak` to make sure all the changes as your expectation.
- Copy all metric tables from ./converted to ../../configs/gfx90a/ manually ONE by ONE.
-- Run a basic test to verify the config, i.e., `omniperf_cli.py -d sample/mi200`
+- Run a basic test to verify the config, i.e., `omniperf_analyze.py -d sample/mi200`
- `diff ../../configs/gfx90a/ ../../configs/gfx908/`, and update the gfx908 configs accordingly.
- `diff ../../configs/gfx90a/ ../../configs/gfx906/`, and update the gfx906 configs accordingly.
-- Run a basic test to verify the config, i.e., `omniperf_cli.py -d sample/mi50 -d sample/mi100 -d sample/mi200`
+- Run a basic test to verify the config, i.e., `omniperf_analyze.py -d sample/mi50 -d sample/mi100 -d sample/mi200`
diff --git a/src/omniperf_cli/convertor/mongodb/convert b/src/omniperf_analyze/convertor/mongodb/convert
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/convert
rename to src/omniperf_analyze/convertor/mongodb/convert
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/00_id_159_SYSTEM-INFO.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/00_id_159_SYSTEM-INFO.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/00_id_159_SYSTEM-INFO.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/00_id_159_SYSTEM-INFO.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/07_id_213_TOP-KERNELS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/07_id_213_TOP-KERNELS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/07_id_213_TOP-KERNELS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/07_id_213_TOP-KERNELS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/08_id_251_TOP-DISPATCHES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/08_id_251_TOP-DISPATCHES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/08_id_251_TOP-DISPATCHES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/08_id_251_TOP-DISPATCHES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/18_id_106_SPI-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/18_id_106_SPI-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/18_id_106_SPI-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/18_id_106_SPI-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/30_id_257_PIPELINE-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/30_id_257_PIPELINE-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/30_id_257_PIPELINE-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/30_id_257_PIPELINE-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/35_id_100_LDS-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/35_id_100_LDS-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/35_id_100_LDS-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/35_id_100_LDS-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/44_id_132_TA.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/44_id_132_TA.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/44_id_132_TA.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/44_id_132_TA.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/45_id_134_TD.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/45_id_134_TD.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/45_id_134_TD.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/45_id_134_TD.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/modified_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/modified_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/modified_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/modified_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/00_id_159_SYSTEM-INFO.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/00_id_159_SYSTEM-INFO.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/00_id_159_SYSTEM-INFO.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/00_id_159_SYSTEM-INFO.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/02_id_110_SPEED-OF-LIGHT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/03_id_175_DISPATCH-IDS-CURRENT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/04_id_215_DISPATCH-IDS-BASELINE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/06_id_157_KERNEL-TIME-HISTOGRAM.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/07_id_213_TOP-KERNELS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/07_id_213_TOP-KERNELS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/07_id_213_TOP-KERNELS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/07_id_213_TOP-KERNELS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/08_id_251_TOP-DISPATCHES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/08_id_251_TOP-DISPATCHES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/08_id_251_TOP-DISPATCHES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/08_id_251_TOP-DISPATCHES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/10_id_285_MEMORY-CHART-NORMALIZATION-NORMUNIT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/12_id_253_EMPIRICAL-ROOFLINE-FP32FP64-MI200.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/13_id_312_EMPIRICAL-ROOFLINE-FP16INT8-MI200.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/15_id_6_COMMAND-PROCESSOR-FETCHER.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/16_id_4_COMMAND-PROCESSOR-COMPUTE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/18_id_106_SPI-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/18_id_106_SPI-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/18_id_106_SPI-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/18_id_106_SPI-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/19_id_104_SPI-RESOURCE-ALLOCATION.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/21_id_10_WAVEFRONT-LAUNCH-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/22_id_34_WAVEFRONT-RUNTIME-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/24_id_12_INSTRUCTION-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/25_id_24_VALU-ARITHMETIC-INSTR-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/26_id_275_VMEM-INSTR-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/27_id_16_MFMA-ARITHMETIC-INSTR-MIX.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/29_id_211_SPEED-OF-LIGHT-COMPUTE-PIPELINE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/30_id_257_PIPELINE-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/30_id_257_PIPELINE-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/30_id_257_PIPELINE-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/30_id_257_PIPELINE-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/31_id_96_ARITHMETIC-OPERATIONS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/32_id_255_MEMORY-LATENCIES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/34_id_205_SPEED-OF-LIGHT-LDS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/35_id_100_LDS-STATS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/35_id_100_LDS-STATS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/35_id_100_LDS-STATS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/35_id_100_LDS-STATS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/37_id_48_SPEED-OF-LIGHT-INSTRUCTION-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/38_id_259_INSTRUCTION-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/40_id_54_SPEED-OF-LIGHT-SCALAR-L1D-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/41_id_261_SCALAR-L1D-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/42_id_52_SCALAR-L1D-CACHE-L2-INTERFACE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/44_id_132_TA.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/44_id_132_TA.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/44_id_132_TA.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/44_id_132_TA.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/45_id_134_TD.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/45_id_134_TD.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/45_id_134_TD.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/45_id_134_TD.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/47_id_165_SPEED-OF-LIGHT-VECTOR-L1D-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/48_id_116_VECTOR-L1D-CACHE-STALLS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/49_id_128_VECTOR-L1D-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/50_id_120_VECTOR-L1D-L2-TRANSACTIONS-REQ-NORMUNIT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/51_id_124_VECTOR-L1D-ADDR-TRANSLATION.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/53_id_64_SPEED-OF-LIGHT-L2-CACHE.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/54_id_62_L2-FABRIC-TRANSACTIONS.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/55_id_58_L2-CACHE-ACCESSES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/56_id_60_L2-FABRIC-INTERFACE-STALLS-CYCLES-NORMUNIT.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/72_id_68_L2-EA-READ-LATENCY-CHANNEL-0-15-CYCLES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/original_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json b/src/omniperf_analyze/convertor/mongodb/original_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/original_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json
rename to src/omniperf_analyze/convertor/mongodb/original_query/73_id_70_L2-EA-READ-LATENCY-CHANNEL-16-31-CYCLES.s0_original_query.json
diff --git a/src/omniperf_cli/convertor/mongodb/sample.json b/src/omniperf_analyze/convertor/mongodb/sample.json
similarity index 100%
rename from src/omniperf_cli/convertor/mongodb/sample.json
rename to src/omniperf_analyze/convertor/mongodb/sample.json
diff --git a/src/omniperf_cli/convertor/sql/1001_TA.config b/src/omniperf_analyze/convertor/sql/1001_TA.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/1001_TA.config
rename to src/omniperf_analyze/convertor/sql/1001_TA.config
diff --git a/src/omniperf_cli/convertor/sql/1002_TD.config b/src/omniperf_analyze/convertor/sql/1002_TD.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/1002_TD.config
rename to src/omniperf_analyze/convertor/sql/1002_TD.config
diff --git a/src/omniperf_cli/convertor/sql/100_System-speed-of-light.config b/src/omniperf_analyze/convertor/sql/100_System-speed-of-light.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/100_System-speed-of-light.config
rename to src/omniperf_analyze/convertor/sql/100_System-speed-of-light.config
diff --git a/src/omniperf_cli/convertor/sql/401_CPF.config b/src/omniperf_analyze/convertor/sql/401_CPF.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/401_CPF.config
rename to src/omniperf_analyze/convertor/sql/401_CPF.config
diff --git a/src/omniperf_cli/convertor/sql/402_CPC.config b/src/omniperf_analyze/convertor/sql/402_CPC.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/402_CPC.config
rename to src/omniperf_analyze/convertor/sql/402_CPC.config
diff --git a/src/omniperf_cli/convertor/sql/501_SPI-Stats.config b/src/omniperf_analyze/convertor/sql/501_SPI-Stats.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/501_SPI-Stats.config
rename to src/omniperf_analyze/convertor/sql/501_SPI-Stats.config
diff --git a/src/omniperf_cli/convertor/sql/502_SPI-Resource-Allocation.config b/src/omniperf_analyze/convertor/sql/502_SPI-Resource-Allocation.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/502_SPI-Resource-Allocation.config
rename to src/omniperf_analyze/convertor/sql/502_SPI-Resource-Allocation.config
diff --git a/src/omniperf_cli/convertor/sql/801_LDS.config b/src/omniperf_analyze/convertor/sql/801_LDS.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/801_LDS.config
rename to src/omniperf_analyze/convertor/sql/801_LDS.config
diff --git a/src/omniperf_cli/convertor/sql/901_L1I_cache.config b/src/omniperf_analyze/convertor/sql/901_L1I_cache.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/901_L1I_cache.config
rename to src/omniperf_analyze/convertor/sql/901_L1I_cache.config
diff --git a/src/omniperf_cli/convertor/sql/902_L1K_cache.config b/src/omniperf_analyze/convertor/sql/902_L1K_cache.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/902_L1K_cache.config
rename to src/omniperf_analyze/convertor/sql/902_L1K_cache.config
diff --git a/src/omniperf_cli/convertor/sql/903_L1K_TC_Interface.config b/src/omniperf_analyze/convertor/sql/903_L1K_TC_Interface.config
similarity index 100%
rename from src/omniperf_cli/convertor/sql/903_L1K_TC_Interface.config
rename to src/omniperf_analyze/convertor/sql/903_L1K_TC_Interface.config
diff --git a/src/omniperf_cli/convertor/sql/convertor.py b/src/omniperf_analyze/convertor/sql/convertor.py
similarity index 100%
rename from src/omniperf_cli/convertor/sql/convertor.py
rename to src/omniperf_analyze/convertor/sql/convertor.py
diff --git a/src/omniperf_cli/convertor/sql/convertor2.py b/src/omniperf_analyze/convertor/sql/convertor2.py
similarity index 100%
rename from src/omniperf_cli/convertor/sql/convertor2.py
rename to src/omniperf_analyze/convertor/sql/convertor2.py
diff --git a/src/omniperf_cli/customized/fft/panel_000_top_stat.yaml b/src/omniperf_analyze/customized/fft/panel_000_top_stat.yaml
similarity index 100%
rename from src/omniperf_cli/customized/fft/panel_000_top_stat.yaml
rename to src/omniperf_analyze/customized/fft/panel_000_top_stat.yaml
diff --git a/src/omniperf_cli/customized/fft/panel_100_system-speed-of-light.yaml b/src/omniperf_analyze/customized/fft/panel_100_system-speed-of-light.yaml
similarity index 100%
rename from src/omniperf_cli/customized/fft/panel_100_system-speed-of-light.yaml
rename to src/omniperf_analyze/customized/fft/panel_100_system-speed-of-light.yaml
diff --git a/src/omniperf_cli/doc/baseline_comparison.png b/src/omniperf_analyze/doc/baseline_comparison.png
similarity index 100%
rename from src/omniperf_cli/doc/baseline_comparison.png
rename to src/omniperf_analyze/doc/baseline_comparison.png
diff --git a/src/omniperf_cli/doc/classes.png b/src/omniperf_analyze/doc/classes.png
similarity index 100%
rename from src/omniperf_cli/doc/classes.png
rename to src/omniperf_analyze/doc/classes.png
diff --git a/src/omniperf_cli/doc/main_flow.png b/src/omniperf_analyze/doc/main_flow.png
similarity index 100%
rename from src/omniperf_cli/doc/main_flow.png
rename to src/omniperf_analyze/doc/main_flow.png
diff --git a/src/omniperf_cli/omniperf_cli.py b/src/omniperf_analyze/omniperf_analyze.py
similarity index 61%
rename from src/omniperf_cli/omniperf_cli.py
rename to src/omniperf_analyze/omniperf_analyze.py
index 93b26bd618..1d9c18028e 100644
--- a/src/omniperf_cli/omniperf_cli.py
+++ b/src/omniperf_analyze/omniperf_analyze.py
@@ -24,7 +24,7 @@
"""
Quick run:
- omniperf_cli.py -d 1st_run_dir -d 2nd_run_dir -b 2
+ analyze.py -d 1st_run_dir -d 2nd_run_dir -b 2
Common abbreviations in the code:
df - pandas.dataframe
@@ -40,32 +40,21 @@ import sys
import argparse
import os.path
from pathlib import Path
+from omniperf_analyze.utils import parser, file_io
-def omniperf_cli(args):
- cur_root = Path(__file__).resolve()
-
- if args.dependency:
- print("pip3 install astunparse numpy tabulate pandas pyyaml")
- sys.exit(0)
-
+def initialize_run(args, normalization_filter=None):
import pandas as pd
from collections import OrderedDict
- from dataclasses import dataclass, field
+ from omniperf_analyze.utils import schema
from tabulate import tabulate
- # from utils import schema, parser, file_io, tty, plot
- from omniperf_cli.utils import schema, parser, file_io, tty
-
# Fixme: cur_root.parent.joinpath('soc_params')
soc_params_dir = os.path.join(os.path.dirname(__file__), "..", "soc_params")
-
soc_spec_df = file_io.load_soc_params(soc_params_dir)
- # NB: maybe create bak file for the old run before open it
- output = open(args.output_file, "w+") if args.output_file else sys.stdout
-
single_panel_config = file_io.is_single_panel_config(Path(args.config_dir))
+ global archConfigs
archConfigs = {}
for arch in file_io.supported_arch.keys():
ac = schema.ArchConfig()
@@ -99,8 +88,13 @@ def omniperf_cli(args):
)
sys.exit(0)
- for k, v in archConfigs.items():
- parser.build_metric_value_string(v.dfs, v.dfs_type, args.normal_unit)
+ # Use original normalization or user input from GUI
+ if not normalization_filter:
+ for k, v in archConfigs.items():
+ parser.build_metric_value_string(v.dfs, v.dfs_type, args.normal_unit)
+ else:
+ for k, v in archConfigs.items():
+ parser.build_metric_value_string(v.dfs, v.dfs_type, normalization_filter)
runs = OrderedDict()
@@ -128,6 +122,102 @@ def omniperf_cli(args):
w.soc_spec = file_io.get_soc_params(soc_spec_df, arch)
runs[d[0]] = w
+ # Return rather than referencing 'runs' globally (since used outside of file scope)
+ return runs
+
+
+def run_gui(args, runs):
+ import dash
+ from omniperf_analyze.utils import gui
+ import dash_bootstrap_components as dbc
+
+ app = dash.Dash(__name__, external_stylesheets=[dbc.themes.CYBORG])
+
+ if len(runs) == 1:
+ num_results = 10
+ file_io.create_df_kernel_top_stats(
+ args.path[0][0],
+ runs[args.path[0][0]].filter_gpu_ids,
+ runs[args.path[0][0]].filter_dispatch_ids,
+ args.time_unit,
+ num_results,
+ )
+ runs[args.path[0][0]].raw_pmc = file_io.create_df_pmc(
+ args.path[0][0]
+ ) # create mega df
+ parser.load_kernel_top(runs[args.path[0][0]], args.path[0][0])
+
+ input_filters = {
+ "kernel": runs[args.path[0][0]].filter_kernel_ids,
+ "gpu": runs[args.path[0][0]].filter_gpu_ids,
+ "dispatch": runs[args.path[0][0]].filter_dispatch_ids,
+ "normalization": args.normal_unit,
+ }
+
+ gui.build_layout(
+ app,
+ runs,
+ archConfigs["gfx90a"],
+ input_filters,
+ args.decimal,
+ args.time_unit,
+ args.cols,
+ str(args.path[0][0]),
+ args.g,
+ args.verbose,
+ args,
+ )
+ app.run_server(debug=False, host="0.0.0.0", port=args.gui)
+ else:
+ print("Multiple runs not supported yet")
+
+
+def run_cli(args, runs):
+ from omniperf_analyze.utils import tty
+
+ # NB:
+ # If we assume the panel layout for all archs are similar, it doesn't matter
+ # which archConfig passed into show_all function.
+ # After decide to how to manage kernels display patterns, we can revisit it.
+ for d in args.path:
+ num_results = 10
+ file_io.create_df_kernel_top_stats(
+ d[0],
+ runs[d[0]].filter_gpu_ids,
+ runs[d[0]].filter_dispatch_ids,
+ args.time_unit,
+ num_results,
+ )
+ runs[d[0]].raw_pmc = file_io.create_df_pmc(d[0]) # creates mega dataframe
+ is_gui = False
+ parser.load_table_data(
+ runs[d[0]], d[0], is_gui, args.g, args.verbose
+ ) # create the loaded table
+ if args.list_kernels:
+ tty.show_kernels(runs, archConfigs["gfx90a"], output, args.decimal)
+ else:
+ tty.show_all(
+ runs,
+ archConfigs["gfx90a"],
+ output,
+ args.decimal,
+ args.time_unit,
+ args.cols,
+ )
+
+
+def analyze(args):
+ if args.dependency:
+ print("pip3 install astunparse numpy tabulate pandas pyyaml")
+ sys.exit(0)
+
+ # NB: maybe create bak file for the old run before open it
+ global output
+ output = open(args.output_file, "w+") if args.output_file else sys.stdout
+
+ # Initalize archConfigs and runs[]
+ runs = initialize_run(args)
+
# Filtering
if args.gpu_kernel:
for d, gk in zip(args.path, args.gpu_kernel):
@@ -140,14 +230,12 @@ def omniperf_cli(args):
)
sys.exit(2)
runs[d[0]].filter_kernel_ids = gk
-
if args.gpu_id:
if len(args.gpu_id) == 1 and len(args.path) != 1:
for i in range(len(args.path) - 1):
args.gpu_id.extend(args.gpu_id)
for d, gi in zip(args.path, args.gpu_id):
runs[d[0]].filter_gpu_ids = gi
- # NOTE: INVALID DISPATCH IDS ARE NOT CAUGHT HERE. THEY CAUSE AN ERROR IN TABLE GENERATION!!!!!!!!!
if args.gpu_dispatch_id:
if len(args.gpu_dispatch_id) == 1 and len(args.path) != 1:
for i in range(len(args.path) - 1):
@@ -155,76 +243,8 @@ def omniperf_cli(args):
for d, gd in zip(args.path, args.gpu_dispatch_id):
runs[d[0]].filter_dispatch_ids = gd
+ # Launch CLI analysis or GUI
if args.gui:
- import dash
- from omniperf_cli.utils import gui
- import dash_bootstrap_components as dbc
-
- app = dash.Dash(__name__, external_stylesheets=[dbc.themes.CYBORG])
-
- if len(runs) == 1:
- num_results = 10
- file_io.create_df_kernel_top_stats(
- args.path[0][0],
- runs[args.path[0][0]].filter_gpu_ids,
- runs[args.path[0][0]].filter_dispatch_ids,
- args.time_unit,
- num_results,
- )
- runs[args.path[0][0]].raw_pmc = file_io.create_df_pmc(
- args.path[0][0]
- ) # create mega df
- is_gui = False
- parser.load_kernel_top(runs[args.path[0][0]], args.path[0][0])
-
- input_filters = {
- "kernel": runs[args.path[0][0]].filter_kernel_ids,
- "gpu": runs[args.path[0][0]].filter_gpu_ids,
- "dispatch": runs[args.path[0][0]].filter_dispatch_ids,
- }
-
- gui.build_layout(
- app,
- runs,
- archConfigs["gfx90a"],
- input_filters,
- args.decimal,
- args.time_unit,
- args.cols,
- str(args.path[0][0]),
- args.g,
- args.verbose,
- )
- app.run_server(debug=False, host="0.0.0.0", port=args.gui)
- else:
- print("Multiple runs not supported yet")
+ run_gui(args, runs)
else:
- # NB:
- # If we assume the panel layout for all archs are similar, it doesn't matter
- # which archConfig passed into show_all function.
- # After decide to how to manage kernels display patterns, we can revisit it.
- for d in args.path:
- num_results = 10
- file_io.create_df_kernel_top_stats(
- d[0],
- runs[d[0]].filter_gpu_ids,
- runs[d[0]].filter_dispatch_ids,
- args.time_unit,
- num_results,
- )
- runs[d[0]].raw_pmc = file_io.create_df_pmc(d[0]) # creates mega dataframe
- is_gui = False
- parser.load_table_data(
- runs[d[0]], d[0], is_gui, args.g, args.verbose
- ) # create the loaded table
- if args.list_kernels:
- tty.show_kernels(runs, archConfigs["gfx90a"], output, args.decimal)
- else:
- tty.show_all(
- runs,
- archConfigs["gfx90a"],
- output,
- args.decimal,
- args.time_unit,
- args.cols,
- )
+ run_cli(args, runs)
diff --git a/src/omniperf_cli/perfmon/gfx908_metrics.xml b/src/omniperf_analyze/perfmon/gfx908_metrics.xml
similarity index 100%
rename from src/omniperf_cli/perfmon/gfx908_metrics.xml
rename to src/omniperf_analyze/perfmon/gfx908_metrics.xml
diff --git a/src/omniperf_cli/perfmon/gfx90a_metrics.xml b/src/omniperf_analyze/perfmon/gfx90a_metrics.xml
similarity index 100%
rename from src/omniperf_cli/perfmon/gfx90a_metrics.xml
rename to src/omniperf_analyze/perfmon/gfx90a_metrics.xml
diff --git a/src/omniperf_cli/perfmon/metrics.xml b/src/omniperf_analyze/perfmon/metrics.xml
similarity index 100%
rename from src/omniperf_cli/perfmon/metrics.xml
rename to src/omniperf_analyze/perfmon/metrics.xml
diff --git a/src/omniperf_cli/tests/unit/ast_parser_tester.py b/src/omniperf_analyze/tests/unit/ast_parser_tester.py
similarity index 100%
rename from src/omniperf_cli/tests/unit/ast_parser_tester.py
rename to src/omniperf_analyze/tests/unit/ast_parser_tester.py
diff --git a/src/omniperf_cli/tests/unit/config/100_if_else.yaml b/src/omniperf_analyze/tests/unit/config/100_if_else.yaml
similarity index 100%
rename from src/omniperf_cli/tests/unit/config/100_if_else.yaml
rename to src/omniperf_analyze/tests/unit/config/100_if_else.yaml
diff --git a/src/omniperf_cli/tests/unit/config/100_more_cases.yaml b/src/omniperf_analyze/tests/unit/config/100_more_cases.yaml
similarity index 100%
rename from src/omniperf_cli/tests/unit/config/100_more_cases.yaml
rename to src/omniperf_analyze/tests/unit/config/100_more_cases.yaml
diff --git a/src/omniperf_cli/tests/unit/config/build-in/00_id_00_build_in_variables.s4_converted_table.yaml b/src/omniperf_analyze/tests/unit/config/build-in/00_id_00_build_in_variables.s4_converted_table.yaml
similarity index 100%
rename from src/omniperf_cli/tests/unit/config/build-in/00_id_00_build_in_variables.s4_converted_table.yaml
rename to src/omniperf_analyze/tests/unit/config/build-in/00_id_00_build_in_variables.s4_converted_table.yaml
diff --git a/src/omniperf_cli/tests/unit/config/expr_format_tester.py b/src/omniperf_analyze/tests/unit/config/expr_format_tester.py
similarity index 100%
rename from src/omniperf_cli/tests/unit/config/expr_format_tester.py
rename to src/omniperf_analyze/tests/unit/config/expr_format_tester.py
diff --git a/src/omniperf_cli/utils/file_io.py b/src/omniperf_analyze/utils/file_io.py
similarity index 99%
rename from src/omniperf_cli/utils/file_io.py
rename to src/omniperf_analyze/utils/file_io.py
index 45cb6708a8..802dd82bf0 100644
--- a/src/omniperf_cli/utils/file_io.py
+++ b/src/omniperf_analyze/utils/file_io.py
@@ -28,7 +28,7 @@ import yaml
import collections
from collections import OrderedDict
from pathlib import Path
-from omniperf_cli.utils import schema
+from omniperf_analyze.utils import schema
# TODO: use pandas chunksize or dask to read really large csv file
# from dask import dataframe as dd
diff --git a/src/omniperf_cli/utils/gui.py b/src/omniperf_analyze/utils/gui.py
similarity index 90%
rename from src/omniperf_cli/utils/gui.py
rename to src/omniperf_analyze/utils/gui.py
index 491e2d193f..b96bcea8a2 100644
--- a/src/omniperf_cli/utils/gui.py
+++ b/src/omniperf_analyze/utils/gui.py
@@ -36,11 +36,12 @@ import plotly.express as px
import colorlover
-from omniperf_cli.utils import parser, file_io, schema
+from omniperf_analyze.utils import parser, file_io, schema
-from omniperf_cli.utils.gui_components.header import get_header
-from omniperf_cli.utils.gui_components.roofline import get_roofline
-from omniperf_cli.utils.gui_components.memchart import get_memchart
+from omniperf_analyze.utils.gui_components.header import get_header
+from omniperf_analyze.utils.gui_components.roofline import get_roofline
+from omniperf_analyze.utils.gui_components.memchart import get_memchart
+from omniperf_analyze.omniperf_analyze import initialize_run
pd.set_option(
"mode.chained_assignment", None
@@ -303,6 +304,7 @@ def build_layout(
path_to_dir,
debug,
verbose,
+ args,
):
"""
Build gui layout
@@ -312,17 +314,15 @@ def build_layout(
app.layout = html.Div(style={"backgroundColor": "rgb(50, 50, 50)" if IS_DARK else ""})
filt_kernel_names = []
- kernel_top_df = runs[path_to_dir].dfs[1]
- for kernel_id in runs[path_to_dir].filter_kernel_ids:
+ kernel_top_df = base_data.dfs[1]
+ for kernel_id in base_data.filter_kernel_ids:
filt_kernel_names.append(kernel_top_df.loc[kernel_id, "KernelName"])
app.layout.children = html.Div(
children=[
dbc.Spinner(
children=[
- get_header(
- runs[path_to_dir].raw_pmc, input_filters, filt_kernel_names
- ),
+ get_header(base_data.raw_pmc, input_filters, filt_kernel_names),
html.Div(id="container", children=[]),
],
fullscreen=True,
@@ -337,26 +337,32 @@ def build_layout(
[Input("disp-filt", "value")],
[Input("kernel-filt", "value")],
[Input("gcd-filt", "value")],
+ [Input("norm-filt", "value")],
[State("container", "children")],
)
- def generate_from_filter(disp_filt, kernel_filter, gcd_filter, div_children):
- runs[path_to_dir].dfs = copy.deepcopy(archConfigs.dfs) # reset the equations
+ def generate_from_filter(
+ disp_filt, kernel_filter, gcd_filter, norm_filt, div_children
+ ):
+ if verbose <= 1:
+ print("normalization is ", norm_filt)
+
+ base_data = initialize_run(args, norm_filt) # Re-initalize everything
panel_configs = copy.deepcopy(archConfigs.panel_configs)
# Generate original raw df
- runs[path_to_dir].raw_pmc = file_io.create_df_pmc(path_to_dir)
+ base_data[base_run].raw_pmc = file_io.create_df_pmc(path_to_dir)
if verbose >= 1:
print("disp-filter is ", disp_filt)
print("kernel-filter is ", kernel_filter)
print("gpu-filter is ", gcd_filter, "\n")
- runs[path_to_dir].filter_kernel_ids = kernel_filter
- runs[path_to_dir].filter_gpu_ids = gcd_filter
- runs[path_to_dir].filter_dispatch_ids = disp_filt
+ base_data[base_run].filter_kernel_ids = kernel_filter
+ base_data[base_run].filter_gpu_ids = gcd_filter
+ base_data[base_run].filter_dispatch_ids = disp_filt
# Reload the pmc_kernel_top.csv for Top Stats panel
num_results = 10
file_io.create_df_kernel_top_stats(
path_to_dir,
- runs[path_to_dir].filter_gpu_ids,
- runs[path_to_dir].filter_dispatch_ids,
+ base_data[base_run].filter_gpu_ids,
+ base_data[base_run].filter_dispatch_ids,
time_unit,
num_results,
)
@@ -365,11 +371,11 @@ def build_layout(
if not (disp_filt or kernel_filter or gcd_filter):
temp = {}
keep = [1, 201, 101, 1901]
- for key in runs[path_to_dir].dfs:
+ for key in base_data[base_run].dfs:
if keep.count(key) != 0:
- temp[key] = runs[path_to_dir].dfs[key]
+ temp[key] = base_data[base_run].dfs[key]
- runs[path_to_dir].dfs = temp
+ base_data[base_run].dfs = temp
temp = {}
keep = [0, 100, 200, 1900]
for key in panel_configs:
@@ -378,18 +384,18 @@ def build_layout(
panel_configs = temp
parser.load_table_data(
- runs[path_to_dir], path_to_dir, True, debug, verbose
+ base_data[base_run], path_to_dir, True, debug, verbose
) # Note: All the filtering happens in this function
div_children = []
div_children.append(
- get_memchart(archConfigs.panel_configs[1900]["data source"], base_data)
+ get_memchart(panel_configs[1900]["data source"], base_data[base_run])
)
# append roofline section
div_children.append(
get_roofline(
path_to_dir,
- parser.apply_filters(runs[path_to_dir], is_gui, debug),
+ parser.apply_filters(base_data[base_run], is_gui, debug),
verbose,
)
)
@@ -411,7 +417,7 @@ def build_layout(
for data_source in panel["data source"]:
for t_type, table_config in data_source.items():
content = []
- original_df = base_data.dfs[table_config["id"]]
+ original_df = base_data[base_run].dfs[table_config["id"]]
# The sys info table need to add index back
if t_type == "raw_csv_table" and "Info" in original_df.keys():
diff --git a/src/omniperf_cli/utils/gui_components/header.py b/src/omniperf_analyze/utils/gui_components/header.py
similarity index 98%
rename from src/omniperf_cli/utils/gui_components/header.py
rename to src/omniperf_analyze/utils/gui_components/header.py
index cf5897b308..0e61055b0a 100644
--- a/src/omniperf_cli/utils/gui_components/header.py
+++ b/src/omniperf_analyze/utils/gui_components/header.py
@@ -24,9 +24,9 @@ from dash import html, dash_table, dcc
import dash_bootstrap_components as dbc
from matplotlib.style import available
-from omniperf_cli.utils import schema
+from omniperf_analyze.utils import schema
-avail_normalizations = ["per Wave", "per Cycle", "per Sec", "per Kernel"]
+avail_normalizations = ["per_wave", "per_cycle", "per_second", "per_kernel"]
# List all the unique column values for desired column in df, 'target_col'
def list_unique(orig_list, is_numeric):
@@ -152,10 +152,10 @@ def get_header(raw_pmc, input_filters, kernel_names):
),
dcc.Dropdown(
avail_normalizations,
- value="per Wave",
+ id="norm-filt",
+ value=input_filters["normalization"],
clearable=False,
style={"width": "150px"},
- disabled=True, # TODO: Turn this off once multi normalization is enabled
),
]
)
diff --git a/src/omniperf_cli/utils/gui_components/memchart.py b/src/omniperf_analyze/utils/gui_components/memchart.py
similarity index 100%
rename from src/omniperf_cli/utils/gui_components/memchart.py
rename to src/omniperf_analyze/utils/gui_components/memchart.py
diff --git a/src/omniperf_cli/utils/gui_components/roofline.py b/src/omniperf_analyze/utils/gui_components/roofline.py
similarity index 99%
rename from src/omniperf_cli/utils/gui_components/roofline.py
rename to src/omniperf_analyze/utils/gui_components/roofline.py
index ec33d7b231..6e4ce2c54c 100644
--- a/src/omniperf_cli/utils/gui_components/roofline.py
+++ b/src/omniperf_analyze/utils/gui_components/roofline.py
@@ -20,7 +20,7 @@
# THE SOFTWARE.
################################################################################
-from omniperf_cli.utils import roofline_calc
+from omniperf_analyze.utils import roofline_calc
import numpy as np
from dash import html, dash_table
diff --git a/src/omniperf_cli/utils/parser.py b/src/omniperf_analyze/utils/parser.py
similarity index 99%
rename from src/omniperf_cli/utils/parser.py
rename to src/omniperf_analyze/utils/parser.py
index d64988b17c..ec925cef1a 100644
--- a/src/omniperf_cli/utils/parser.py
+++ b/src/omniperf_analyze/utils/parser.py
@@ -29,7 +29,7 @@ from matplotlib.pyplot import axis
import pandas as pd
import numpy as np
from tabulate import tabulate
-from omniperf_cli.utils import schema
+from omniperf_analyze.utils import schema
# ------------------------------------------------------------------------------
# Internal global definitions
@@ -68,6 +68,7 @@ supported_denom = {
"per_wave": "SQ_WAVES",
"per_cycle": "GRBM_GUI_ACTIVE",
"per_second": "((EndNs - BeginNs) / 1000000000)",
+ "per_kernel": "1",
}
# Build-in defined in mongodb variables:
diff --git a/src/omniperf_cli/utils/roofline_calc.py b/src/omniperf_analyze/utils/roofline_calc.py
similarity index 100%
rename from src/omniperf_cli/utils/roofline_calc.py
rename to src/omniperf_analyze/utils/roofline_calc.py
diff --git a/src/omniperf_cli/utils/schema.py b/src/omniperf_analyze/utils/schema.py
similarity index 100%
rename from src/omniperf_cli/utils/schema.py
rename to src/omniperf_analyze/utils/schema.py
diff --git a/src/omniperf_cli/utils/tty.py b/src/omniperf_analyze/utils/tty.py
similarity index 99%
rename from src/omniperf_cli/utils/tty.py
rename to src/omniperf_analyze/utils/tty.py
index e57181ea85..0a8befbb98 100644
--- a/src/omniperf_cli/utils/tty.py
+++ b/src/omniperf_analyze/utils/tty.py
@@ -23,7 +23,7 @@
import pandas as pd
from tabulate import tabulate
-from omniperf_cli.utils import schema, parser
+from omniperf_analyze.utils import schema, parser
hidden_columns = ["Tips", "coll_level"]
diff --git a/src/parser.py b/src/parser.py
index a920b428bc..7e42d28ede 100644
--- a/src/parser.py
+++ b/src/parser.py
@@ -394,15 +394,15 @@ def parse(my_parser):
dest="normal_unit",
metavar="",
default="per_wave",
- choices=["per_wave", "per_cycle", "per_second"],
- help="\t\tSpecify the normalization unit: (DEFAULT: per_wave)\n\t\t per_wave\n\t\t per_cycle\n\t\t per_second",
+ choices=["per_wave", "per_cycle", "per_second", "per_kernel"],
+ help="\t\tSpecify the normalization unit: (DEFAULT: per_wave)\n\t\t per_wave\n\t\t per_cycle\n\t\t per_second\n\t\t per_kernel",
)
analyze_group.add_argument(
"--config-dir",
dest="config_dir",
metavar="",
help="\t\tSpecify the directory of customized configs.",
- default=OMNIPERF_HOME.joinpath("omniperf_cli/configs"),
+ default=OMNIPERF_HOME.joinpath("omniperf_analyze/configs"),
)
analyze_group.add_argument(
"-t",
diff --git a/src/perfmon_pub/gfx906_metrics.xml b/src/perfmon_pub/gfx906_metrics.xml
deleted file mode 100644
index d12d950cf4..0000000000
--- a/src/perfmon_pub/gfx906_metrics.xml
+++ /dev/null
@@ -1,5248 +0,0 @@
-
- # CPC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # CPF counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GDS counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SPI counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SQ counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SX counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCP counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TD counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM_SE counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SDMA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATCL2 counters
-
-
-
-
-
-
-
-
-
-
-
-
- # MCVML2 counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/perfmon_pub/gfx908_metrics.xml b/src/perfmon_pub/gfx908_metrics.xml
deleted file mode 100644
index 8db51ecf9c..0000000000
--- a/src/perfmon_pub/gfx908_metrics.xml
+++ /dev/null
@@ -1,5731 +0,0 @@
-
- # CPC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # CPF counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GDS counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SPI counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SQ counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SX counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCP counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TD counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM_SE counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SDMA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATCL2 counters
-
-
-
-
-
-
-
-
-
-
-
-
- # MCVML2 counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/perfmon_pub/gfx90a_metrics.xml b/src/perfmon_pub/gfx90a_metrics.xml
deleted file mode 100644
index eb06f2b14d..0000000000
--- a/src/perfmon_pub/gfx90a_metrics.xml
+++ /dev/null
@@ -1,5587 +0,0 @@
-
- # CPC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # CPF counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GDS counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SPI counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SQ counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SX counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCP counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TD counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM_SE counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATCL2 counters
-
-
-
-
-
-
-
-
-
-
-
-
- # MCVML2 counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/perfmon_pub/gfx9_metrics.xml b/src/perfmon_pub/gfx9_metrics.xml
deleted file mode 100644
index f9767b3750..0000000000
--- a/src/perfmon_pub/gfx9_metrics.xml
+++ /dev/null
@@ -1,5161 +0,0 @@
-
- # CPC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # CPF counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GDS counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SPI counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SQ counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SX counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TCP counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # TD counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # GRBM_SE counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # SDMA counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATCL2 counters
-
-
-
-
-
-
-
-
-
-
-
-
- # MCVML2 counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- # ATC counters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/perfmon_pub/metrics.xml b/src/perfmon_pub/metrics.xml
deleted file mode 100644
index 4871eaf3ac..0000000000
--- a/src/perfmon_pub/metrics.xml
+++ /dev/null
@@ -1,770 +0,0 @@
-#include "gfx906_metrics.xml"
-#include "gfx908_metrics.xml"
-#include "gfx90a_metrics.xml"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #xlu - TA
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #xlu -TD
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #xlu -TCP
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #
- #
- #
-
-
-
-
- # EA1
-
-
-
-
-
-
-
-
-
- # both EA0 and EA1 should be included
-
-
-
-
-
- #xlu - TCC
-
-
-
-
-
-
-
- #
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #xlu - TCP
-
-
-
-
- #xlu - TCC
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #xlu - TD
-
-
- #xlu - TCP
-
-
-
-
-
-
-
- # GPUBusy The percentage of time GPU was busy.
-
-
- # Wavefronts Total wavefronts.
-
-
- # VALUInsts The average number of vector ALU instructions executed per work-item (affected by flow control).
-
-
- # SALUInsts The average number of scalar ALU instructions executed per work-item (affected by flow control).
-
-
- # VFetchInsts The average number of vector fetch instructions from the video memory executed per work-item (affected by flow control). Excludes FLAT instructions that fetch from video memory.
-
-
- # SFetchInsts The average number of scalar fetch instructions from the video memory executed per work-item (affected by flow control).
-
-
- # VWriteInsts The average number of vector write instructions to the video memory executed per work-item (affected by flow control). Excludes FLAT instructions that write to video memory.
-
-
- # FlatVMemInsts The average number of FLAT instructions that read from or write to the video memory executed per work item (affected by flow control). Includes FLAT instructions that read from or write to scratch.
-
-
- # LDSInsts The average number of LDS read or LDS write instructions executed per work item (affected by flow control). Excludes FLAT instructions that read from or write to LDS.
-
-
- # FlatLDSInsts The average number of FLAT instructions that read or write to LDS executed per work item (affected by flow control).
-
-
- # GDSInsts The average number of GDS read or GDS write instructions executed per work item (affected by flow control).
-
-
- # FetchSize The total kilobytes fetched from the video memory. This is measured with all extra fetches and any cache or memory effects taken into account.
-
-
- # WriteSize The total kilobytes written to the video memory. This is measured with all extra fetches and any cache or memory effects taken into account.
-
-
- # MemWrites32B The total number of effective 32B write transactions to the memory
-
-
- # MemUnitStalled The percentage of GPUTime the memory unit is stalled. Try reducing the number or size of fetches and writes if possible. Value range: 0% (optimal) to 100% (bad).
-
-
- # WriteUnitStalled The percentage of GPUTime the Write unit is stalled. Value range: 0% to 100% (bad).
-
-
- # ALUStalledByLDS The percentage of GPUTime ALU units are stalled by the LDS input queue being full or the output queue being not ready. If there are LDS bank conflicts, reduce them. Otherwise, try reducing the number of LDS accesses if possible. Value range: 0% (optimal) to 100% (bad).
-
-
- # LDSBankConflict The percentage of GPUTime LDS is stalled by bank conflicts. Value range: 0% (optimal) to 100% (bad).
-
-
- # High level stats
-
-
-
-
- # ALU stats
-
-
-
-
-
-
-
-
-
- # Memory instr rates
-
-
-
-
- # Memory subsystem stats
- # ICache and ScalCache(DCache) stats
-
-
-
-
-
- # L1/L2 caches stats
-
-
-
-
-
-
- # Memory latencies
-
-
- #
- #
-
- # DRAM bandwidth
-
-
-
-
diff --git a/src/perfmon_pub/mi100/pmc_ta_perf.txt b/src/perfmon_pub/mi100/pmc_ta_perf.txt
index 851f22400d..938076de7b 100644
--- a/src/perfmon_pub/mi100/pmc_ta_perf.txt
+++ b/src/perfmon_pub/mi100/pmc_ta_perf.txt
@@ -1,22 +1,11 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE SQ_CYCLES SQ_BUSY_CYCLES SQ_BUSY_CU_CYCLES SQ_WAVES SQ_WAVE_CYCLES
-pmc: TA_TA_BUSY_sum TA_SH_FIFO_BUSY_sum
-pmc: TA_SH_FIFO_CMD_BUSY_sum TA_SH_FIFO_ADDR_BUSY_sum
-pmc: TA_SH_FIFO_DATA_BUSY_sum TA_SH_FIFO_DATA_SFIFO_BUSY_sum
-pmc: TA_SH_FIFO_DATA_TFIFO_BUSY_sum TA_SQ_TA_CMD_CYCLES_sum
-pmc: TA_SP_TA_ADDR_CYCLES_sum TA_SP_TA_DATA_CYCLES_sum
-
-
-# Starvation
-pmc: TA_SH_FIFO_ADDR_STARVED_WHILE_BUSY_CYCLES_sum TA_SH_FIFO_CMD_STARVED_WHILE_BUSY_CYCLES_sum
-pmc: TA_SH_FIFO_DATA_STARVED_WHILE_BUSY_CYCLES_sum TA_TA_SH_FIFO_STARVED_sum
-
-
+pmc: TA_TA_BUSY_sum
# buffer access
pmc: TA_BUFFER_WAVEFRONTS_sum TA_BUFFER_READ_WAVEFRONTS_sum
pmc: TA_BUFFER_WRITE_WAVEFRONTS_sum TA_BUFFER_ATOMIC_WAVEFRONTS_sum
-pmc: TA_BUFFER_TOTAL_CYCLES_sum TA_BUFFER_COALESCABLE_WAVEFRONTS_sum
+pmc: TA_BUFFER_TOTAL_CYCLES_sum
pmc: TA_BUFFER_COALESCED_READ_CYCLES_sum TA_BUFFER_COALESCED_WRITE_CYCLES_sum
@@ -26,8 +15,7 @@ pmc: TA_ADDR_STALLED_BY_TD_CYCLES_sum TA_DATA_STALLED_BY_TC_CYCLES_sum
# flat accesses
pmc: TA_FLAT_WAVEFRONTS_sum TA_FLAT_READ_WAVEFRONTS_sum
-pmc: TA_FLAT_WRITE_WAVEFRONTS_sum TA_FLAT_ATOMIC_WAVEFRONTS_sum
-pmc: TA_FLAT_COALESCEABLE_WAVEFRONTS_sum
+pmc: TA_FLAT_WRITE_WAVEFRONTS_sum TA_FLAT_ATOMIC_WAVEFRONTS_sum
range:
diff --git a/src/perfmon_pub/mi200/pmc_ta_perf.txt b/src/perfmon_pub/mi200/pmc_ta_perf.txt
index 851f22400d..45dc9d7bf1 100644
--- a/src/perfmon_pub/mi200/pmc_ta_perf.txt
+++ b/src/perfmon_pub/mi200/pmc_ta_perf.txt
@@ -1,22 +1,11 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE SQ_CYCLES SQ_BUSY_CYCLES SQ_BUSY_CU_CYCLES SQ_WAVES SQ_WAVE_CYCLES
-pmc: TA_TA_BUSY_sum TA_SH_FIFO_BUSY_sum
-pmc: TA_SH_FIFO_CMD_BUSY_sum TA_SH_FIFO_ADDR_BUSY_sum
-pmc: TA_SH_FIFO_DATA_BUSY_sum TA_SH_FIFO_DATA_SFIFO_BUSY_sum
-pmc: TA_SH_FIFO_DATA_TFIFO_BUSY_sum TA_SQ_TA_CMD_CYCLES_sum
-pmc: TA_SP_TA_ADDR_CYCLES_sum TA_SP_TA_DATA_CYCLES_sum
-
-
-# Starvation
-pmc: TA_SH_FIFO_ADDR_STARVED_WHILE_BUSY_CYCLES_sum TA_SH_FIFO_CMD_STARVED_WHILE_BUSY_CYCLES_sum
-pmc: TA_SH_FIFO_DATA_STARVED_WHILE_BUSY_CYCLES_sum TA_TA_SH_FIFO_STARVED_sum
-
-
+pmc: TA_TA_BUSY_sum
# buffer access
pmc: TA_BUFFER_WAVEFRONTS_sum TA_BUFFER_READ_WAVEFRONTS_sum
pmc: TA_BUFFER_WRITE_WAVEFRONTS_sum TA_BUFFER_ATOMIC_WAVEFRONTS_sum
-pmc: TA_BUFFER_TOTAL_CYCLES_sum TA_BUFFER_COALESCABLE_WAVEFRONTS_sum
+pmc: TA_BUFFER_TOTAL_CYCLES_sum
pmc: TA_BUFFER_COALESCED_READ_CYCLES_sum TA_BUFFER_COALESCED_WRITE_CYCLES_sum
@@ -27,7 +16,6 @@ pmc: TA_ADDR_STALLED_BY_TD_CYCLES_sum TA_DATA_STALLED_BY_TC_CYCLES_sum
# flat accesses
pmc: TA_FLAT_WAVEFRONTS_sum TA_FLAT_READ_WAVEFRONTS_sum
pmc: TA_FLAT_WRITE_WAVEFRONTS_sum TA_FLAT_ATOMIC_WAVEFRONTS_sum
-pmc: TA_FLAT_COALESCEABLE_WAVEFRONTS_sum
range:
diff --git a/src/perfmon_pub/mi50/pmc_ta_perf.txt b/src/perfmon_pub/mi50/pmc_ta_perf.txt
index 851f22400d..9c6fa835c4 100644
--- a/src/perfmon_pub/mi50/pmc_ta_perf.txt
+++ b/src/perfmon_pub/mi50/pmc_ta_perf.txt
@@ -1,22 +1,11 @@
pmc: GRBM_COUNT GRBM_GUI_ACTIVE SQ_CYCLES SQ_BUSY_CYCLES SQ_BUSY_CU_CYCLES SQ_WAVES SQ_WAVE_CYCLES
-pmc: TA_TA_BUSY_sum TA_SH_FIFO_BUSY_sum
-pmc: TA_SH_FIFO_CMD_BUSY_sum TA_SH_FIFO_ADDR_BUSY_sum
-pmc: TA_SH_FIFO_DATA_BUSY_sum TA_SH_FIFO_DATA_SFIFO_BUSY_sum
-pmc: TA_SH_FIFO_DATA_TFIFO_BUSY_sum TA_SQ_TA_CMD_CYCLES_sum
-pmc: TA_SP_TA_ADDR_CYCLES_sum TA_SP_TA_DATA_CYCLES_sum
-
-
-# Starvation
-pmc: TA_SH_FIFO_ADDR_STARVED_WHILE_BUSY_CYCLES_sum TA_SH_FIFO_CMD_STARVED_WHILE_BUSY_CYCLES_sum
-pmc: TA_SH_FIFO_DATA_STARVED_WHILE_BUSY_CYCLES_sum TA_TA_SH_FIFO_STARVED_sum
-
-
+pmc: TA_TA_BUSY_sum
# buffer access
pmc: TA_BUFFER_WAVEFRONTS_sum TA_BUFFER_READ_WAVEFRONTS_sum
pmc: TA_BUFFER_WRITE_WAVEFRONTS_sum TA_BUFFER_ATOMIC_WAVEFRONTS_sum
-pmc: TA_BUFFER_TOTAL_CYCLES_sum TA_BUFFER_COALESCABLE_WAVEFRONTS_sum
+pmc: TA_BUFFER_TOTAL_CYCLES_sum
pmc: TA_BUFFER_COALESCED_READ_CYCLES_sum TA_BUFFER_COALESCED_WRITE_CYCLES_sum
@@ -26,8 +15,7 @@ pmc: TA_ADDR_STALLED_BY_TD_CYCLES_sum TA_DATA_STALLED_BY_TC_CYCLES_sum
# flat accesses
pmc: TA_FLAT_WAVEFRONTS_sum TA_FLAT_READ_WAVEFRONTS_sum
-pmc: TA_FLAT_WRITE_WAVEFRONTS_sum TA_FLAT_ATOMIC_WAVEFRONTS_sum
-pmc: TA_FLAT_COALESCEABLE_WAVEFRONTS_sum
+pmc: TA_FLAT_WRITE_WAVEFRONTS_sum TA_FLAT_ATOMIC_WAVEFRONTS_sum
range:
diff --git a/utils/build.sh b/utils/build.sh
index 45625a8d3d..e980aff882 100755
--- a/utils/build.sh
+++ b/utils/build.sh
@@ -5,7 +5,7 @@ pyinstaller src/omniperf.py \
--add-data "src/perfmon_pub/*:perfmon_pub" \
--add-data "src/utils/*:utils" \
--add-data "src/soc_params/*.csv:soc_params" \
- --add-data "src/omniperf_cli/*:omniperf_cli" \
+ --add-data "src/omniperf_analyze/*:omniperf_analyze" \
--hidden-import matplotlib.backends.backend_pdf \
${@}
@@ -57,8 +57,8 @@ cp -r ${dash_loc:10}/dash_svg "$distpath"/omniperf/
echo "(build.sh) Fixing flattened directories"
#TODO: Copy orig file structure from over to flattened packaged version
-rm -rf "$distpath"/omniperf/omniperf_cli/
-cp -r src/omniperf_cli/ "$distpath"/omniperf/
+rm -rf "$distpath"/omniperf/omniperf_analyze/
+cp -r src/omniperf_analyze/ "$distpath"/omniperf/
rm -rf "$distpath"/omniperf/perfmon_pub/
cp -r src/perfmon_pub/ "$distpath"/omniperf/