Add MI200/MI300 counters

Revision - Addition [Impact SoC: MI200, MI300]
    Note: this set of counters are important help understand the
          bottleneck.
    1.	TCC_TAG_STALL
        a.	Metric:  TCC_TAG_STALL/TCC_CYCLE: percentage of time TCC
            tag lookup pipeline is stalled
    2.	TCP_TCR_TCP_STALL_CYCLES
        a.	Metric: TCP_TCR_TCP_STALL_CYCLES/TCP_GATE_EN1: percentage
            of time TCP is stalled by TCR

Revision - Addition [Impact SoC: MI300]
    3.	TCC_BUBBLE:
        a.	Definition: Number of 128-byte read requests sent to EA
        b.	Revised Metric #1, TCC-EA Read BW:
        ReadBW =   128 * TCC_BUBBLE
                + 64 * (TCC_EA0_RDREQ - TCC_BUBBLE - TCC_EA0_RDREQ_32B)
                + 32 * TCC_EA0_RDREQ_32B
        c.	Revised Metric #2: TCC_EA Read Latency
        ReadLatency = TCC_EA0_RDREQ_LEVEL / (TCC_BUBBLE + TCC_EA0_RDREQ)

    /* [Fineprint] More detailed arithmetic:
    * ReadLatency = TCC_EA0_RDREQ_LEVEL / (#32B_req + #64B_req + #128B_req * 2)
    */

Change-Id: I0a2dfc1b64ca97023b1e8ba0f9830330b3034946


[ROCm/rocprofiler commit: 46e02a9866]
This commit is contained in:
Mythreya
2023-10-27 10:59:11 -07:00
committed by Mythreya Kuricheti
parent 7aaf49a641
commit 6a4321c4e3
6 changed files with 24 additions and 0 deletions
@@ -616,6 +616,7 @@
<metric name="TCC_EA0_RD_UNCACHED_32B" block=TCC event=40 descr="Number of 32-byte TCC/EA read due to uncached traffic. A 64-byte request will be counted as 2"></metric>
<metric name="TCC_EA0_RDREQ_LEVEL" block=TCC event=44 descr="The sum of the number of TCC/EA read requests in flight. This is primarily meant for measure average EA read latency. Average read latency = TCC_PERF_SEL_EA_RDREQ_LEVEL/TCC_PERF_SEL_EA_RDREQ."></metric>
<metric name="TCC_TAG_STALL" block=TCC event=45 descr="Number of cycles the normal request pipeline in the tag was stalled for any reason. Normally, stalls of this nature are measured exactly from one point the pipeline, but that is not the case for this counter. Probes can stall the pipeline at a variety of places, and there is no single point that can reasonably measure the total stalls accurately."></metric>
<metric name="TCC_BUBBLE" block="TCC" event=56 descr="Number of 128-byte read requests sent to EA."></metric>
<metric name="TCC_NORMAL_WRITEBACK" block=TCC event=68 descr="Number of writebacks due to requests that are not writeback requests."></metric>
<metric name="TCC_ALL_TC_OP_WB_WRITEBACK" block=TCC event=73 descr="Number of writebacks due to all TC_OP writeback requests."></metric>
<metric name="TCC_NORMAL_EVICT" block=TCC event=74 descr="Number of evictions due to requests that are not invalidate or probe requests."></metric>