From 1273a5e2a93e51de53e06c38cd93e95b7d9e4ed7 Mon Sep 17 00:00:00 2001 From: xuchen-amd Date: Wed, 2 Apr 2025 21:25:47 -0400 Subject: [PATCH] Add mi350 ta td tcp tcc counters (#653) * Add mi350 TA and TD metrics. * Add mi350 TCC metrics, and separate write and atomic metrics. * Add mi350 TCP metrics. * Add none values for non-gfx950 socs, remove missing metrics in rocprofv3. --------- Signed-off-by: xuchen-amd [ROCm/rocprofiler-compute commit: f3736778f475b884d8ae7f91a87d5ad41c7fe82c] --- .../gfx906/1500_TA_and_TD.yaml | 24 ++- .../gfx906/1600_L1_cache.yaml | 109 ++++++++++ .../gfx906/1700_L2_cache.yaml | 134 +++++++++++- .../gfx908/1500_TA_and_TD.yaml | 18 ++ .../gfx908/1600_L1_cache.yaml | 109 ++++++++++ .../gfx908/1700_L2_cache.yaml | 134 +++++++++++- .../gfx90a/1500_TA_and_TD.yaml | 18 ++ .../gfx90a/1600_L1_cache.yaml | 109 ++++++++++ .../gfx90a/1700_L2_cache.yaml | 134 +++++++++++- .../gfx940/1500_TA_and_TD.yaml | 18 ++ .../gfx940/1600_L1_cache.yaml | 109 ++++++++++ .../gfx940/1700_L2_cache.yaml | 136 ++++++++++++- .../gfx941/1500_TA_and_TD.yaml | 18 ++ .../gfx941/1600_L1_cache.yaml | 109 ++++++++++ .../gfx941/1700_L2_cache.yaml | 136 ++++++++++++- .../gfx942/1500_TA_and_TD.yaml | 18 ++ .../gfx942/1600_L1_cache.yaml | 109 ++++++++++ .../gfx942/1700_L2_cache.yaml | 134 +++++++++++- .../gfx950/1500_TA_and_TD.yaml | 192 ++++++++++++++++++ .../gfx950/1600_L1_cache.yaml | 114 +++++++++++ .../gfx950/1700_L2_cache.yaml | 169 ++++++++++++--- 21 files changed, 1981 insertions(+), 70 deletions(-) create mode 100644 projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1500_TA_and_TD.yaml diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1500_TA_and_TD.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1500_TA_and_TD.yaml index f94849ce3e..43996908bb 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1500_TA_and_TD.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1500_TA_and_TD.yaml @@ -61,6 +61,12 @@ Panel Config: max: MAX((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Global/Generic Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Global/Generic Write Instructions: avg: AVG((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) @@ -85,6 +91,12 @@ Panel Config: max: MAX((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Spill/Stack Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Spill/Stack Write Instructions: avg: AVG((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) @@ -140,9 +152,9 @@ Panel Config: unit: pct tips: Workgroup manager → Data-Return Stall: - avg: # No perf counter - min: # No perf counter - max: # No perf counter + avg: None # No perf counter + min: None # No perf counter + max: None # No perf counter unit: pct tips: Coalescable Instructions: @@ -172,3 +184,9 @@ Panel Config: max: MAX((TD_ATOMIC_WAVEFRONT_sum / $denom)) unit: (Instructions + $normUnit) tips: + Write Ack Instructions: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1600_L1_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1600_L1_cache.yaml index 4d149484b1..03fb3cf17d 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1600_L1_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1600_L1_cache.yaml @@ -60,6 +60,26 @@ Panel Config: (((100 * TCP_TCR_TCP_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum != 0) else None) tips: + Stalled on Address: + expr: + None + tips: + Stalled on Data: + expr: + None + tips: + Stalled on Latency FIFO: + expr: + None + tips: + Stalled on Request FIFO: + expr: + None + tips: + Stalled on Read Return: + expr: + None + tips: Tag RAM Stall (Read): expr: (((100 * TCP_READ_TAGCONFLICT_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) @@ -169,6 +189,30 @@ Panel Config: + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom)) unit: (Bytes + $normUnit) tips: + Tag RAM 0 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 1 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 2 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 3 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: L1-L2 Read: avg: AVG((TCP_TCC_READ_REQ_sum / $denom)) min: MIN((TCP_TCC_READ_REQ_sum / $denom)) @@ -348,6 +392,12 @@ Panel Config: max: MAX((TCP_UTCL1_REQUEST_sum / $denom)) units: (Req + $normUnit) tips: + Inflight Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Hit Ratio: avg: AVG((((100 * TCP_UTCL1_TRANSLATION_HIT_sum) / TCP_UTCL1_REQUEST_sum) if (TCP_UTCL1_REQUEST_sum != 0) else None)) @@ -369,9 +419,68 @@ Panel Config: max: MAX((TCP_UTCL1_TRANSLATION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + Misses under Translation Miss: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Permission Misses: avg: AVG((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) min: MIN((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) max: MAX((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + - metric_table: + id: 1606 + title: L1D Addr Translation Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + units: Units + tips: Tips + metric: + Cache Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Cache Miss Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Serialization Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Thrashing Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Latency FIFO Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Resident Page Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + UTCL2 Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1700_L2_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1700_L2_cache.yaml index 7a49bfad0a..54527268fb 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1700_L2_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx906/1700_L2_cache.yaml @@ -169,6 +169,24 @@ Panel Config: max: MAX((TCC_REQ_sum * 64) / $denom) unit: (Bytes + $normUnit) tips: + Read Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Req: avg: AVG((TCC_REQ_sum / $denom)) min: MIN((TCC_REQ_sum / $denom)) @@ -199,12 +217,24 @@ Panel Config: max: MAX((TCC_STREAMING_REQ_sum / $denom)) unit: (Req + $normUnit) tips: + Bypasss Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Probe Req: avg: AVG((TCC_PROBE_sum / $denom)) min: MIN((TCC_PROBE_sum / $denom)) max: MAX((TCC_PROBE_sum / $denom)) unit: (Req + $normUnit) tips: + Input Buffer Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Cache Hit: avg: AVG((((100 * TCC_HIT_sum) / (TCC_HIT_sum + TCC_MISS_sum)) if ((TCC_HIT_sum + TCC_MISS_sum) != 0) else None)) @@ -283,6 +313,36 @@ Panel Config: - metric_table: id: 1704 + title: L2 Cache Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Stalled on Latency FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Stalled on Write Data FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Input Buffer Stalled on L2: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1705 title: L2 - Fabric Interface Stalls header: metric: Metric @@ -354,7 +414,7 @@ Panel Config: tips: - metric_table: - id: 1705 + id: 1706 title: L2 - Fabric Detailed Transaction Breakdown header: metric: Metric @@ -370,18 +430,18 @@ Panel Config: max: MAX((TCC_EA_RDREQ_32B_sum / $denom)) unit: (Req + $normUnit) tips: - Read (Uncached): - avg: AVG((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - min: MIN((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - max: MAX((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - unit: (Req + $normUnit) - tips: Read (64B): avg: AVG(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) min: MIN(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) max: MAX(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) unit: (Req + $normUnit) tips: + Read (Uncached): + avg: AVG((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + min: MIN((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + max: MAX((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + unit: (Req + $normUnit) + tips: HBM Read: avg: AVG((TCC_EA_RDREQ_DRAM_sum / $denom)) min: MIN((TCC_EA_RDREQ_DRAM_sum / $denom)) @@ -394,6 +454,24 @@ Panel Config: max: MAX((MAX((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Read Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Write and Atomic (32B): avg: AVG(((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum) / $denom)) min: MIN(((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum) / $denom)) @@ -424,9 +502,51 @@ Panel Config: max: MAX((MAX((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Write Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Atomic: avg: AVG((TCC_EA_ATOMIC_sum / $denom)) min: MIN((TCC_EA_ATOMIC_sum / $denom)) max: MAX((TCC_EA_ATOMIC_sum / $denom)) unit: (Req + $normUnit) tips: + Atomic - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Atomic Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1500_TA_and_TD.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1500_TA_and_TD.yaml index f94849ce3e..6259eb5ab2 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1500_TA_and_TD.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1500_TA_and_TD.yaml @@ -61,6 +61,12 @@ Panel Config: max: MAX((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Global/Generic Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Global/Generic Write Instructions: avg: AVG((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) @@ -85,6 +91,12 @@ Panel Config: max: MAX((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Spill/Stack Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Spill/Stack Write Instructions: avg: AVG((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) @@ -172,3 +184,9 @@ Panel Config: max: MAX((TD_ATOMIC_WAVEFRONT_sum / $denom)) unit: (Instructions + $normUnit) tips: + Write Ack Instructions: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1600_L1_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1600_L1_cache.yaml index dd95bec827..ba19d17f2b 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1600_L1_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1600_L1_cache.yaml @@ -60,6 +60,26 @@ Panel Config: (((100 * TCP_TCR_TCP_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum != 0) else None) tips: + Stalled on Address: + expr: + None + tips: + Stalled on Data: + expr: + None + tips: + Stalled on Latency FIFO: + expr: + None + tips: + Stalled on Request FIFO: + expr: + None + tips: + Stalled on Read Return: + expr: + None + tips: Tag RAM Stall (Read): expr: (((100 * TCP_READ_TAGCONFLICT_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) @@ -169,6 +189,30 @@ Panel Config: + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom)) unit: (Bytes + $normUnit) tips: + Tag RAM 0 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 1 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 2 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 3 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: L1-L2 Read: avg: AVG((TCP_TCC_READ_REQ_sum / $denom)) min: MIN((TCP_TCC_READ_REQ_sum / $denom)) @@ -348,6 +392,12 @@ Panel Config: max: MAX((TCP_UTCL1_REQUEST_sum / $denom)) units: (Req + $normUnit) tips: + Inflight Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Hit Ratio: avg: AVG((((100 * TCP_UTCL1_TRANSLATION_HIT_sum) / TCP_UTCL1_REQUEST_sum) if (TCP_UTCL1_REQUEST_sum != 0) else None)) @@ -369,9 +419,68 @@ Panel Config: max: MAX((TCP_UTCL1_TRANSLATION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + Misses under Translation Miss: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Permission Misses: avg: AVG((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) min: MIN((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) max: MAX((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + - metric_table: + id: 1606 + title: L1D Addr Translation Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + units: Units + tips: Tips + metric: + Cache Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Cache Miss Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Serialization Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Thrashing Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Latency FIFO Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Resident Page Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + UTCL2 Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1700_L2_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1700_L2_cache.yaml index 876ddf3883..5c3d6d14ee 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1700_L2_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx908/1700_L2_cache.yaml @@ -169,6 +169,24 @@ Panel Config: max: MAX((TCC_REQ_sum * 64) / $denom) unit: (Bytes + $normUnit) tips: + Read Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Req: avg: AVG((TCC_REQ_sum / $denom)) min: MIN((TCC_REQ_sum / $denom)) @@ -199,12 +217,24 @@ Panel Config: max: MAX((TCC_STREAMING_REQ_sum / $denom)) unit: (Req + $normUnit) tips: + Bypasss Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Probe Req: avg: AVG((TCC_PROBE_sum / $denom)) min: MIN((TCC_PROBE_sum / $denom)) max: MAX((TCC_PROBE_sum / $denom)) unit: (Req + $normUnit) tips: + Input Buffer Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Cache Hit: avg: AVG((((100 * TCC_HIT_sum) / (TCC_HIT_sum + TCC_MISS_sum)) if ((TCC_HIT_sum + TCC_MISS_sum) != 0) else None)) @@ -283,6 +313,36 @@ Panel Config: - metric_table: id: 1704 + title: L2 Cache Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Stalled on Latency FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Stalled on Write Data FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Input Buffer Stalled on L2: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1705 title: L2 - Fabric Interface Stalls header: metric: Metric @@ -354,7 +414,7 @@ Panel Config: tips: - metric_table: - id: 1705 + id: 1706 title: L2 - Fabric Detailed Transaction Breakdown header: metric: Metric @@ -370,18 +430,18 @@ Panel Config: max: MAX((TCC_EA_RDREQ_32B_sum / $denom)) unit: (Req + $normUnit) tips: - Read (Uncached): - avg: AVG((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - min: MIN((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - max: MAX((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - unit: (Req + $normUnit) - tips: Read (64B): avg: AVG(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) min: MIN(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) max: MAX(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) unit: (Req + $normUnit) tips: + Read (Uncached): + avg: AVG((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + min: MIN((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + max: MAX((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + unit: (Req + $normUnit) + tips: HBM Read: avg: AVG((TCC_EA_RDREQ_DRAM_sum / $denom)) min: MIN((TCC_EA_RDREQ_DRAM_sum / $denom)) @@ -394,6 +454,24 @@ Panel Config: max: MAX((MAX((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Read Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Write and Atomic (32B): avg: AVG(((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum) / $denom)) min: MIN(((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum) / $denom)) @@ -424,9 +502,51 @@ Panel Config: max: MAX((MAX((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Write Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Atomic: avg: AVG((TCC_EA_ATOMIC_sum / $denom)) min: MIN((TCC_EA_ATOMIC_sum / $denom)) max: MAX((TCC_EA_ATOMIC_sum / $denom)) unit: (Req + $normUnit) tips: + Atomic - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Atomic Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1500_TA_and_TD.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1500_TA_and_TD.yaml index 8994d0b17d..d60868f760 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1500_TA_and_TD.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1500_TA_and_TD.yaml @@ -61,6 +61,12 @@ Panel Config: max: MAX((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Global/Generic Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Global/Generic Write Instructions: avg: AVG((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) @@ -85,6 +91,12 @@ Panel Config: max: MAX((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Spill/Stack Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Spill/Stack Write Instructions: avg: AVG((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) @@ -172,3 +184,9 @@ Panel Config: max: MAX((TD_ATOMIC_WAVEFRONT_sum / $denom)) unit: (Instructions + $normUnit) tips: + Write Ack Instructions: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1600_L1_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1600_L1_cache.yaml index cd4624831a..e9b787a737 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1600_L1_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1600_L1_cache.yaml @@ -60,6 +60,26 @@ Panel Config: (((100 * TCP_TCR_TCP_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum != 0) else None) tips: + Stalled on Address: + expr: + None + tips: + Stalled on Data: + expr: + None + tips: + Stalled on Latency FIFO: + expr: + None + tips: + Stalled on Request FIFO: + expr: + None + tips: + Stalled on Read Return: + expr: + None + tips: Tag RAM Stall (Read): expr: (((100 * TCP_READ_TAGCONFLICT_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) @@ -169,6 +189,30 @@ Panel Config: + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom)) unit: (Bytes + $normUnit) tips: + Tag RAM 0 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 1 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 2 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 3 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: L1-L2 Read: avg: AVG((TCP_TCC_READ_REQ_sum / $denom)) min: MIN((TCP_TCC_READ_REQ_sum / $denom)) @@ -348,6 +392,12 @@ Panel Config: max: MAX((TCP_UTCL1_REQUEST_sum / $denom)) units: (Req + $normUnit) tips: + Inflight Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Hit Ratio: avg: AVG((((100 * TCP_UTCL1_TRANSLATION_HIT_sum) / TCP_UTCL1_REQUEST_sum) if (TCP_UTCL1_REQUEST_sum != 0) else None)) @@ -369,9 +419,68 @@ Panel Config: max: MAX((TCP_UTCL1_TRANSLATION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + Misses under Translation Miss: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Permission Misses: avg: AVG((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) min: MIN((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) max: MAX((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + - metric_table: + id: 1606 + title: L1D Addr Translation Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + units: Units + tips: Tips + metric: + Cache Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Cache Miss Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Serialization Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Thrashing Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Latency FIFO Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Resident Page Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + UTCL2 Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1700_L2_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1700_L2_cache.yaml index 743e31fab7..8f03bcbcb7 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1700_L2_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx90a/1700_L2_cache.yaml @@ -169,6 +169,24 @@ Panel Config: max: MAX((TCC_REQ_sum * 128) / $denom) unit: (Bytes + $normUnit) tips: + Read Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Req: avg: AVG((TCC_REQ_sum / $denom)) min: MIN((TCC_REQ_sum / $denom)) @@ -199,12 +217,24 @@ Panel Config: max: MAX((TCC_STREAMING_REQ_sum / $denom)) unit: (Req + $normUnit) tips: + Bypasss Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Probe Req: avg: AVG((TCC_PROBE_sum / $denom)) min: MIN((TCC_PROBE_sum / $denom)) max: MAX((TCC_PROBE_sum / $denom)) unit: (Req + $normUnit) tips: + Input Buffer Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Cache Hit: avg: AVG((((100 * TCC_HIT_sum) / (TCC_HIT_sum + TCC_MISS_sum)) if ((TCC_HIT_sum + TCC_MISS_sum) != 0) else None)) @@ -283,6 +313,36 @@ Panel Config: - metric_table: id: 1704 + title: L2 Cache Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Stalled on Latency FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Stalled on Write Data FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Input Buffer Stalled on L2: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1705 title: L2 - Fabric Interface Stalls header: metric: Metric @@ -354,7 +414,7 @@ Panel Config: tips: - metric_table: - id: 1705 + id: 1706 title: L2 - Fabric Detailed Transaction Breakdown header: metric: Metric @@ -370,18 +430,18 @@ Panel Config: max: MAX((TCC_EA_RDREQ_32B_sum / $denom)) unit: (Req + $normUnit) tips: - Read (Uncached): - avg: AVG((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - min: MIN((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - max: MAX((TCC_EA_RD_UNCACHED_32B_sum / $denom)) - unit: (Req + $normUnit) - tips: Read (64B): avg: AVG(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) min: MIN(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) max: MAX(((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum) / $denom)) unit: (Req + $normUnit) tips: + Read (Uncached): + avg: AVG((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + min: MIN((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + max: MAX((TCC_EA_RD_UNCACHED_32B_sum / $denom)) + unit: (Req + $normUnit) + tips: HBM Read: avg: AVG((TCC_EA_RDREQ_DRAM_sum / $denom)) min: MIN((TCC_EA_RDREQ_DRAM_sum / $denom)) @@ -394,6 +454,24 @@ Panel Config: max: MAX((MAX((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Read Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Write and Atomic (32B): avg: AVG(((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum) / $denom)) min: MIN(((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum) / $denom)) @@ -424,9 +502,51 @@ Panel Config: max: MAX((MAX((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Write Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Atomic: avg: AVG((TCC_EA_ATOMIC_sum / $denom)) min: MIN((TCC_EA_ATOMIC_sum / $denom)) max: MAX((TCC_EA_ATOMIC_sum / $denom)) unit: (Req + $normUnit) tips: + Atomic - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Atomic Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1500_TA_and_TD.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1500_TA_and_TD.yaml index 8994d0b17d..d60868f760 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1500_TA_and_TD.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1500_TA_and_TD.yaml @@ -61,6 +61,12 @@ Panel Config: max: MAX((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Global/Generic Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Global/Generic Write Instructions: avg: AVG((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) @@ -85,6 +91,12 @@ Panel Config: max: MAX((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Spill/Stack Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Spill/Stack Write Instructions: avg: AVG((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) @@ -172,3 +184,9 @@ Panel Config: max: MAX((TD_ATOMIC_WAVEFRONT_sum / $denom)) unit: (Instructions + $normUnit) tips: + Write Ack Instructions: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1600_L1_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1600_L1_cache.yaml index 63395b03b5..13e508450c 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1600_L1_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1600_L1_cache.yaml @@ -60,6 +60,26 @@ Panel Config: (((100 * TCP_TCR_TCP_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum != 0) else None) tips: + Stalled on Address: + expr: + None + tips: + Stalled on Data: + expr: + None + tips: + Stalled on Latency FIFO: + expr: + None + tips: + Stalled on Request FIFO: + expr: + None + tips: + Stalled on Read Return: + expr: + None + tips: Tag RAM Stall (Read): expr: (((100 * TCP_READ_TAGCONFLICT_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) @@ -172,6 +192,30 @@ Panel Config: TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom)) unit: (Bytes + $normUnit) tips: + Tag RAM 0 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 1 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 2 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 3 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: L1-L2 Read: avg: AVG((TCP_TCC_READ_REQ_sum / $denom)) min: MIN((TCP_TCC_READ_REQ_sum / $denom)) @@ -339,6 +383,12 @@ Panel Config: max: MAX((TCP_UTCL1_REQUEST_sum / $denom)) units: (Req + $normUnit) tips: + Inflight Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Hit Ratio: avg: AVG((((100 * TCP_UTCL1_TRANSLATION_HIT_sum) / TCP_UTCL1_REQUEST_sum) if (TCP_UTCL1_REQUEST_sum != 0) else None)) @@ -360,9 +410,68 @@ Panel Config: max: MAX((TCP_UTCL1_TRANSLATION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + Misses under Translation Miss: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Permission Misses: avg: AVG((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) min: MIN((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) max: MAX((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + - metric_table: + id: 1606 + title: L1D Addr Translation Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + units: Units + tips: Tips + metric: + Cache Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Cache Miss Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Serialization Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Thrashing Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Latency FIFO Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Resident Page Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + UTCL2 Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1700_L2_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1700_L2_cache.yaml index fc2104a470..fcdeace122 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1700_L2_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx940/1700_L2_cache.yaml @@ -172,6 +172,24 @@ Panel Config: max: MAX((TCC_REQ_sum * 128) / $denom) unit: (Bytes + $normUnit) tips: + Read Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Req: avg: AVG((TCC_REQ_sum / $denom)) min: MIN((TCC_REQ_sum / $denom)) @@ -202,12 +220,24 @@ Panel Config: max: MAX((TCC_STREAMING_REQ_sum / $denom)) unit: (Req + $normUnit) tips: + Bypasss Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Probe Req: avg: AVG((TCC_PROBE_sum / $denom)) min: MIN((TCC_PROBE_sum / $denom)) max: MAX((TCC_PROBE_sum / $denom)) unit: (Req + $normUnit) tips: + Input Buffer Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Cache Hit: avg: AVG((((100 * TCC_HIT_sum) / (TCC_HIT_sum + TCC_MISS_sum)) if ((TCC_HIT_sum + TCC_MISS_sum) != 0) else None)) @@ -286,6 +316,36 @@ Panel Config: - metric_table: id: 1704 + title: L2 Cache Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Stalled on Latency FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Stalled on Write Data FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Input Buffer Stalled on L2: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1705 title: L2 - Fabric Interface Stalls header: metric: Metric @@ -357,7 +417,7 @@ Panel Config: tips: - metric_table: - id: 1705 + id: 1706 title: L2 - Fabric Detailed Transaction Breakdown header: metric: Metric @@ -373,18 +433,18 @@ Panel Config: max: MAX((TCC_EA0_RDREQ_32B_sum / $denom)) unit: (Req + $normUnit) tips: - Read (Uncached): - avg: AVG((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - min: MIN((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - max: MAX((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - unit: (Req + $normUnit) - tips: Read (64B): avg: AVG(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) min: MIN(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) max: MAX(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) unit: (Req + $normUnit) tips: + Read (Uncached): + avg: AVG((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + min: MIN((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + max: MAX((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + unit: (Req + $normUnit) + tips: HBM Read: avg: AVG((TCC_EA0_RDREQ_DRAM_sum / $denom)) min: MIN((TCC_EA0_RDREQ_DRAM_sum / $denom)) @@ -397,6 +457,24 @@ Panel Config: max: MAX((MAX((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Read Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Write and Atomic (32B): avg: AVG(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) min: MIN(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) @@ -427,9 +505,51 @@ Panel Config: max: MAX((MAX((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Write Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Atomic: avg: AVG((TCC_EA0_ATOMIC_sum / $denom)) min: MIN((TCC_EA0_ATOMIC_sum / $denom)) max: MAX((TCC_EA0_ATOMIC_sum / $denom)) unit: (Req + $normUnit) - tips: \ No newline at end of file + tips: + Atomic - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Atomic Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1500_TA_and_TD.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1500_TA_and_TD.yaml index 8994d0b17d..d60868f760 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1500_TA_and_TD.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1500_TA_and_TD.yaml @@ -61,6 +61,12 @@ Panel Config: max: MAX((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Global/Generic Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Global/Generic Write Instructions: avg: AVG((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) @@ -85,6 +91,12 @@ Panel Config: max: MAX((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Spill/Stack Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Spill/Stack Write Instructions: avg: AVG((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) @@ -172,3 +184,9 @@ Panel Config: max: MAX((TD_ATOMIC_WAVEFRONT_sum / $denom)) unit: (Instructions + $normUnit) tips: + Write Ack Instructions: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1600_L1_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1600_L1_cache.yaml index 63395b03b5..13e508450c 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1600_L1_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1600_L1_cache.yaml @@ -60,6 +60,26 @@ Panel Config: (((100 * TCP_TCR_TCP_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum != 0) else None) tips: + Stalled on Address: + expr: + None + tips: + Stalled on Data: + expr: + None + tips: + Stalled on Latency FIFO: + expr: + None + tips: + Stalled on Request FIFO: + expr: + None + tips: + Stalled on Read Return: + expr: + None + tips: Tag RAM Stall (Read): expr: (((100 * TCP_READ_TAGCONFLICT_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) @@ -172,6 +192,30 @@ Panel Config: TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom)) unit: (Bytes + $normUnit) tips: + Tag RAM 0 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 1 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 2 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 3 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: L1-L2 Read: avg: AVG((TCP_TCC_READ_REQ_sum / $denom)) min: MIN((TCP_TCC_READ_REQ_sum / $denom)) @@ -339,6 +383,12 @@ Panel Config: max: MAX((TCP_UTCL1_REQUEST_sum / $denom)) units: (Req + $normUnit) tips: + Inflight Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Hit Ratio: avg: AVG((((100 * TCP_UTCL1_TRANSLATION_HIT_sum) / TCP_UTCL1_REQUEST_sum) if (TCP_UTCL1_REQUEST_sum != 0) else None)) @@ -360,9 +410,68 @@ Panel Config: max: MAX((TCP_UTCL1_TRANSLATION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + Misses under Translation Miss: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Permission Misses: avg: AVG((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) min: MIN((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) max: MAX((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + - metric_table: + id: 1606 + title: L1D Addr Translation Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + units: Units + tips: Tips + metric: + Cache Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Cache Miss Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Serialization Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Thrashing Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Latency FIFO Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Resident Page Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + UTCL2 Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1700_L2_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1700_L2_cache.yaml index b14ad71b8c..181f671502 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1700_L2_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx941/1700_L2_cache.yaml @@ -172,6 +172,24 @@ Panel Config: max: MAX((TCC_REQ_sum * 128) / $denom) unit: (Bytes + $normUnit) tips: + Read Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Req: avg: AVG((TCC_REQ_sum / $denom)) min: MIN((TCC_REQ_sum / $denom)) @@ -202,12 +220,24 @@ Panel Config: max: MAX((TCC_STREAMING_REQ_sum / $denom)) unit: (Req + $normUnit) tips: + Bypasss Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Probe Req: avg: AVG((TCC_PROBE_sum / $denom)) min: MIN((TCC_PROBE_sum / $denom)) max: MAX((TCC_PROBE_sum / $denom)) unit: (Req + $normUnit) tips: + Input Buffer Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Cache Hit: avg: AVG((((100 * TCC_HIT_sum) / (TCC_HIT_sum + TCC_MISS_sum)) if ((TCC_HIT_sum + TCC_MISS_sum) != 0) else None)) @@ -286,6 +316,36 @@ Panel Config: - metric_table: id: 1704 + title: L2 Cache Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Stalled on Latency FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Stalled on Write Data FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Input Buffer Stalled on L2: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1705 title: L2 - Fabric Interface Stalls header: metric: Metric @@ -357,7 +417,7 @@ Panel Config: tips: - metric_table: - id: 1705 + id: 1706 title: L2 - Fabric Detailed Transaction Breakdown header: metric: Metric @@ -373,18 +433,18 @@ Panel Config: max: MAX((TCC_EA0_RDREQ_32B_sum / $denom)) unit: (Req + $normUnit) tips: - Read (Uncached): - avg: AVG((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - min: MIN((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - max: MAX((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - unit: (Req + $normUnit) - tips: Read (64B): avg: AVG(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) min: MIN(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) max: MAX(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) unit: (Req + $normUnit) tips: + Read (Uncached): + avg: AVG((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + min: MIN((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + max: MAX((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + unit: (Req + $normUnit) + tips: HBM Read: avg: AVG((TCC_EA0_RDREQ_DRAM_sum / $denom)) min: MIN((TCC_EA0_RDREQ_DRAM_sum / $denom)) @@ -397,6 +457,24 @@ Panel Config: max: MAX((MAX((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Read Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Write and Atomic (32B): avg: AVG(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) min: MIN(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) @@ -427,9 +505,51 @@ Panel Config: max: MAX((MAX((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Write Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Atomic: avg: AVG((TCC_EA0_ATOMIC_sum / $denom)) min: MIN((TCC_EA0_ATOMIC_sum / $denom)) max: MAX((TCC_EA0_ATOMIC_sum / $denom)) unit: (Req + $normUnit) - tips: \ No newline at end of file + tips: + Atomic - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Atomic Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1500_TA_and_TD.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1500_TA_and_TD.yaml index 8994d0b17d..d60868f760 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1500_TA_and_TD.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1500_TA_and_TD.yaml @@ -61,6 +61,12 @@ Panel Config: max: MAX((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Global/Generic Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Global/Generic Write Instructions: avg: AVG((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) @@ -85,6 +91,12 @@ Panel Config: max: MAX((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) unit: (Instructions + $normUnit) tips: + Spill/Stack Read Instructions for LDS: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: Spill/Stack Write Instructions: avg: AVG((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) min: MIN((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) @@ -172,3 +184,9 @@ Panel Config: max: MAX((TD_ATOMIC_WAVEFRONT_sum / $denom)) unit: (Instructions + $normUnit) tips: + Write Ack Instructions: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Instructions + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1600_L1_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1600_L1_cache.yaml index 63395b03b5..13e508450c 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1600_L1_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1600_L1_cache.yaml @@ -60,6 +60,26 @@ Panel Config: (((100 * TCP_TCR_TCP_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum != 0) else None) tips: + Stalled on Address: + expr: + None + tips: + Stalled on Data: + expr: + None + tips: + Stalled on Latency FIFO: + expr: + None + tips: + Stalled on Request FIFO: + expr: + None + tips: + Stalled on Read Return: + expr: + None + tips: Tag RAM Stall (Read): expr: (((100 * TCP_READ_TAGCONFLICT_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) @@ -172,6 +192,30 @@ Panel Config: TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom)) unit: (Bytes + $normUnit) tips: + Tag RAM 0 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 1 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 2 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Tag RAM 3 Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: L1-L2 Read: avg: AVG((TCP_TCC_READ_REQ_sum / $denom)) min: MIN((TCP_TCC_READ_REQ_sum / $denom)) @@ -339,6 +383,12 @@ Panel Config: max: MAX((TCP_UTCL1_REQUEST_sum / $denom)) units: (Req + $normUnit) tips: + Inflight Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Hit Ratio: avg: AVG((((100 * TCP_UTCL1_TRANSLATION_HIT_sum) / TCP_UTCL1_REQUEST_sum) if (TCP_UTCL1_REQUEST_sum != 0) else None)) @@ -360,9 +410,68 @@ Panel Config: max: MAX((TCP_UTCL1_TRANSLATION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + Misses under Translation Miss: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Req + $normUnit) + tips: Permission Misses: avg: AVG((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) min: MIN((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) max: MAX((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + - metric_table: + id: 1606 + title: L1D Addr Translation Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + units: Units + tips: Tips + metric: + Cache Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Cache Miss Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Serialization Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Thrashing Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Latency FIFO Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + Resident Page Full Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: + UTCL2 Stall: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + units: (Cycles + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1700_L2_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1700_L2_cache.yaml index e8a2807083..34dbc4c551 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1700_L2_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx942/1700_L2_cache.yaml @@ -176,6 +176,24 @@ Panel Config: max: MAX((TCC_REQ_sum * 128) / $denom) unit: (Bytes + $normUnit) tips: + Read Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Req: avg: AVG((TCC_REQ_sum / $denom)) min: MIN((TCC_REQ_sum / $denom)) @@ -206,12 +224,24 @@ Panel Config: max: MAX((TCC_STREAMING_REQ_sum / $denom)) unit: (Req + $normUnit) tips: + Bypasss Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Probe Req: avg: AVG((TCC_PROBE_sum / $denom)) min: MIN((TCC_PROBE_sum / $denom)) max: MAX((TCC_PROBE_sum / $denom)) unit: (Req + $normUnit) tips: + Input Buffer Req: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: Cache Hit: avg: AVG((((100 * TCC_HIT_sum) / (TCC_HIT_sum + TCC_MISS_sum)) if ((TCC_HIT_sum + TCC_MISS_sum) != 0) else None)) @@ -290,6 +320,36 @@ Panel Config: - metric_table: id: 1704 + title: L2 Cache Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Stalled on Latency FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Stalled on Write Data FIFO: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + Input Buffer Stalled on L2: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1705 title: L2 - Fabric Interface Stalls header: metric: Metric @@ -361,7 +421,7 @@ Panel Config: tips: - metric_table: - id: 1705 + id: 1706 title: L2 - Fabric Detailed Transaction Breakdown header: metric: Metric @@ -377,12 +437,6 @@ Panel Config: max: MAX((TCC_EA0_RDREQ_32B_sum / $denom)) unit: (Req + $normUnit) tips: - Read (Uncached): - avg: AVG((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - min: MIN((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - max: MAX((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) - unit: (Req + $normUnit) - tips: Read (64B): avg: AVG(((TCC_EA0_RDREQ_sum - TCC_BUBBLE_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) min: MIN(((TCC_EA0_RDREQ_sum - TCC_BUBBLE_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) @@ -395,6 +449,12 @@ Panel Config: max: MAX(((TCC_BUBBLE_sum) / $denom)) unit: (Req + $normUnit) tips: + Read (Uncached): + avg: AVG((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + min: MIN((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + max: MAX((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) + unit: (Req + $normUnit) + tips: HBM Read: avg: AVG((TCC_EA0_RDREQ_DRAM_sum / $denom)) min: MIN((TCC_EA0_RDREQ_DRAM_sum / $denom)) @@ -407,6 +467,24 @@ Panel Config: max: MAX((MAX((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Read Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Write and Atomic (32B): avg: AVG(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) min: MIN(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) @@ -437,9 +515,51 @@ Panel Config: max: MAX((MAX((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Write Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: Atomic: avg: AVG((TCC_EA0_ATOMIC_sum / $denom)) min: MIN((TCC_EA0_ATOMIC_sum / $denom)) max: MAX((TCC_EA0_ATOMIC_sum / $denom)) unit: (Req + $normUnit) tips: + Atomic - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Req + $normUnit) + tips: + Atomic Bandwidth - PCIe: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - Infinity Fabric™: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - HBM: + avg: None # Missing perfmon + min: None # Missing perfmon + max: None # Missing perfmon + unit: (Bytes + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1500_TA_and_TD.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1500_TA_and_TD.yaml new file mode 100644 index 0000000000..e67355a21a --- /dev/null +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1500_TA_and_TD.yaml @@ -0,0 +1,192 @@ +--- +# Add description/tips for each metric in this section. +# So it could be shown in hover. +Metric Description: + +# Define the panel properties and properties of each metric in the panel. +Panel Config: + id: 1500 + title: Address Processing Unit and Data Return Path (TA/TD) + data source: + - metric_table: + id: 1501 + title: Address Processing Unit + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Address Processing Unit Busy: + avg: AVG(((100 * TA_TA_BUSY_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + min: MIN(((100 * TA_TA_BUSY_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + max: MAX(((100 * TA_TA_BUSY_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + unit: pct + tips: + Address Stall: + avg: AVG(((100 * TA_ADDR_STALLED_BY_TC_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + min: MIN(((100 * TA_ADDR_STALLED_BY_TC_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + max: MAX(((100 * TA_ADDR_STALLED_BY_TC_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + unit: pct + tips: + Data Stall: + avg: AVG(((100 * TA_DATA_STALLED_BY_TC_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + min: MIN(((100 * TA_DATA_STALLED_BY_TC_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + max: MAX(((100 * TA_DATA_STALLED_BY_TC_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + unit: pct + tips: + Data-Processor → Address Stall: + avg: AVG(((100 * TA_ADDR_STALLED_BY_TD_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + min: MIN(((100 * TA_ADDR_STALLED_BY_TD_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + max: MAX(((100 * TA_ADDR_STALLED_BY_TD_CYCLES_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + unit: pct + tips: + Total Instructions: + avg: AVG((TA_TOTAL_WAVEFRONTS_sum / $denom)) + min: MIN((TA_TOTAL_WAVEFRONTS_sum / $denom)) + max: MAX((TA_TOTAL_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Global/Generic Instructions: + avg: AVG((TA_FLAT_WAVEFRONTS_sum / $denom)) + min: MIN((TA_FLAT_WAVEFRONTS_sum / $denom)) + max: MAX((TA_FLAT_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Global/Generic Read Instructions: + avg: AVG((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) + min: MIN((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) + max: MAX((TA_FLAT_READ_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Global/Generic Read Instructions for LDS: + avg: AVG((TA_FLAT_READ_LDS_WAVEFRONTS_sum / $denom)) + min: MIN((TA_FLAT_READ_LDS_WAVEFRONTS_sum / $denom)) + max: MAX((TA_FLAT_READ_LDS_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Global/Generic Write Instructions: + avg: AVG((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) + min: MIN((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) + max: MAX((TA_FLAT_WRITE_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Global/Generic Atomic Instructions: + avg: AVG((TA_FLAT_ATOMIC_WAVEFRONTS_sum / $denom)) + min: MIN((TA_FLAT_ATOMIC_WAVEFRONTS_sum / $denom)) + max: MAX((TA_FLAT_ATOMIC_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Spill/Stack Instructions: + avg: AVG((TA_BUFFER_WAVEFRONTS_sum / $denom)) + min: MIN((TA_BUFFER_WAVEFRONTS_sum / $denom)) + max: MAX((TA_BUFFER_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Spill/Stack Read Instructions: + avg: AVG((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) + min: MIN((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) + max: MAX((TA_BUFFER_READ_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Spill/Stack Read Instructions for LDS: + avg: AVG((TA_BUFFER_READ_LDS_WAVEFRONTS_sum / $denom)) + min: MIN((TA_BUFFER_READ_LDS_WAVEFRONTS_sum / $denom)) + max: MAX((TA_BUFFER_READ_LDS_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Spill/Stack Write Instructions: + avg: AVG((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) + min: MIN((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) + max: MAX((TA_BUFFER_WRITE_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Spill/Stack Atomic Instructions: + avg: AVG((TA_BUFFER_ATOMIC_WAVEFRONTS_sum / $denom)) + min: MIN((TA_BUFFER_ATOMIC_WAVEFRONTS_sum / $denom)) + max: MAX((TA_BUFFER_ATOMIC_WAVEFRONTS_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Spill/Stack Total Cycles: + avg: AVG((TA_BUFFER_TOTAL_CYCLES_sum / $denom)) + min: MIN((TA_BUFFER_TOTAL_CYCLES_sum / $denom)) + max: MAX((TA_BUFFER_TOTAL_CYCLES_sum / $denom)) + unit: (Cycles + $normUnit) + tips: + Spill/Stack Coalesced Read: + avg: AVG((TA_BUFFER_COALESCED_READ_CYCLES_sum / $denom)) + min: MIN((TA_BUFFER_COALESCED_READ_CYCLES_sum / $denom)) + max: MAX((TA_BUFFER_COALESCED_READ_CYCLES_sum / $denom)) + unit: (Cycles + $normUnit) + tips: + Spill/Stack Coalesced Write: + avg: AVG((TA_BUFFER_COALESCED_WRITE_CYCLES_sum / $denom)) + min: MIN((TA_BUFFER_COALESCED_WRITE_CYCLES_sum / $denom)) + max: MAX((TA_BUFFER_COALESCED_WRITE_CYCLES_sum / $denom)) + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1502 + title: Data-Return Path + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Data-Return Busy: + avg: AVG(((100 * TD_TD_BUSY_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + min: MIN(((100 * TD_TD_BUSY_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + max: MAX(((100 * TD_TD_BUSY_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + unit: pct + tips: + Cache RAM → Data-Return Stall: + avg: AVG(((100 * TD_TC_STALL_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + min: MIN(((100 * TD_TC_STALL_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + max: MAX(((100 * TD_TC_STALL_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + unit: pct + tips: + Workgroup manager → Data-Return Stall: + avg: AVG(((100 * TD_SPI_STALL_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + min: MIN(((100 * TD_SPI_STALL_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + max: MAX(((100 * TD_SPI_STALL_sum) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu))) + unit: pct + tips: + Coalescable Instructions: + avg: AVG((TD_COALESCABLE_WAVEFRONT_sum / $denom)) + min: MIN((TD_COALESCABLE_WAVEFRONT_sum / $denom)) + max: MAX((TD_COALESCABLE_WAVEFRONT_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Read Instructions: + avg: AVG((((TD_LOAD_WAVEFRONT_sum - TD_STORE_WAVEFRONT_sum) - TD_ATOMIC_WAVEFRONT_sum) + / $denom)) + min: MIN((((TD_LOAD_WAVEFRONT_sum - TD_STORE_WAVEFRONT_sum) - TD_ATOMIC_WAVEFRONT_sum) + / $denom)) + max: MAX((((TD_LOAD_WAVEFRONT_sum - TD_STORE_WAVEFRONT_sum) - TD_ATOMIC_WAVEFRONT_sum) + / $denom)) + unit: (Instructions + $normUnit) + tips: + Write Instructions: + avg: AVG((TD_STORE_WAVEFRONT_sum / $denom)) + min: MIN((TD_STORE_WAVEFRONT_sum / $denom)) + max: MAX((TD_STORE_WAVEFRONT_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Atomic Instructions: + avg: AVG((TD_ATOMIC_WAVEFRONT_sum / $denom)) + min: MIN((TD_ATOMIC_WAVEFRONT_sum / $denom)) + max: MAX((TD_ATOMIC_WAVEFRONT_sum / $denom)) + unit: (Instructions + $normUnit) + tips: + Write Ack Instructions: + avg: None # AVG((TD_WRITE_ACKT_WAVEFRONT_sum / $denom)) + min: None # MIN((TD_WRITE_ACKT_WAVEFRONT_sum / $denom)) + max: None # MAX((TD_WRITE_ACKT_WAVEFRONT_sum / $denom)) + unit: (Instructions + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1600_L1_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1600_L1_cache.yaml index e5e4522e01..2c34924a15 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1600_L1_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1600_L1_cache.yaml @@ -60,6 +60,31 @@ Panel Config: (((100 * TCP_TCR_TCP_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum != 0) else None) tips: + Stalled on Address: + expr: + (((100 * TCP_TCP_TA_ADDR_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum + != 0) else None) + tips: + Stalled on Data: + expr: + (((100 * TCP_TCP_TA_DATA_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum + != 0) else None) + tips: + Stalled on Latency FIFO: + expr: + (((100 * TCP_LFIFO_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum + != 0) else None) + tips: + Stalled on Request FIFO: + expr: + (((100 * TCP_RFIFO_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum + != 0) else None) + tips: + Stalled on Read Return: + expr: + (((100 * TCP_TCR_RDRET_STALL_sum) / TCP_GATE_EN1_sum) if (TCP_GATE_EN1_sum + != 0) else None) + tips: Tag RAM Stall (Read): expr: (((100 * TCP_READ_TAGCONFLICT_STALL_CYCLES_sum) / TCP_GATE_EN1_sum) @@ -172,6 +197,30 @@ Panel Config: TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom)) unit: (Bytes + $normUnit) tips: + Tag RAM 0 Req: + avg: AVG((TCP_TAGRAM0_REQ_sum / $denom)) + min: MIN((TCP_TAGRAM0_REQ_sum / $denom)) + max: MAX((TCP_TAGRAM0_REQ_sum / $denom)) + unit: (Req + $normUnit) + tips: + Tag RAM 1 Req: + avg: AVG((TCP_TAGRAM1_REQ_sum / $denom)) + min: MIN((TCP_TAGRAM1_REQ_sum / $denom)) + max: MAX((TCP_TAGRAM1_REQ_sum / $denom)) + unit: (Req + $normUnit) + tips: + Tag RAM 2 Req: + avg: AVG((TCP_TAGRAM2_REQ_sum / $denom)) + min: MIN((TCP_TAGRAM2_REQ_sum / $denom)) + max: MAX((TCP_TAGRAM2_REQ_sum / $denom)) + unit: (Req + $normUnit) + tips: + Tag RAM 3 Req: + avg: AVG((TCP_TAGRAM3_REQ_sum / $denom)) + min: MIN((TCP_TAGRAM3_REQ_sum / $denom)) + max: MAX((TCP_TAGRAM3_REQ_sum / $denom)) + unit: (Req + $normUnit) + tips: L1-L2 Read: avg: AVG((TCP_TCC_READ_REQ_sum / $denom)) min: MIN((TCP_TCC_READ_REQ_sum / $denom)) @@ -339,6 +388,12 @@ Panel Config: max: MAX((TCP_UTCL1_REQUEST_sum / $denom)) units: (Req + $normUnit) tips: + Inflight Req: + avg: AVG((TCP_CLIENT_UTCL1_INFLIGHT_sum / $denom)) + min: MIN((TCP_CLIENT_UTCL1_INFLIGHT_sum / $denom)) + max: MAX((TCP_CLIENT_UTCL1_INFLIGHT_sum / $denom)) + units: (Req + $normUnit) + tips: Hit Ratio: avg: AVG((((100 * TCP_UTCL1_TRANSLATION_HIT_sum) / TCP_UTCL1_REQUEST_sum) if (TCP_UTCL1_REQUEST_sum != 0) else None)) @@ -360,9 +415,68 @@ Panel Config: max: MAX((TCP_UTCL1_TRANSLATION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + Misses under Translation Miss: + avg: AVG((TCP_UTCL1_TRANSLATION_MISS_UNDER_MISS_sum / $denom)) + min: MIN((TCP_UTCL1_TRANSLATION_MISS_UNDER_MISS_sum / $denom)) + max: MAX((TCP_UTCL1_TRANSLATION_MISS_UNDER_MISS_sum / $denom)) + units: (Req + $normUnit) + tips: Permission Misses: avg: AVG((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) min: MIN((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) max: MAX((TCP_UTCL1_PERMISSION_MISS_sum / $denom)) units: (Req + $normUnit) tips: + - metric_table: + id: 1606 + title: L1D Addr Translation Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + units: Units + tips: Tips + metric: + Cache Full Stall: + avg: AVG((TCP_UTCL1_STALL_INFLIGHT_MAX_sum / $denom)) + min: MIN((TCP_UTCL1_STALL_INFLIGHT_MAX_sum / $denom)) + max: MAX((TCP_UTCL1_STALL_INFLIGHT_MAX_sum / $denom)) + units: (Cycles + $normUnit) + tips: + Cache Miss Stall: + avg: AVG((TCP_UTCL1_STALL_MULTI_MISS_sum / $denom)) + min: MIN((TCP_UTCL1_STALL_MULTI_MISS_sum / $denom)) + max: MAX((TCP_UTCL1_STALL_MULTI_MISS_sum / $denom)) + units: (Cycles + $normUnit) + tips: + Serialization Stall: + avg: AVG((TCP_UTCL1_SERIALIZATION_STALL_sum / $denom)) + min: MIN((TCP_UTCL1_SERIALIZATION_STALL_sum / $denom)) + max: MAX((TCP_UTCL1_SERIALIZATION_STALL_sum / $denom)) + units: (Cycles + $normUnit) + tips: + Thrashing Stall: + avg: AVG((TCP_UTCL1_THRASHING_STALL_sum / $denom)) + min: MIN((TCP_UTCL1_THRASHING_STALL_sum / $denom)) + max: MAX((TCP_UTCL1_THRASHING_STALL_sum / $denom)) + units: (Cycles + $normUnit) + tips: + Latency FIFO Stall: + avg: AVG((TCP_UTCL1_LFIFO_FULL_sum / $denom)) + min: MIN((TCP_UTCL1_LFIFO_FULL_sum / $denom)) + max: MAX((TCP_UTCL1_LFIFO_FULL_sum / $denom)) + units: (Cycles + $normUnit) + tips: + Resident Page Full Stall: + avg: AVG((TCP_UTCL1_STALL_LFIFO_NO_RES_sum / $denom)) + min: MIN((TCP_UTCL1_STALL_LFIFO_NO_RES_sum / $denom)) + max: MAX((TCP_UTCL1_STALL_LFIFO_NO_RES_sum / $denom)) + units: (Cycles + $normUnit) + tips: + UTCL2 Stall: + avg: AVG((TCP_UTCL1_STALL_UTCL2_REQ_OUT_OF_CREDITS_sum / $denom)) + min: MIN((TCP_UTCL1_STALL_UTCL2_REQ_OUT_OF_CREDITS_sum / $denom)) + max: MAX((TCP_UTCL1_STALL_UTCL2_REQ_OUT_OF_CREDITS_sum / $denom)) + units: (Cycles + $normUnit) + tips: diff --git a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1700_L2_cache.yaml b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1700_L2_cache.yaml index 17b3e3811a..a34f3445c3 100644 --- a/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1700_L2_cache.yaml +++ b/projects/rocprofiler-compute/src/rocprof_compute_soc/analysis_configs/gfx950/1700_L2_cache.yaml @@ -31,13 +31,13 @@ Panel Config: unit: pct tips: L2-Fabric Read BW: - value: AVG((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) - * 64)) / (End_Timestamp - Start_Timestamp))) + value: AVG((((TCC_EA0_RDREQ_32B_sum * 32) + (TCC_EA0_RDREQ_64B_sum * 64) + (TCC_EA0_RDREQ_128B_sum + * 128)) / (End_Timestamp - Start_Timestamp)) unit: GB/s tips: L2-Fabric Write and Atomic BW: value: AVG((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) - * 32)) / (End_Timestamp - Start_Timestamp))) + * 32)) / (End_Timestamp - Start_Timestamp)) unit: GB/s tips: @@ -53,12 +53,9 @@ Panel Config: tips: Tips metric: Read BW: - avg: AVG((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) - * 64)) / $denom)) - min: MIN((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) - * 64)) / $denom)) - max: MAX((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) - * 64)) / $denom)) + avg: AVG((((TCC_EA0_RDREQ_32B_sum * 32) + (TCC_EA0_RDREQ_64B_sum * 64) + (TCC_EA0_RDREQ_128B_sum * 128)) / $denom)) + min: MIN((((TCC_EA0_RDREQ_32B_sum * 32) + (TCC_EA0_RDREQ_64B_sum * 64) + (TCC_EA0_RDREQ_128B_sum * 128)) / $denom)) + max: MAX((((TCC_EA0_RDREQ_32B_sum * 32) + (TCC_EA0_RDREQ_64B_sum * 64) + (TCC_EA0_RDREQ_128B_sum * 128)) / $denom)) unit: (Bytes + $normUnit) tips: HBM Read Traffic: @@ -181,6 +178,24 @@ Panel Config: max: MAX((TCC_REQ_sum * 128) / $denom) unit: (Bytes + $normUnit) tips: + Read Bandwidth: + avg: AVG(TCC_READ_SECTORS_sum / $denom) + min: MIN(TCC_READ_SECTORS_sum / $denom) + max: MAX(TCC_READ_SECTORS_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Write Bandwidth: + avg: AVG(TCC_WRITE_SECTORS_sum / $denom) + min: MIN(TCC_WRITE_SECTORS_sum / $denom) + max: MAX(TCC_WRITE_SECTORS_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth: + avg: AVG(TCC_ATOMIC_SECTORS_sum / $denom) + min: MIN(TCC_ATOMIC_SECTORS_sum / $denom) + max: MAX(TCC_ATOMIC_SECTORS_sum / $denom) + unit: (Bytes + $normUnit) + tips: Req: avg: AVG((TCC_REQ_sum / $denom)) min: MIN((TCC_REQ_sum / $denom)) @@ -211,12 +226,24 @@ Panel Config: max: MAX((TCC_STREAMING_REQ_sum / $denom)) unit: (Req + $normUnit) tips: + Bypasss Req: + avg: AVG((TCC_BYPASS_REQ_sum / $denom)) + min: MIN((TCC_BYPASS_REQ_sum / $denom)) + max: MAX((TCC_BYPASS_REQ_sum / $denom)) + unit: (Req + $normUnit) + tips: Probe Req: avg: AVG((TCC_PROBE_sum / $denom)) min: MIN((TCC_PROBE_sum / $denom)) max: MAX((TCC_PROBE_sum / $denom)) unit: (Req + $normUnit) tips: + Input Buffer Req: + avg: AVG((TCC_IB_REQ_sum / $denom)) + min: MIN((TCC_IB_REQ_sum / $denom)) + max: MAX((TCC_IB_REQ_sum / $denom)) + unit: (Req + $normUnit) + tips: Cache Hit: avg: AVG((((100 * TCC_HIT_sum) / (TCC_HIT_sum + TCC_MISS_sum)) if ((TCC_HIT_sum + TCC_MISS_sum) != 0) else None)) @@ -295,6 +322,36 @@ Panel Config: - metric_table: id: 1704 + title: L2 Cache Stalls + header: + metric: Metric + avg: Avg + min: Min + max: Max + unit: Unit + tips: Tips + metric: + Stalled on Latency FIFO: + avg: AVG(TCC_LATENCY_FIFO_FULL_sum / $denom) + min: MIN(TCC_LATENCY_FIFO_FULL_sum / $denom) + max: MAX(TCC_LATENCY_FIFO_FULL_sum / $denom) + unit: (Cycles + $normUnit) + tips: + Stalled on Write Data FIFO: + avg: AVG(TCC_SRC_FIFO_FULL_sum / $denom) + min: MIN(TCC_SRC_FIFO_FULL_sum / $denom) + max: MAX(TCC_SRC_FIFO_FULL_sum / $denom) + unit: (Cycles + $normUnit) + tips: + Input Buffer Stalled on L2: + avg: AVG(TCC_IB_STALL_sum / $denom) + min: MIN(TCC_IB_STALL_sum / $denom) + max: MAX(TCC_IB_STALL_sum / $denom) + unit: (Cycles + $normUnit) + tips: + + - metric_table: + id: 1705 title: L2 - Fabric Interface Stalls header: metric: Metric @@ -366,7 +423,7 @@ Panel Config: tips: - metric_table: - id: 1705 + id: 1706 title: L2 - Fabric Detailed Transaction Breakdown header: metric: Metric @@ -382,30 +439,54 @@ Panel Config: max: MAX((TCC_EA0_RDREQ_32B_sum / $denom)) unit: (Req + $normUnit) tips: + Read (64B): + avg: AVG((TCC_EA0_RDREQ_64B_sum / $denom)) + min: MIN((TCC_EA0_RDREQ_64B_sum / $denom)) + max: MAX((TCC_EA0_RDREQ_64B_sum / $denom)) + unit: (Req + $normUnit) + tips: + Read (128B): + avg: AVG((TCC_EA0_RDREQ_128B_sum / $denom)) + min: MIN((TCC_EA0_RDREQ_128B_sum / $denom)) + max: MAX((TCC_EA0_RDREQ_128B_sum / $denom)) + unit: (Req + $normUnit) + tips: Read (Uncached): avg: AVG((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) min: MIN((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) max: MAX((TCC_EA0_RD_UNCACHED_32B_sum / $denom)) unit: (Req + $normUnit) tips: - Read (64B): - avg: AVG(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) - min: MIN(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) - max: MAX(((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum) / $denom)) - unit: (Req + $normUnit) - tips: - HBM Read: + Read - HBM: avg: AVG((TCC_EA0_RDREQ_DRAM_sum / $denom)) min: MIN((TCC_EA0_RDREQ_DRAM_sum / $denom)) max: MAX((TCC_EA0_RDREQ_DRAM_sum / $denom)) unit: (Req + $normUnit) tips: - Remote Read: + Read - Remote: avg: AVG((MAX((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_DRAM_sum), 0) / $denom)) min: MIN((MAX((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_DRAM_sum), 0) / $denom)) max: MAX((MAX((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Read Bandwidth - PCIe: + avg: None # AVG(TCC_EA0_RDREQ_IO_32B_sum / $denom) + min: None # MIN(TCC_EA0_RDREQ_IO_32B_sum / $denom) + max: None # MAX(TCC_EA0_RDREQ_IO_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - Infinity Fabric™: + avg: None # AVG(TCC_EA0_RDREQ_GMI_32B_sum / $denom) + min: None # MIN(TCC_EA0_RDREQ_GMI_32B_sum / $denom) + max: None # MAX(TCC_EA0_RDREQ_GMI_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Read Bandwidth - HBM: + avg: None # AVG(TCC_EA0_RDREQ_DRAM_32B_sum / $denom) + min: None # MIN(TCC_EA0_RDREQ_DRAM_32B_sum / $denom) + max: None # MAX(TCC_EA0_RDREQ_DRAM_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: Write and Atomic (32B): avg: AVG(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) min: MIN(((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum) / $denom)) @@ -424,21 +505,63 @@ Panel Config: max: MAX((TCC_EA0_WRREQ_64B_sum / $denom)) unit: (Req + $normUnit) tips: - HBM Write and Atomic: - avg: AVG((TCC_EA0_WRREQ_DRAM_sum / $denom)) - min: MIN((TCC_EA0_WRREQ_DRAM_sum / $denom)) - max: MAX((TCC_EA0_WRREQ_DRAM_sum / $denom)) + Write - HBM: + avg: AVG((TCC_EA0_WRREQ_WRITE_DRAM_sum / $denom)) + min: MIN((TCC_EA0_WRREQ_WRITE_DRAM_sum / $denom)) + max: MAX((TCC_EA0_WRREQ_WRITE_DRAM_sum / $denom)) unit: (Req + $normUnit) tips: - Remote Write and Atomic: + Write and Atomic - Remote: avg: AVG((MAX((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_DRAM_sum), 0) / $denom)) min: MIN((MAX((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_DRAM_sum), 0) / $denom)) max: MAX((MAX((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_DRAM_sum), 0) / $denom)) unit: (Req + $normUnit) tips: + Write Bandwidth - PCIe: + avg: AVG(TCC_EA0_WRREQ_WRITE_IO_32B_sum / $denom) + min: MIN(TCC_EA0_WRREQ_WRITE_IO_32B_sum / $denom) + max: MAX(TCC_EA0_WRREQ_WRITE_IO_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - Infinity Fabric™: + avg: AVG(TCC_EA0_WRREQ_WRITE_GMI_32B_sum / $denom) + min: MIN(TCC_EA0_WRREQ_WRITE_GMI_32B_sum / $denom) + max: MAX(TCC_EA0_WRREQ_WRITE_GMI_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Write Bandwidth - HBM: + avg: AVG(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum / $denom) + min: MIN(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum / $denom) + max: MAX(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: Atomic: avg: AVG((TCC_EA0_ATOMIC_sum / $denom)) min: MIN((TCC_EA0_ATOMIC_sum / $denom)) max: MAX((TCC_EA0_ATOMIC_sum / $denom)) unit: (Req + $normUnit) tips: + Atomic - HBM: + avg: AVG((TCC_EA0_WRREQ_ATOMIC_DRAM_sum / $denom)) + min: MIN((TCC_EA0_WRREQ_ATOMIC_DRAM_sum / $denom)) + max: MAX((TCC_EA0_WRREQ_ATOMIC_DRAM_sum / $denom)) + unit: (Req + $normUnit) + tips: + Atomic Bandwidth - PCIe: + avg: AVG(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum / $denom) + min: MIN(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum / $denom) + max: MAX(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - Infinity Fabric™: + avg: AVG(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum / $denom) + min: MIN(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum / $denom) + max: MAX(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: + Atomic Bandwidth - HBM: + avg: AVG(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum / $denom) + min: MIN(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum / $denom) + max: MAX(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum / $denom) + unit: (Bytes + $normUnit) + tips: