Update Unit of Bandwidth metrics to Gbps (#96)
* Add Utilization to metric name for Bandwidth related metrics whose Unit
is Percent
* Update Unit of Bandwidth metrics to Gbps
* Update metric Formula to use total duration as denominator instead of normalization unit.
* Update metric Description
* Update metric Unit
* Update CHANGELOG
Tá an tiomantas seo le fáil i:
1 tuismitheoir
a10d897a69
tiomantas
89c74ac3d3
34 comhad athraithe
+1088
-988
Níor tháinig aon chomhaid le do chuardach
+10
-6
@@ -11,8 +11,12 @@ Panel Config:
|
||||
instructions, averaged over the lifetime of the kernel. Calculated as the ratio
|
||||
of the total number of cycles spent by the scheduler issuing LDS instructions
|
||||
over the total CU cycles.
|
||||
Theoretical Bandwidth Utilization: Indicates the maximum amount of bytes that
|
||||
could have been loaded from, stored to, or atomically updated in the LDS divided
|
||||
as percentage of theoretical peak. Does not take into account the execution
|
||||
mask of the wavefront when the instruction was executed.
|
||||
Theoretical Bandwidth: Indicates the maximum amount of bytes that could have been
|
||||
loaded from, stored to, or atomically updated in the LDS per normalization unit.
|
||||
loaded from, stored to, or atomically updated in the LDS divided by total duration.
|
||||
Does not take into account the execution mask of the wavefront when the instruction
|
||||
was executed.
|
||||
Bank Conflict Rate: Indicates the percentage of active LDS cycles that were spent
|
||||
@@ -58,7 +62,7 @@ Panel Config:
|
||||
Access Rate:
|
||||
value: AVG(((200 * SQ_ACTIVE_INST_LDS) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu)))
|
||||
unit: Pct of Peak
|
||||
Theoretical Bandwidth:
|
||||
Theoretical Bandwidth Utilization:
|
||||
value: AVG((((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ (End_Timestamp - Start_Timestamp)) / (($max_sclk * $cu_per_gpu) * 0.00128)))
|
||||
unit: Pct of Peak
|
||||
@@ -86,12 +90,12 @@ Panel Config:
|
||||
unit: (Instr + $normUnit)
|
||||
Theoretical Bandwidth:
|
||||
avg: AVG(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
LDS Latency:
|
||||
avg: AVG(((SQ_ACCUM_PREV_HIRES / SQ_INSTS_LDS) if (SQ_INSTS_LDS != 0) else
|
||||
None))
|
||||
|
||||
+15
-12
@@ -3,15 +3,18 @@ Panel Config:
|
||||
id: 1300
|
||||
title: Instruction Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the L1I cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of L1I requests over the
|
||||
total L1I cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the L1I cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of L1I requests over
|
||||
the total L1I cycles.
|
||||
Cache Hit Rate: The percent of L1I requests that hit [#l1i-cache]_ on a previously
|
||||
loaded line the cache. Calculated as the ratio of the number of L1I requests
|
||||
that hit over the number of all L1I requests.
|
||||
L1I-L2 Bandwidth: "The percent of the peak theoretical L1I \u2192 L2 cache request\
|
||||
\ bandwidth achieved. Calculated as the ratio of the total number of requests\
|
||||
\ from the L1I to the L2 cache over the total L1I-L2 interface cycles."
|
||||
L1I-L2 Bandwidth Utilization: "The percent of the peak theoretical L1I \u2192\
|
||||
\ L2 cache request bandwidth achieved. Calculated as the ratio of the total\
|
||||
\ number of requests from the L1I to the L2 cache over the total L1I-L2 interface\
|
||||
\ cycles."
|
||||
L1I-L2 Bandwidth: Total number of bytes transferred across L1I - L2 interface
|
||||
divided by total duration.
|
||||
Req: The total number of requests made to the L1I per normalization-unit
|
||||
Hits: The total number of L1I requests that hit on a previously loaded cache line,
|
||||
per normalization-unit.
|
||||
@@ -30,7 +33,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_ICACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -38,7 +41,7 @@ Panel Config:
|
||||
value: AVG(((SQC_ICACHE_HITS * 100) / ((SQC_ICACHE_HITS + SQC_ICACHE_MISSES)
|
||||
+ SQC_ICACHE_MISSES_DUPLICATE)))
|
||||
unit: Pct of Peak
|
||||
L1I-L2 Bandwidth:
|
||||
L1I-L2 Bandwidth Utilization:
|
||||
value: AVG(((SQC_TC_INST_REQ * 100000) / (2 * ($max_sclk * $sqc_per_gpu)
|
||||
* (End_Timestamp - Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -100,7 +103,7 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
L1I-L2 Bandwidth:
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
+13
-10
@@ -3,14 +3,17 @@ Panel Config:
|
||||
id: 1400
|
||||
title: Scalar L1 Data Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the sL1D cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of sL1D requests over the
|
||||
total sL1D cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the sL1D cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of sL1D requests
|
||||
over the total sL1D cycles.
|
||||
Cache Hit Rate: Indicates the percent of sL1D requests that hit on a previously
|
||||
loaded line the cache. The ratio of the number of sL1D requests that hit over
|
||||
the number of all sL1D requests.
|
||||
sL1D-L2 BW Utilization: The percentage of the peak theoretical sL1D - L2 interface
|
||||
bandwidth acheived.\ \ Caclulated as total number of bytes read from, written
|
||||
to, or atomically updated\ \ across the sL1D - L2 interface.
|
||||
sL1D-L2 BW: "The total number of bytes read from, written to, or atomically updated\
|
||||
\ across the sL1D\u2194L2 interface, per normalization unit. Note that sL1D\
|
||||
\ across the sL1D\u2194L2 interface, divided by total duration. Note that sL1D\
|
||||
\ writes and atomics are typically unused on current CDNA accelerators, so in\
|
||||
\ the majority of cases this can be interpreted as an sL1D\u2192L2 read bandwidth."
|
||||
Req: The total number of requests, of any size or type, made to the sL1D per normalization
|
||||
@@ -51,7 +54,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_DCACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -60,7 +63,7 @@ Panel Config:
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE)) if ((SQC_DCACHE_HITS + SQC_DCACHE_MISSES
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE) != 0) else None))
|
||||
unit: Pct of Peak
|
||||
sL1D-L2 BW:
|
||||
sL1D-L2 BW Utilization:
|
||||
value: AVG(((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 100000) / (2 * ($max_sclk * $sqc_per_gpu) * (End_Timestamp - Start_Timestamp)))
|
||||
unit: Pct of Peak
|
||||
@@ -158,12 +161,12 @@ Panel Config:
|
||||
metric:
|
||||
sL1D-L2 BW:
|
||||
avg: AVG(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Read Req:
|
||||
avg: AVG((SQC_TC_DATA_READ_REQ / $denom))
|
||||
min: MIN((SQC_TC_DATA_READ_REQ / $denom))
|
||||
|
||||
+21
-21
@@ -5,12 +5,12 @@ Panel Config:
|
||||
metrics_description:
|
||||
Hit rate: The ratio of the number of vL1D cache line requests that hit in vL1D
|
||||
cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Bandwidth: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions, as a percent of the peak theoretical bandwidth achievable on the
|
||||
specific accelerator. The number of bytes is calculated as the number of cache
|
||||
lines requested multiplied by the cache line size. This value does not consider
|
||||
partial requests, so for instance, if only a single value is requested in a
|
||||
cache line, the data movement will still be counted as a full cache line.
|
||||
Bandwidth Utilization: The number of bytes looked up in the vL1D cache as a result
|
||||
of VMEM instructions, as a percent of the peak theoretical bandwidth achievable
|
||||
on the specific accelerator. The number of bytes is calculated as the number
|
||||
of cache lines requested multiplied by the cache line size. This value does
|
||||
not consider partial requests, so for instance, if only a single value is requested
|
||||
in a cache line, the data movement will still be counted as a full cache line.
|
||||
Utilization: Indicates how busy the vL1D Cache RAM was during the kernel execution.
|
||||
The number of cycles where the vL1D Cache RAM is actively processing any request
|
||||
divided by the number of cycles where the vL1D is active.
|
||||
@@ -42,11 +42,11 @@ Panel Config:
|
||||
Atomic Req: The total number of incoming atomic requests from the address processing
|
||||
unit after coalescing per normalization unit.
|
||||
Cache BW: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions per normalization unit. The number of bytes is calculated as the
|
||||
number of cache lines requested multiplied by the cache line size. This value
|
||||
does not consider partial requests, so for instance, if only a single value
|
||||
is requested in a cache line, the data movement will still be counted as a full
|
||||
cache line.
|
||||
instructions divided by total duration. The number of bytes is calculated as
|
||||
the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
as a full cache line.
|
||||
Cache Hit Rate: The ratio of the number of vL1D cache line requests that hit in
|
||||
vL1D cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Cache Accesses: The total number of cache line lookups in the vL1D.
|
||||
@@ -57,7 +57,7 @@ Panel Config:
|
||||
command during the kernel's execution per normalization unit. This may be triggered
|
||||
by, for instance, the buffer_wbinvl1 instruction.
|
||||
L1-L2 BW: The number of bytes transferred across the vL1D-L2 interface as a result
|
||||
of VMEM instructions, per normalization unit. The number of bytes is calculated
|
||||
of VMEM instructions, divided by total duration. The number of bytes is calculated
|
||||
as the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
@@ -128,7 +128,7 @@ Panel Config:
|
||||
/ TCP_TOTAL_CACHE_ACCESSES_sum)) if (TCP_TOTAL_CACHE_ACCESSES_sum != 0)
|
||||
else None))
|
||||
unit: Pct of Peak
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp
|
||||
- Start_Timestamp)))) / ((($max_sclk / 1000) * 64) * $cu_per_gpu))
|
||||
unit: Pct of Peak
|
||||
@@ -201,10 +201,10 @@ Panel Config:
|
||||
/ $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Cache BW:
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / $denom))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / $denom))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Cache Hit Rate:
|
||||
avg: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITH_RET_REQ_sum) + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum))
|
||||
@@ -242,12 +242,12 @@ Panel Config:
|
||||
unit: (Req + $normUnit)
|
||||
L1-L2 BW:
|
||||
avg: AVG(((64 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum) + TCP_TCC_ATOMIC_WITH_RET_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((64 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum) + TCP_TCC_ATOMIC_WITH_RET_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((64 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum) + TCP_TCC_ATOMIC_WITH_RET_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
L1-L2 Read:
|
||||
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
|
||||
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
|
||||
|
||||
+30
-30
@@ -20,8 +20,8 @@ Panel Config:
|
||||
HBM Bandwidth: Maximum theoretical bandwidth of the accelerator's local high-bandwidth
|
||||
memory (HBM) per unit time. This value is calculated as the number of HBM channels
|
||||
multiplied by the HBM channel width multiplied by the HBM clock frequency.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric per
|
||||
normalization unit.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric divided
|
||||
by total duration.
|
||||
HBM Read Traffic: The percent of read requests generated by the L2 cache that
|
||||
are routed to the accelerator's local high-bandwidth memory (HBM). This breakdown
|
||||
does not consider the size of the request (meaning that 32B and 64B requests
|
||||
@@ -42,9 +42,9 @@ Panel Config:
|
||||
as a single request), so this metric only approximates the percent of the L2-Fabric
|
||||
read bandwidth directed to an uncached memory location.
|
||||
Write and Atomic BW: The total number of bytes written by the L2 over Infinity
|
||||
Fabric by write and atomic operations per normalization unit. Note that on current
|
||||
CDNA accelerators, such as the MI2XX, requests are only considered atomic by
|
||||
Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
Fabric by write and atomic operations divided by total duration. Note that on
|
||||
current CDNA accelerators, such as the MI2XX, requests are only considered atomic
|
||||
by Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
fine-grained memory allocations or uncached memory allocations on the MI2XX.
|
||||
HBM Write and Atomic Traffic: The percent of write and atomic requests generated
|
||||
by the L2 cache that are routed to the accelerator's local high-bandwidth memory
|
||||
@@ -82,17 +82,17 @@ Panel Config:
|
||||
Atomic Latency: The time-averaged number of cycles atomic requests spent in Infinity
|
||||
Fabric before a completion acknowledgement (atomic without return value) or
|
||||
data (atomic with return value) was returned to the L2.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, per normalization unit.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, divided by total duration.
|
||||
The number of bytes is calculated as the number of cache lines requested multiplied
|
||||
by the cache line size. This value does not consider partial requests, so for
|
||||
example, if only a single value is requested in a cache line, the data movement
|
||||
will still be counted as a full cache line.
|
||||
Read Bandwidth: Total number of bytes looked up in the L2 cache for read requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Write Bandwidth: Total number of bytes looked up in the L2 cache for write requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Atomic Bandwidth: Total number of bytes looked up in the L2 cache for atomic requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Req: The total number of incoming requests to the L2 from all clients for all
|
||||
request types, per normalization unit.
|
||||
Read Req: The total number of read requests to the L2 from all clients.
|
||||
@@ -150,11 +150,11 @@ Panel Config:
|
||||
64B of data from any source other than the accelerator's local HBM, per normalization
|
||||
unit.
|
||||
Read Bandwidth - PCIe: Total number of bytes due to L2 read requests due to PCIe
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
"Read Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 read
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Read Bandwidth - HBM: Total number of bytes due to L2 read requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Write and Atomic (32B): The total number of L2 requests to Infinity Fabric to
|
||||
write or atomically update 32B of data to any memory location, per normalization
|
||||
unit.
|
||||
@@ -171,17 +171,17 @@ Panel Config:
|
||||
write or atomically update 32B or 64B of data in any memory location other than
|
||||
the accelerator's local HBM, per normalization unit.
|
||||
Write Bandwidth - PCIe: Total number of bytes due to L2 write requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Write Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 write
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Write Bandwidth - HBM: Total number of bytes due to L2 write requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Atomic Bandwidth - PCIe: Total number of bytes due to L2 atomic requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Atomic Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 atomic
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Atomic Bandwidth - HBM: Total number of bytes due to L2 atomic requests due to
|
||||
HBM traffic, per normalization unit.
|
||||
HBM traffic, divided by total duration.
|
||||
Atomic: The total number of L2 requests to Infinity Fabric to atomically update
|
||||
32B or 64B of data in any memory location, per normalization unit. See Request
|
||||
flow for more detail. Note that on current CDNA accelerators, such as the MI2XX,
|
||||
@@ -257,12 +257,12 @@ Panel Config:
|
||||
metric:
|
||||
Read BW:
|
||||
avg: AVG((((TCC_EA_RDREQ_32B_sum * 32) + ((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA_RDREQ_32B_sum * 32) + ((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA_RDREQ_32B_sum * 32) + ((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Read Traffic:
|
||||
avg: AVG((100 * (TCC_EA_RDREQ_DRAM_sum / TCC_EA_RDREQ_sum) if (TCC_EA_RDREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -289,12 +289,12 @@ Panel Config:
|
||||
unit: pct
|
||||
Write and Atomic BW:
|
||||
avg: AVG((((TCC_EA_WRREQ_64B_sum * 64) + ((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA_WRREQ_64B_sum * 64) + ((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA_WRREQ_64B_sum * 64) + ((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Write and Atomic Traffic:
|
||||
avg: AVG((100 * (TCC_EA_WRREQ_DRAM_sum / TCC_EA_WRREQ_sum) if (TCC_EA_WRREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -362,10 +362,10 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
avg: AVG((TCC_REQ_sum * 64) / $denom)
|
||||
min: MIN((TCC_REQ_sum * 64) / $denom)
|
||||
max: MAX((TCC_REQ_sum * 64) / $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG((TCC_REQ_sum * 64) / (End_Timestamp - Start_Timestamp))
|
||||
min: MIN((TCC_REQ_sum * 64) / (End_Timestamp - Start_Timestamp))
|
||||
max: MAX((TCC_REQ_sum * 64) / (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Req:
|
||||
avg: AVG((TCC_REQ_sum / $denom))
|
||||
min: MIN((TCC_REQ_sum / $denom))
|
||||
|
||||
+10
-6
@@ -11,8 +11,12 @@ Panel Config:
|
||||
instructions, averaged over the lifetime of the kernel. Calculated as the ratio
|
||||
of the total number of cycles spent by the scheduler issuing LDS instructions
|
||||
over the total CU cycles.
|
||||
Theoretical Bandwidth Utilization: Indicates the maximum amount of bytes that
|
||||
could have been loaded from, stored to, or atomically updated in the LDS divided
|
||||
as percentage of theoretical peak. Does not take into account the execution
|
||||
mask of the wavefront when the instruction was executed.
|
||||
Theoretical Bandwidth: Indicates the maximum amount of bytes that could have been
|
||||
loaded from, stored to, or atomically updated in the LDS per normalization unit.
|
||||
loaded from, stored to, or atomically updated in the LDS divided by total duration.
|
||||
Does not take into account the execution mask of the wavefront when the instruction
|
||||
was executed.
|
||||
Bank Conflict Rate: Indicates the percentage of active LDS cycles that were spent
|
||||
@@ -58,7 +62,7 @@ Panel Config:
|
||||
Access Rate:
|
||||
value: AVG(((200 * SQ_ACTIVE_INST_LDS) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu)))
|
||||
unit: Pct of Peak
|
||||
Theoretical Bandwidth:
|
||||
Theoretical Bandwidth Utilization:
|
||||
value: AVG((((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ (End_Timestamp - Start_Timestamp)) / (($max_sclk * $cu_per_gpu) * 0.00128)))
|
||||
unit: Pct of Peak
|
||||
@@ -86,12 +90,12 @@ Panel Config:
|
||||
unit: (Instr + $normUnit)
|
||||
Theoretical Bandwidth:
|
||||
avg: AVG(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
LDS Latency:
|
||||
avg: AVG(((SQ_ACCUM_PREV_HIRES / SQ_INSTS_LDS) if (SQ_INSTS_LDS != 0) else
|
||||
None))
|
||||
|
||||
+15
-12
@@ -3,15 +3,18 @@ Panel Config:
|
||||
id: 1300
|
||||
title: Instruction Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the L1I cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of L1I requests over the
|
||||
total L1I cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the L1I cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of L1I requests over
|
||||
the total L1I cycles.
|
||||
Cache Hit Rate: The percent of L1I requests that hit [#l1i-cache]_ on a previously
|
||||
loaded line the cache. Calculated as the ratio of the number of L1I requests
|
||||
that hit over the number of all L1I requests.
|
||||
L1I-L2 Bandwidth: "The percent of the peak theoretical L1I \u2192 L2 cache request\
|
||||
\ bandwidth achieved. Calculated as the ratio of the total number of requests\
|
||||
\ from the L1I to the L2 cache over the total L1I-L2 interface cycles."
|
||||
L1I-L2 Bandwidth Utilization: "The percent of the peak theoretical L1I \u2192\
|
||||
\ L2 cache request bandwidth achieved. Calculated as the ratio of the total\
|
||||
\ number of requests from the L1I to the L2 cache over the total L1I-L2 interface\
|
||||
\ cycles."
|
||||
L1I-L2 Bandwidth: Total number of bytes transferred across L1I - L2 interface
|
||||
divided by total duration.
|
||||
Req: The total number of requests made to the L1I per normalization-unit
|
||||
Hits: The total number of L1I requests that hit on a previously loaded cache line,
|
||||
per normalization-unit.
|
||||
@@ -30,7 +33,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_ICACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -38,7 +41,7 @@ Panel Config:
|
||||
value: AVG(((SQC_ICACHE_HITS * 100) / ((SQC_ICACHE_HITS + SQC_ICACHE_MISSES)
|
||||
+ SQC_ICACHE_MISSES_DUPLICATE)))
|
||||
unit: Pct of Peak
|
||||
L1I-L2 Bandwidth:
|
||||
L1I-L2 Bandwidth Utilization:
|
||||
value: AVG(((SQC_TC_INST_REQ * 100000) / (2 * ($max_sclk * $sqc_per_gpu)
|
||||
* (End_Timestamp - Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -100,7 +103,7 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
L1I-L2 Bandwidth:
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
+13
-10
@@ -3,14 +3,17 @@ Panel Config:
|
||||
id: 1400
|
||||
title: Scalar L1 Data Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the sL1D cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of sL1D requests over the
|
||||
total sL1D cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the sL1D cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of sL1D requests
|
||||
over the total sL1D cycles.
|
||||
Cache Hit Rate: Indicates the percent of sL1D requests that hit on a previously
|
||||
loaded line the cache. The ratio of the number of sL1D requests that hit over
|
||||
the number of all sL1D requests.
|
||||
sL1D-L2 BW Utilization: The percentage of the peak theoretical sL1D - L2 interface
|
||||
bandwidth acheived.\ \ Caclulated as total number of bytes read from, written
|
||||
to, or atomically updated\ \ across the sL1D - L2 interface.
|
||||
sL1D-L2 BW: "The total number of bytes read from, written to, or atomically updated\
|
||||
\ across the sL1D\u2194L2 interface, per normalization unit. Note that sL1D\
|
||||
\ across the sL1D\u2194L2 interface, divided by total duration. Note that sL1D\
|
||||
\ writes and atomics are typically unused on current CDNA accelerators, so in\
|
||||
\ the majority of cases this can be interpreted as an sL1D\u2192L2 read bandwidth."
|
||||
Req: The total number of requests, of any size or type, made to the sL1D per normalization
|
||||
@@ -51,7 +54,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_DCACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -60,7 +63,7 @@ Panel Config:
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE)) if ((SQC_DCACHE_HITS + SQC_DCACHE_MISSES
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE) != 0) else None))
|
||||
unit: Pct of Peak
|
||||
sL1D-L2 BW:
|
||||
sL1D-L2 BW Utilization:
|
||||
value: AVG(((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 100000) / (2 * ($max_sclk * $sqc_per_gpu) * (End_Timestamp - Start_Timestamp)))
|
||||
unit: Pct of Peak
|
||||
@@ -158,12 +161,12 @@ Panel Config:
|
||||
metric:
|
||||
sL1D-L2 BW:
|
||||
avg: AVG(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Read Req:
|
||||
avg: AVG((SQC_TC_DATA_READ_REQ / $denom))
|
||||
min: MIN((SQC_TC_DATA_READ_REQ / $denom))
|
||||
|
||||
+21
-21
@@ -5,12 +5,12 @@ Panel Config:
|
||||
metrics_description:
|
||||
Hit rate: The ratio of the number of vL1D cache line requests that hit in vL1D
|
||||
cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Bandwidth: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions, as a percent of the peak theoretical bandwidth achievable on the
|
||||
specific accelerator. The number of bytes is calculated as the number of cache
|
||||
lines requested multiplied by the cache line size. This value does not consider
|
||||
partial requests, so for instance, if only a single value is requested in a
|
||||
cache line, the data movement will still be counted as a full cache line.
|
||||
Bandwidth Utilization: The number of bytes looked up in the vL1D cache as a result
|
||||
of VMEM instructions, as a percent of the peak theoretical bandwidth achievable
|
||||
on the specific accelerator. The number of bytes is calculated as the number
|
||||
of cache lines requested multiplied by the cache line size. This value does
|
||||
not consider partial requests, so for instance, if only a single value is requested
|
||||
in a cache line, the data movement will still be counted as a full cache line.
|
||||
Utilization: Indicates how busy the vL1D Cache RAM was during the kernel execution.
|
||||
The number of cycles where the vL1D Cache RAM is actively processing any request
|
||||
divided by the number of cycles where the vL1D is active.
|
||||
@@ -42,11 +42,11 @@ Panel Config:
|
||||
Atomic Req: The total number of incoming atomic requests from the address processing
|
||||
unit after coalescing per normalization unit.
|
||||
Cache BW: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions per normalization unit. The number of bytes is calculated as the
|
||||
number of cache lines requested multiplied by the cache line size. This value
|
||||
does not consider partial requests, so for instance, if only a single value
|
||||
is requested in a cache line, the data movement will still be counted as a full
|
||||
cache line.
|
||||
instructions divided by total duration. The number of bytes is calculated as
|
||||
the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
as a full cache line.
|
||||
Cache Hit Rate: The ratio of the number of vL1D cache line requests that hit in
|
||||
vL1D cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Cache Accesses: The total number of cache line lookups in the vL1D.
|
||||
@@ -57,7 +57,7 @@ Panel Config:
|
||||
command during the kernel's execution per normalization unit. This may be triggered
|
||||
by, for instance, the buffer_wbinvl1 instruction.
|
||||
L1-L2 BW: The number of bytes transferred across the vL1D-L2 interface as a result
|
||||
of VMEM instructions, per normalization unit. The number of bytes is calculated
|
||||
of VMEM instructions, divided by total duration. The number of bytes is calculated
|
||||
as the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
@@ -128,7 +128,7 @@ Panel Config:
|
||||
/ TCP_TOTAL_CACHE_ACCESSES_sum)) if (TCP_TOTAL_CACHE_ACCESSES_sum != 0)
|
||||
else None))
|
||||
unit: Pct of Peak
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp
|
||||
- Start_Timestamp)))) / ((($max_sclk / 1000) * 64) * $cu_per_gpu))
|
||||
unit: Pct of Peak
|
||||
@@ -201,10 +201,10 @@ Panel Config:
|
||||
/ $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Cache BW:
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / $denom))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / $denom))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Cache Hit Rate:
|
||||
avg: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITH_RET_REQ_sum) + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum))
|
||||
@@ -242,12 +242,12 @@ Panel Config:
|
||||
unit: (Req + $normUnit)
|
||||
L1-L2 BW:
|
||||
avg: AVG(((64 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum) + TCP_TCC_ATOMIC_WITH_RET_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((64 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum) + TCP_TCC_ATOMIC_WITH_RET_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((64 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum) + TCP_TCC_ATOMIC_WITH_RET_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
L1-L2 Read:
|
||||
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
|
||||
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
|
||||
|
||||
+30
-30
@@ -20,8 +20,8 @@ Panel Config:
|
||||
HBM Bandwidth: Maximum theoretical bandwidth of the accelerator's local high-bandwidth
|
||||
memory (HBM) per unit time. This value is calculated as the number of HBM channels
|
||||
multiplied by the HBM channel width multiplied by the HBM clock frequency.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric per
|
||||
normalization unit.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric divided
|
||||
by total duration.
|
||||
HBM Read Traffic: The percent of read requests generated by the L2 cache that
|
||||
are routed to the accelerator's local high-bandwidth memory (HBM). This breakdown
|
||||
does not consider the size of the request (meaning that 32B and 64B requests
|
||||
@@ -42,9 +42,9 @@ Panel Config:
|
||||
as a single request), so this metric only approximates the percent of the L2-Fabric
|
||||
read bandwidth directed to an uncached memory location.
|
||||
Write and Atomic BW: The total number of bytes written by the L2 over Infinity
|
||||
Fabric by write and atomic operations per normalization unit. Note that on current
|
||||
CDNA accelerators, such as the MI2XX, requests are only considered atomic by
|
||||
Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
Fabric by write and atomic operations divided by total duration. Note that on
|
||||
current CDNA accelerators, such as the MI2XX, requests are only considered atomic
|
||||
by Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
fine-grained memory allocations or uncached memory allocations on the MI2XX.
|
||||
HBM Write and Atomic Traffic: The percent of write and atomic requests generated
|
||||
by the L2 cache that are routed to the accelerator's local high-bandwidth memory
|
||||
@@ -82,17 +82,17 @@ Panel Config:
|
||||
Atomic Latency: The time-averaged number of cycles atomic requests spent in Infinity
|
||||
Fabric before a completion acknowledgement (atomic without return value) or
|
||||
data (atomic with return value) was returned to the L2.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, per normalization unit.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, divided by total duration.
|
||||
The number of bytes is calculated as the number of cache lines requested multiplied
|
||||
by the cache line size. This value does not consider partial requests, so for
|
||||
example, if only a single value is requested in a cache line, the data movement
|
||||
will still be counted as a full cache line.
|
||||
Read Bandwidth: Total number of bytes looked up in the L2 cache for read requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Write Bandwidth: Total number of bytes looked up in the L2 cache for write requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Atomic Bandwidth: Total number of bytes looked up in the L2 cache for atomic requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Req: The total number of incoming requests to the L2 from all clients for all
|
||||
request types, per normalization unit.
|
||||
Read Req: The total number of read requests to the L2 from all clients.
|
||||
@@ -150,11 +150,11 @@ Panel Config:
|
||||
64B of data from any source other than the accelerator's local HBM, per normalization
|
||||
unit.
|
||||
Read Bandwidth - PCIe: Total number of bytes due to L2 read requests due to PCIe
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
"Read Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 read
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Read Bandwidth - HBM: Total number of bytes due to L2 read requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Write and Atomic (32B): The total number of L2 requests to Infinity Fabric to
|
||||
write or atomically update 32B of data to any memory location, per normalization
|
||||
unit.
|
||||
@@ -171,17 +171,17 @@ Panel Config:
|
||||
write or atomically update 32B or 64B of data in any memory location other than
|
||||
the accelerator's local HBM, per normalization unit.
|
||||
Write Bandwidth - PCIe: Total number of bytes due to L2 write requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Write Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 write
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Write Bandwidth - HBM: Total number of bytes due to L2 write requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Atomic Bandwidth - PCIe: Total number of bytes due to L2 atomic requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Atomic Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 atomic
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Atomic Bandwidth - HBM: Total number of bytes due to L2 atomic requests due to
|
||||
HBM traffic, per normalization unit.
|
||||
HBM traffic, divided by total duration.
|
||||
Atomic: The total number of L2 requests to Infinity Fabric to atomically update
|
||||
32B or 64B of data in any memory location, per normalization unit. See Request
|
||||
flow for more detail. Note that on current CDNA accelerators, such as the MI2XX,
|
||||
@@ -257,12 +257,12 @@ Panel Config:
|
||||
metric:
|
||||
Read BW:
|
||||
avg: AVG((((TCC_EA_RDREQ_32B_sum * 32) + ((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA_RDREQ_32B_sum * 32) + ((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA_RDREQ_32B_sum * 32) + ((TCC_EA_RDREQ_sum - TCC_EA_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Read Traffic:
|
||||
avg: AVG((100 * (TCC_EA_RDREQ_DRAM_sum / TCC_EA_RDREQ_sum) if (TCC_EA_RDREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -289,12 +289,12 @@ Panel Config:
|
||||
unit: pct
|
||||
Write and Atomic BW:
|
||||
avg: AVG((((TCC_EA_WRREQ_64B_sum * 64) + ((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA_WRREQ_64B_sum * 64) + ((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA_WRREQ_64B_sum * 64) + ((TCC_EA_WRREQ_sum - TCC_EA_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Write and Atomic Traffic:
|
||||
avg: AVG((100 * (TCC_EA_WRREQ_DRAM_sum / TCC_EA_WRREQ_sum) if (TCC_EA_WRREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -362,10 +362,10 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
avg: AVG((TCC_REQ_sum * 128) / $denom)
|
||||
min: MIN((TCC_REQ_sum * 128) / $denom)
|
||||
max: MAX((TCC_REQ_sum * 128) / $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
min: MIN((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
max: MAX((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Req:
|
||||
avg: AVG((TCC_REQ_sum / $denom))
|
||||
min: MIN((TCC_REQ_sum / $denom))
|
||||
|
||||
+10
-6
@@ -11,8 +11,12 @@ Panel Config:
|
||||
instructions, averaged over the lifetime of the kernel. Calculated as the ratio
|
||||
of the total number of cycles spent by the scheduler issuing LDS instructions
|
||||
over the total CU cycles.
|
||||
Theoretical Bandwidth Utilization: Indicates the maximum amount of bytes that
|
||||
could have been loaded from, stored to, or atomically updated in the LDS divided
|
||||
as percentage of theoretical peak. Does not take into account the execution
|
||||
mask of the wavefront when the instruction was executed.
|
||||
Theoretical Bandwidth: Indicates the maximum amount of bytes that could have been
|
||||
loaded from, stored to, or atomically updated in the LDS per normalization unit.
|
||||
loaded from, stored to, or atomically updated in the LDS divided by total duration.
|
||||
Does not take into account the execution mask of the wavefront when the instruction
|
||||
was executed.
|
||||
Bank Conflict Rate: Indicates the percentage of active LDS cycles that were spent
|
||||
@@ -58,7 +62,7 @@ Panel Config:
|
||||
Access Rate:
|
||||
value: AVG(((200 * SQ_ACTIVE_INST_LDS) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu)))
|
||||
unit: Pct of Peak
|
||||
Theoretical Bandwidth (% of Peak):
|
||||
Theoretical Bandwidth Utilization:
|
||||
value: AVG((((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ (End_Timestamp - Start_Timestamp)) / (($max_sclk * $cu_per_gpu) * 0.00128)))
|
||||
unit: Pct of Peak
|
||||
@@ -86,12 +90,12 @@ Panel Config:
|
||||
unit: (Instr + $normUnit)
|
||||
Theoretical Bandwidth:
|
||||
avg: AVG(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
LDS Latency:
|
||||
avg: AVG(((SQ_ACCUM_PREV_HIRES / SQ_INSTS_LDS) if (SQ_INSTS_LDS != 0) else
|
||||
None))
|
||||
|
||||
+15
-12
@@ -3,15 +3,18 @@ Panel Config:
|
||||
id: 1300
|
||||
title: Instruction Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the L1I cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of L1I requests over the
|
||||
total L1I cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the L1I cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of L1I requests over
|
||||
the total L1I cycles.
|
||||
Cache Hit Rate: The percent of L1I requests that hit [#l1i-cache]_ on a previously
|
||||
loaded line the cache. Calculated as the ratio of the number of L1I requests
|
||||
that hit over the number of all L1I requests.
|
||||
L1I-L2 Bandwidth: "The percent of the peak theoretical L1I \u2192 L2 cache request\
|
||||
\ bandwidth achieved. Calculated as the ratio of the total number of requests\
|
||||
\ from the L1I to the L2 cache over the total L1I-L2 interface cycles."
|
||||
L1I-L2 Bandwidth Utilization: "The percent of the peak theoretical L1I \u2192\
|
||||
\ L2 cache request bandwidth achieved. Calculated as the ratio of the total\
|
||||
\ number of requests from the L1I to the L2 cache over the total L1I-L2 interface\
|
||||
\ cycles."
|
||||
L1I-L2 Bandwidth: Total number of bytes transferred across L1I - L2 interface
|
||||
divided by total duration.
|
||||
Req: The total number of requests made to the L1I per normalization-unit
|
||||
Hits: The total number of L1I requests that hit on a previously loaded cache line,
|
||||
per normalization-unit.
|
||||
@@ -30,7 +33,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_ICACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -38,7 +41,7 @@ Panel Config:
|
||||
value: AVG(((SQC_ICACHE_HITS * 100) / ((SQC_ICACHE_HITS + SQC_ICACHE_MISSES)
|
||||
+ SQC_ICACHE_MISSES_DUPLICATE)))
|
||||
unit: Pct of Peak
|
||||
L1I-L2 Bandwidth:
|
||||
L1I-L2 Bandwidth Utilization:
|
||||
value: AVG(((SQC_TC_INST_REQ * 100000) / (2 * ($max_sclk * $sqc_per_gpu)
|
||||
* (End_Timestamp - Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -100,7 +103,7 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
L1I-L2 Bandwidth:
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
+13
-10
@@ -3,14 +3,17 @@ Panel Config:
|
||||
id: 1400
|
||||
title: Scalar L1 Data Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the sL1D cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of sL1D requests over the
|
||||
total sL1D cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the sL1D cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of sL1D requests
|
||||
over the total sL1D cycles.
|
||||
Cache Hit Rate: Indicates the percent of sL1D requests that hit on a previously
|
||||
loaded line the cache. The ratio of the number of sL1D requests that hit over
|
||||
the number of all sL1D requests.
|
||||
sL1D-L2 BW Utilization: The percentage of the peak theoretical sL1D - L2 interface
|
||||
bandwidth acheived.\ \ Caclulated as total number of bytes read from, written
|
||||
to, or atomically updated\ \ across the sL1D - L2 interface.
|
||||
sL1D-L2 BW: "The total number of bytes read from, written to, or atomically updated\
|
||||
\ across the sL1D\u2194L2 interface, per normalization unit. Note that sL1D\
|
||||
\ across the sL1D\u2194L2 interface, divided by total duration. Note that sL1D\
|
||||
\ writes and atomics are typically unused on current CDNA accelerators, so in\
|
||||
\ the majority of cases this can be interpreted as an sL1D\u2192L2 read bandwidth."
|
||||
Req: The total number of requests, of any size or type, made to the sL1D per normalization
|
||||
@@ -51,7 +54,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_DCACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -60,7 +63,7 @@ Panel Config:
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE)) if ((SQC_DCACHE_HITS + SQC_DCACHE_MISSES
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE) != 0) else None))
|
||||
unit: Pct of Peak
|
||||
sL1D-L2 BW:
|
||||
sL1D-L2 BW Utilization:
|
||||
value: AVG(((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 100000) / (2 * ($max_sclk * $sqc_per_gpu) * (End_Timestamp - Start_Timestamp)))
|
||||
unit: Pct of Peak
|
||||
@@ -158,12 +161,12 @@ Panel Config:
|
||||
metric:
|
||||
sL1D-L2 BW:
|
||||
avg: AVG(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Read Req:
|
||||
avg: AVG((SQC_TC_DATA_READ_REQ / $denom))
|
||||
min: MIN((SQC_TC_DATA_READ_REQ / $denom))
|
||||
|
||||
+21
-21
@@ -5,12 +5,12 @@ Panel Config:
|
||||
metrics_description:
|
||||
Hit rate: The ratio of the number of vL1D cache line requests that hit in vL1D
|
||||
cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Bandwidth: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions, as a percent of the peak theoretical bandwidth achievable on the
|
||||
specific accelerator. The number of bytes is calculated as the number of cache
|
||||
lines requested multiplied by the cache line size. This value does not consider
|
||||
partial requests, so for instance, if only a single value is requested in a
|
||||
cache line, the data movement will still be counted as a full cache line.
|
||||
Bandwidth Utilization: The number of bytes looked up in the vL1D cache as a result
|
||||
of VMEM instructions, as a percent of the peak theoretical bandwidth achievable
|
||||
on the specific accelerator. The number of bytes is calculated as the number
|
||||
of cache lines requested multiplied by the cache line size. This value does
|
||||
not consider partial requests, so for instance, if only a single value is requested
|
||||
in a cache line, the data movement will still be counted as a full cache line.
|
||||
Utilization: Indicates how busy the vL1D Cache RAM was during the kernel execution.
|
||||
The number of cycles where the vL1D Cache RAM is actively processing any request
|
||||
divided by the number of cycles where the vL1D is active.
|
||||
@@ -42,11 +42,11 @@ Panel Config:
|
||||
Atomic Req: The total number of incoming atomic requests from the address processing
|
||||
unit after coalescing per normalization unit.
|
||||
Cache BW: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions per normalization unit. The number of bytes is calculated as the
|
||||
number of cache lines requested multiplied by the cache line size. This value
|
||||
does not consider partial requests, so for instance, if only a single value
|
||||
is requested in a cache line, the data movement will still be counted as a full
|
||||
cache line.
|
||||
instructions divided by total duration. The number of bytes is calculated as
|
||||
the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
as a full cache line.
|
||||
Cache Hit Rate: The ratio of the number of vL1D cache line requests that hit in
|
||||
vL1D cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Cache Accesses: The total number of cache line lookups in the vL1D.
|
||||
@@ -57,7 +57,7 @@ Panel Config:
|
||||
command during the kernel's execution per normalization unit. This may be triggered
|
||||
by, for instance, the buffer_wbinvl1 instruction.
|
||||
L1-L2 BW: The number of bytes transferred across the vL1D-L2 interface as a result
|
||||
of VMEM instructions, per normalization unit. The number of bytes is calculated
|
||||
of VMEM instructions, divided by total duration. The number of bytes is calculated
|
||||
as the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
@@ -128,7 +128,7 @@ Panel Config:
|
||||
/ TCP_TOTAL_CACHE_ACCESSES_sum)) if (TCP_TOTAL_CACHE_ACCESSES_sum != 0)
|
||||
else None))
|
||||
unit: Pct of Peak
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp
|
||||
- Start_Timestamp)))) / ((($max_sclk / 1000) * 128) * $cu_per_gpu))
|
||||
unit: Pct of Peak
|
||||
@@ -201,10 +201,10 @@ Panel Config:
|
||||
/ $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Cache BW:
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Cache Hit Rate:
|
||||
avg: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITH_RET_REQ_sum) + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum))
|
||||
@@ -242,12 +242,12 @@ Panel Config:
|
||||
unit: (Req + $normUnit)
|
||||
L1-L2 BW:
|
||||
avg: AVG(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
L1-L2 Read:
|
||||
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
|
||||
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
|
||||
|
||||
+30
-30
@@ -20,8 +20,8 @@ Panel Config:
|
||||
HBM Bandwidth: Maximum theoretical bandwidth of the accelerator's local high-bandwidth
|
||||
memory (HBM) per unit time. This value is calculated as the number of HBM channels
|
||||
multiplied by the HBM channel width multiplied by the HBM clock frequency.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric per
|
||||
normalization unit.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric divided
|
||||
by total duration.
|
||||
HBM Read Traffic: The percent of read requests generated by the L2 cache that
|
||||
are routed to the accelerator's local high-bandwidth memory (HBM). This breakdown
|
||||
does not consider the size of the request (meaning that 32B and 64B requests
|
||||
@@ -42,9 +42,9 @@ Panel Config:
|
||||
as a single request), so this metric only approximates the percent of the L2-Fabric
|
||||
read bandwidth directed to an uncached memory location.
|
||||
Write and Atomic BW: The total number of bytes written by the L2 over Infinity
|
||||
Fabric by write and atomic operations per normalization unit. Note that on current
|
||||
CDNA accelerators, such as the MI2XX, requests are only considered atomic by
|
||||
Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
Fabric by write and atomic operations divided by total duration. Note that on
|
||||
current CDNA accelerators, such as the MI2XX, requests are only considered atomic
|
||||
by Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
fine-grained memory allocations or uncached memory allocations on the MI2XX.
|
||||
HBM Write and Atomic Traffic: The percent of write and atomic requests generated
|
||||
by the L2 cache that are routed to the accelerator's local high-bandwidth memory
|
||||
@@ -82,17 +82,17 @@ Panel Config:
|
||||
Atomic Latency: The time-averaged number of cycles atomic requests spent in Infinity
|
||||
Fabric before a completion acknowledgement (atomic without return value) or
|
||||
data (atomic with return value) was returned to the L2.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, per normalization unit.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, divided by total duration.
|
||||
The number of bytes is calculated as the number of cache lines requested multiplied
|
||||
by the cache line size. This value does not consider partial requests, so for
|
||||
example, if only a single value is requested in a cache line, the data movement
|
||||
will still be counted as a full cache line.
|
||||
Read Bandwidth: Total number of bytes looked up in the L2 cache for read requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Write Bandwidth: Total number of bytes looked up in the L2 cache for write requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Atomic Bandwidth: Total number of bytes looked up in the L2 cache for atomic requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Req: The total number of incoming requests to the L2 from all clients for all
|
||||
request types, per normalization unit.
|
||||
Read Req: The total number of read requests to the L2 from all clients.
|
||||
@@ -150,11 +150,11 @@ Panel Config:
|
||||
64B of data from any source other than the accelerator's local HBM, per normalization
|
||||
unit.
|
||||
Read Bandwidth - PCIe: Total number of bytes due to L2 read requests due to PCIe
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
"Read Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 read
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Read Bandwidth - HBM: Total number of bytes due to L2 read requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Write and Atomic (32B): The total number of L2 requests to Infinity Fabric to
|
||||
write or atomically update 32B of data to any memory location, per normalization
|
||||
unit.
|
||||
@@ -171,17 +171,17 @@ Panel Config:
|
||||
write or atomically update 32B or 64B of data in any memory location other than
|
||||
the accelerator's local HBM, per normalization unit.
|
||||
Write Bandwidth - PCIe: Total number of bytes due to L2 write requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Write Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 write
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Write Bandwidth - HBM: Total number of bytes due to L2 write requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Atomic Bandwidth - PCIe: Total number of bytes due to L2 atomic requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Atomic Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 atomic
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Atomic Bandwidth - HBM: Total number of bytes due to L2 atomic requests due to
|
||||
HBM traffic, per normalization unit.
|
||||
HBM traffic, divided by total duration.
|
||||
Atomic: The total number of L2 requests to Infinity Fabric to atomically update
|
||||
32B or 64B of data in any memory location, per normalization unit. See Request
|
||||
flow for more detail. Note that on current CDNA accelerators, such as the MI2XX,
|
||||
@@ -257,12 +257,12 @@ Panel Config:
|
||||
metric:
|
||||
Read BW:
|
||||
avg: AVG((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Read Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_RDREQ_DRAM_sum / TCC_EA0_RDREQ_sum) if (TCC_EA0_RDREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -289,12 +289,12 @@ Panel Config:
|
||||
unit: pct
|
||||
Write and Atomic BW:
|
||||
avg: AVG((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Write and Atomic Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_WRREQ_DRAM_sum / TCC_EA0_WRREQ_sum) if (TCC_EA0_WRREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -362,10 +362,10 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
avg: AVG((TCC_REQ_sum * 128) / $denom)
|
||||
min: MIN((TCC_REQ_sum * 128) / $denom)
|
||||
max: MAX((TCC_REQ_sum * 128) / $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
min: MIN((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
max: MAX((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Req:
|
||||
avg: AVG((TCC_REQ_sum / $denom))
|
||||
min: MIN((TCC_REQ_sum / $denom))
|
||||
|
||||
+10
-6
@@ -11,8 +11,12 @@ Panel Config:
|
||||
instructions, averaged over the lifetime of the kernel. Calculated as the ratio
|
||||
of the total number of cycles spent by the scheduler issuing LDS instructions
|
||||
over the total CU cycles.
|
||||
Theoretical Bandwidth Utilization: Indicates the maximum amount of bytes that
|
||||
could have been loaded from, stored to, or atomically updated in the LDS divided
|
||||
as percentage of theoretical peak. Does not take into account the execution
|
||||
mask of the wavefront when the instruction was executed.
|
||||
Theoretical Bandwidth: Indicates the maximum amount of bytes that could have been
|
||||
loaded from, stored to, or atomically updated in the LDS per normalization unit.
|
||||
loaded from, stored to, or atomically updated in the LDS divided by total duration.
|
||||
Does not take into account the execution mask of the wavefront when the instruction
|
||||
was executed.
|
||||
Bank Conflict Rate: Indicates the percentage of active LDS cycles that were spent
|
||||
@@ -58,7 +62,7 @@ Panel Config:
|
||||
Access Rate:
|
||||
value: AVG(((200 * SQ_ACTIVE_INST_LDS) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu)))
|
||||
unit: Pct of Peak
|
||||
Theoretical Bandwidth (% of Peak):
|
||||
Theoretical Bandwidth Utilization:
|
||||
value: AVG((((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ (End_Timestamp - Start_Timestamp)) / (($max_sclk * $cu_per_gpu) * 0.00128)))
|
||||
unit: Pct of Peak
|
||||
@@ -86,12 +90,12 @@ Panel Config:
|
||||
unit: (Instr + $normUnit)
|
||||
Theoretical Bandwidth:
|
||||
avg: AVG(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
LDS Latency:
|
||||
avg: AVG(((SQ_ACCUM_PREV_HIRES / SQ_INSTS_LDS) if (SQ_INSTS_LDS != 0) else
|
||||
None))
|
||||
|
||||
+15
-12
@@ -3,15 +3,18 @@ Panel Config:
|
||||
id: 1300
|
||||
title: Instruction Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the L1I cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of L1I requests over the
|
||||
total L1I cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the L1I cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of L1I requests over
|
||||
the total L1I cycles.
|
||||
Cache Hit Rate: The percent of L1I requests that hit [#l1i-cache]_ on a previously
|
||||
loaded line the cache. Calculated as the ratio of the number of L1I requests
|
||||
that hit over the number of all L1I requests.
|
||||
L1I-L2 Bandwidth: "The percent of the peak theoretical L1I \u2192 L2 cache request\
|
||||
\ bandwidth achieved. Calculated as the ratio of the total number of requests\
|
||||
\ from the L1I to the L2 cache over the total L1I-L2 interface cycles."
|
||||
L1I-L2 Bandwidth Utilization: "The percent of the peak theoretical L1I \u2192\
|
||||
\ L2 cache request bandwidth achieved. Calculated as the ratio of the total\
|
||||
\ number of requests from the L1I to the L2 cache over the total L1I-L2 interface\
|
||||
\ cycles."
|
||||
L1I-L2 Bandwidth: Total number of bytes transferred across L1I - L2 interface
|
||||
divided by total duration.
|
||||
Req: The total number of requests made to the L1I per normalization-unit
|
||||
Hits: The total number of L1I requests that hit on a previously loaded cache line,
|
||||
per normalization-unit.
|
||||
@@ -30,7 +33,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_ICACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -38,7 +41,7 @@ Panel Config:
|
||||
value: AVG(((SQC_ICACHE_HITS * 100) / ((SQC_ICACHE_HITS + SQC_ICACHE_MISSES)
|
||||
+ SQC_ICACHE_MISSES_DUPLICATE)))
|
||||
unit: Pct of Peak
|
||||
L1I-L2 Bandwidth:
|
||||
L1I-L2 Bandwidth Utilization:
|
||||
value: AVG(((SQC_TC_INST_REQ * 100000) / (2 * ($max_sclk * $sqc_per_gpu)
|
||||
* (End_Timestamp - Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -100,7 +103,7 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
L1I-L2 Bandwidth:
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
+13
-10
@@ -3,14 +3,17 @@ Panel Config:
|
||||
id: 1400
|
||||
title: Scalar L1 Data Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the sL1D cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of sL1D requests over the
|
||||
total sL1D cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the sL1D cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of sL1D requests
|
||||
over the total sL1D cycles.
|
||||
Cache Hit Rate: Indicates the percent of sL1D requests that hit on a previously
|
||||
loaded line the cache. The ratio of the number of sL1D requests that hit over
|
||||
the number of all sL1D requests.
|
||||
sL1D-L2 BW Utilization: The percentage of the peak theoretical sL1D - L2 interface
|
||||
bandwidth acheived.\ \ Caclulated as total number of bytes read from, written
|
||||
to, or atomically updated\ \ across the sL1D - L2 interface.
|
||||
sL1D-L2 BW: "The total number of bytes read from, written to, or atomically updated\
|
||||
\ across the sL1D\u2194L2 interface, per normalization unit. Note that sL1D\
|
||||
\ across the sL1D\u2194L2 interface, divided by total duration. Note that sL1D\
|
||||
\ writes and atomics are typically unused on current CDNA accelerators, so in\
|
||||
\ the majority of cases this can be interpreted as an sL1D\u2192L2 read bandwidth."
|
||||
Req: The total number of requests, of any size or type, made to the sL1D per normalization
|
||||
@@ -51,7 +54,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_DCACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -60,7 +63,7 @@ Panel Config:
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE)) if ((SQC_DCACHE_HITS + SQC_DCACHE_MISSES
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE) != 0) else None))
|
||||
unit: Pct of Peak
|
||||
sL1D-L2 BW:
|
||||
sL1D-L2 BW Utilization:
|
||||
value: AVG(((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 100000) / (2 * ($max_sclk * $sqc_per_gpu) * (End_Timestamp - Start_Timestamp)))
|
||||
unit: Pct of Peak
|
||||
@@ -158,12 +161,12 @@ Panel Config:
|
||||
metric:
|
||||
sL1D-L2 BW:
|
||||
avg: AVG(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Read Req:
|
||||
avg: AVG((SQC_TC_DATA_READ_REQ / $denom))
|
||||
min: MIN((SQC_TC_DATA_READ_REQ / $denom))
|
||||
|
||||
+21
-21
@@ -5,12 +5,12 @@ Panel Config:
|
||||
metrics_description:
|
||||
Hit rate: The ratio of the number of vL1D cache line requests that hit in vL1D
|
||||
cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Bandwidth: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions, as a percent of the peak theoretical bandwidth achievable on the
|
||||
specific accelerator. The number of bytes is calculated as the number of cache
|
||||
lines requested multiplied by the cache line size. This value does not consider
|
||||
partial requests, so for instance, if only a single value is requested in a
|
||||
cache line, the data movement will still be counted as a full cache line.
|
||||
Bandwidth Utilization: The number of bytes looked up in the vL1D cache as a result
|
||||
of VMEM instructions, as a percent of the peak theoretical bandwidth achievable
|
||||
on the specific accelerator. The number of bytes is calculated as the number
|
||||
of cache lines requested multiplied by the cache line size. This value does
|
||||
not consider partial requests, so for instance, if only a single value is requested
|
||||
in a cache line, the data movement will still be counted as a full cache line.
|
||||
Utilization: Indicates how busy the vL1D Cache RAM was during the kernel execution.
|
||||
The number of cycles where the vL1D Cache RAM is actively processing any request
|
||||
divided by the number of cycles where the vL1D is active.
|
||||
@@ -42,11 +42,11 @@ Panel Config:
|
||||
Atomic Req: The total number of incoming atomic requests from the address processing
|
||||
unit after coalescing per normalization unit.
|
||||
Cache BW: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions per normalization unit. The number of bytes is calculated as the
|
||||
number of cache lines requested multiplied by the cache line size. This value
|
||||
does not consider partial requests, so for instance, if only a single value
|
||||
is requested in a cache line, the data movement will still be counted as a full
|
||||
cache line.
|
||||
instructions divided by total duration. The number of bytes is calculated as
|
||||
the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
as a full cache line.
|
||||
Cache Hit Rate: The ratio of the number of vL1D cache line requests that hit in
|
||||
vL1D cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Cache Accesses: The total number of cache line lookups in the vL1D.
|
||||
@@ -57,7 +57,7 @@ Panel Config:
|
||||
command during the kernel's execution per normalization unit. This may be triggered
|
||||
by, for instance, the buffer_wbinvl1 instruction.
|
||||
L1-L2 BW: The number of bytes transferred across the vL1D-L2 interface as a result
|
||||
of VMEM instructions, per normalization unit. The number of bytes is calculated
|
||||
of VMEM instructions, divided by total duration. The number of bytes is calculated
|
||||
as the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
@@ -128,7 +128,7 @@ Panel Config:
|
||||
/ TCP_TOTAL_CACHE_ACCESSES_sum)) if (TCP_TOTAL_CACHE_ACCESSES_sum != 0)
|
||||
else None))
|
||||
unit: Pct of Peak
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp
|
||||
- Start_Timestamp)))) / ((($max_sclk / 1000) * 128) * $cu_per_gpu))
|
||||
unit: Pct of Peak
|
||||
@@ -201,10 +201,10 @@ Panel Config:
|
||||
/ $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Cache BW:
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Cache Hit Rate:
|
||||
avg: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITH_RET_REQ_sum) + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum))
|
||||
@@ -242,12 +242,12 @@ Panel Config:
|
||||
unit: (Req + $normUnit)
|
||||
L1-L2 BW:
|
||||
avg: AVG(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
L1-L2 Read:
|
||||
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
|
||||
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
|
||||
|
||||
+30
-30
@@ -20,8 +20,8 @@ Panel Config:
|
||||
HBM Bandwidth: Maximum theoretical bandwidth of the accelerator's local high-bandwidth
|
||||
memory (HBM) per unit time. This value is calculated as the number of HBM channels
|
||||
multiplied by the HBM channel width multiplied by the HBM clock frequency.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric per
|
||||
normalization unit.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric divided
|
||||
by total duration.
|
||||
HBM Read Traffic: The percent of read requests generated by the L2 cache that
|
||||
are routed to the accelerator's local high-bandwidth memory (HBM). This breakdown
|
||||
does not consider the size of the request (meaning that 32B and 64B requests
|
||||
@@ -42,9 +42,9 @@ Panel Config:
|
||||
as a single request), so this metric only approximates the percent of the L2-Fabric
|
||||
read bandwidth directed to an uncached memory location.
|
||||
Write and Atomic BW: The total number of bytes written by the L2 over Infinity
|
||||
Fabric by write and atomic operations per normalization unit. Note that on current
|
||||
CDNA accelerators, such as the MI2XX, requests are only considered atomic by
|
||||
Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
Fabric by write and atomic operations divided by total duration. Note that on
|
||||
current CDNA accelerators, such as the MI2XX, requests are only considered atomic
|
||||
by Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
fine-grained memory allocations or uncached memory allocations on the MI2XX.
|
||||
HBM Write and Atomic Traffic: The percent of write and atomic requests generated
|
||||
by the L2 cache that are routed to the accelerator's local high-bandwidth memory
|
||||
@@ -82,17 +82,17 @@ Panel Config:
|
||||
Atomic Latency: The time-averaged number of cycles atomic requests spent in Infinity
|
||||
Fabric before a completion acknowledgement (atomic without return value) or
|
||||
data (atomic with return value) was returned to the L2.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, per normalization unit.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, divided by total duration.
|
||||
The number of bytes is calculated as the number of cache lines requested multiplied
|
||||
by the cache line size. This value does not consider partial requests, so for
|
||||
example, if only a single value is requested in a cache line, the data movement
|
||||
will still be counted as a full cache line.
|
||||
Read Bandwidth: Total number of bytes looked up in the L2 cache for read requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Write Bandwidth: Total number of bytes looked up in the L2 cache for write requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Atomic Bandwidth: Total number of bytes looked up in the L2 cache for atomic requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Req: The total number of incoming requests to the L2 from all clients for all
|
||||
request types, per normalization unit.
|
||||
Read Req: The total number of read requests to the L2 from all clients.
|
||||
@@ -150,11 +150,11 @@ Panel Config:
|
||||
64B of data from any source other than the accelerator's local HBM, per normalization
|
||||
unit.
|
||||
Read Bandwidth - PCIe: Total number of bytes due to L2 read requests due to PCIe
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
"Read Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 read
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Read Bandwidth - HBM: Total number of bytes due to L2 read requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Write and Atomic (32B): The total number of L2 requests to Infinity Fabric to
|
||||
write or atomically update 32B of data to any memory location, per normalization
|
||||
unit.
|
||||
@@ -171,17 +171,17 @@ Panel Config:
|
||||
write or atomically update 32B or 64B of data in any memory location other than
|
||||
the accelerator's local HBM, per normalization unit.
|
||||
Write Bandwidth - PCIe: Total number of bytes due to L2 write requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Write Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 write
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Write Bandwidth - HBM: Total number of bytes due to L2 write requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Atomic Bandwidth - PCIe: Total number of bytes due to L2 atomic requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Atomic Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 atomic
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Atomic Bandwidth - HBM: Total number of bytes due to L2 atomic requests due to
|
||||
HBM traffic, per normalization unit.
|
||||
HBM traffic, divided by total duration.
|
||||
Atomic: The total number of L2 requests to Infinity Fabric to atomically update
|
||||
32B or 64B of data in any memory location, per normalization unit. See Request
|
||||
flow for more detail. Note that on current CDNA accelerators, such as the MI2XX,
|
||||
@@ -257,12 +257,12 @@ Panel Config:
|
||||
metric:
|
||||
Read BW:
|
||||
avg: AVG((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA0_RDREQ_32B_sum * 32) + ((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_32B_sum)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Read Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_RDREQ_DRAM_sum / TCC_EA0_RDREQ_sum) if (TCC_EA0_RDREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -289,12 +289,12 @@ Panel Config:
|
||||
unit: pct
|
||||
Write and Atomic BW:
|
||||
avg: AVG((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Write and Atomic Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_WRREQ_DRAM_sum / TCC_EA0_WRREQ_sum) if (TCC_EA0_WRREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -362,10 +362,10 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
avg: AVG((TCC_REQ_sum * 128) / $denom)
|
||||
min: MIN((TCC_REQ_sum * 128) / $denom)
|
||||
max: MAX((TCC_REQ_sum * 128) / $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
min: MIN((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
max: MAX((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Req:
|
||||
avg: AVG((TCC_REQ_sum / $denom))
|
||||
min: MIN((TCC_REQ_sum / $denom))
|
||||
|
||||
+10
-6
@@ -11,8 +11,12 @@ Panel Config:
|
||||
instructions, averaged over the lifetime of the kernel. Calculated as the ratio
|
||||
of the total number of cycles spent by the scheduler issuing LDS instructions
|
||||
over the total CU cycles.
|
||||
Theoretical Bandwidth Utilization: Indicates the maximum amount of bytes that
|
||||
could have been loaded from, stored to, or atomically updated in the LDS divided
|
||||
as percentage of theoretical peak. Does not take into account the execution
|
||||
mask of the wavefront when the instruction was executed.
|
||||
Theoretical Bandwidth: Indicates the maximum amount of bytes that could have been
|
||||
loaded from, stored to, or atomically updated in the LDS per normalization unit.
|
||||
loaded from, stored to, or atomically updated in the LDS divided by total duration.
|
||||
Does not take into account the execution mask of the wavefront when the instruction
|
||||
was executed.
|
||||
Bank Conflict Rate: Indicates the percentage of active LDS cycles that were spent
|
||||
@@ -58,7 +62,7 @@ Panel Config:
|
||||
Access Rate:
|
||||
value: AVG(((200 * SQ_ACTIVE_INST_LDS) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu)))
|
||||
unit: Pct of Peak
|
||||
Theoretical Bandwidth (% of Peak):
|
||||
Theoretical Bandwidth Utilization:
|
||||
value: AVG((((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ (End_Timestamp - Start_Timestamp)) / (($max_sclk * $cu_per_gpu) * 0.00128)))
|
||||
unit: Pct of Peak
|
||||
@@ -86,12 +90,12 @@ Panel Config:
|
||||
unit: (Instr + $normUnit)
|
||||
Theoretical Bandwidth:
|
||||
avg: AVG(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
LDS Latency:
|
||||
avg: AVG(((SQ_ACCUM_PREV_HIRES / SQ_INSTS_LDS) if (SQ_INSTS_LDS != 0) else
|
||||
None))
|
||||
|
||||
+15
-12
@@ -3,15 +3,18 @@ Panel Config:
|
||||
id: 1300
|
||||
title: Instruction Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the L1I cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of L1I requests over the
|
||||
total L1I cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the L1I cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of L1I requests over
|
||||
the total L1I cycles.
|
||||
Cache Hit Rate: The percent of L1I requests that hit [#l1i-cache]_ on a previously
|
||||
loaded line the cache. Calculated as the ratio of the number of L1I requests
|
||||
that hit over the number of all L1I requests.
|
||||
L1I-L2 Bandwidth: "The percent of the peak theoretical L1I \u2192 L2 cache request\
|
||||
\ bandwidth achieved. Calculated as the ratio of the total number of requests\
|
||||
\ from the L1I to the L2 cache over the total L1I-L2 interface cycles."
|
||||
L1I-L2 Bandwidth Utilization: "The percent of the peak theoretical L1I \u2192\
|
||||
\ L2 cache request bandwidth achieved. Calculated as the ratio of the total\
|
||||
\ number of requests from the L1I to the L2 cache over the total L1I-L2 interface\
|
||||
\ cycles."
|
||||
L1I-L2 Bandwidth: Total number of bytes transferred across L1I - L2 interface
|
||||
divided by total duration.
|
||||
Req: The total number of requests made to the L1I per normalization-unit
|
||||
Hits: The total number of L1I requests that hit on a previously loaded cache line,
|
||||
per normalization-unit.
|
||||
@@ -30,7 +33,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_ICACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -38,7 +41,7 @@ Panel Config:
|
||||
value: AVG(((SQC_ICACHE_HITS * 100) / ((SQC_ICACHE_HITS + SQC_ICACHE_MISSES)
|
||||
+ SQC_ICACHE_MISSES_DUPLICATE)))
|
||||
unit: Pct of Peak
|
||||
L1I-L2 Bandwidth:
|
||||
L1I-L2 Bandwidth Utilization:
|
||||
value: AVG(((SQC_TC_INST_REQ * 100000) / (2 * ($max_sclk * $sqc_per_gpu)
|
||||
* (End_Timestamp - Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -100,7 +103,7 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
L1I-L2 Bandwidth:
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
+13
-10
@@ -3,14 +3,17 @@ Panel Config:
|
||||
id: 1400
|
||||
title: Scalar L1 Data Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the sL1D cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of sL1D requests over the
|
||||
total sL1D cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the sL1D cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of sL1D requests
|
||||
over the total sL1D cycles.
|
||||
Cache Hit Rate: Indicates the percent of sL1D requests that hit on a previously
|
||||
loaded line the cache. The ratio of the number of sL1D requests that hit over
|
||||
the number of all sL1D requests.
|
||||
sL1D-L2 BW Utilization: The percentage of the peak theoretical sL1D - L2 interface
|
||||
bandwidth acheived.\ \ Caclulated as total number of bytes read from, written
|
||||
to, or atomically updated\ \ across the sL1D - L2 interface.
|
||||
sL1D-L2 BW: "The total number of bytes read from, written to, or atomically updated\
|
||||
\ across the sL1D\u2194L2 interface, per normalization unit. Note that sL1D\
|
||||
\ across the sL1D\u2194L2 interface, divided by total duration. Note that sL1D\
|
||||
\ writes and atomics are typically unused on current CDNA accelerators, so in\
|
||||
\ the majority of cases this can be interpreted as an sL1D\u2192L2 read bandwidth."
|
||||
Req: The total number of requests, of any size or type, made to the sL1D per normalization
|
||||
@@ -51,7 +54,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_DCACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -60,7 +63,7 @@ Panel Config:
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE)) if ((SQC_DCACHE_HITS + SQC_DCACHE_MISSES
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE) != 0) else None))
|
||||
unit: Pct of Peak
|
||||
sL1D-L2 BW:
|
||||
sL1D-L2 BW Utilization:
|
||||
value: AVG(((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 100000) / (2 * ($max_sclk * $sqc_per_gpu) * (End_Timestamp - Start_Timestamp)))
|
||||
unit: Pct of Peak
|
||||
@@ -158,12 +161,12 @@ Panel Config:
|
||||
metric:
|
||||
sL1D-L2 BW:
|
||||
avg: AVG(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Read Req:
|
||||
avg: AVG((SQC_TC_DATA_READ_REQ / $denom))
|
||||
min: MIN((SQC_TC_DATA_READ_REQ / $denom))
|
||||
|
||||
+21
-21
@@ -5,12 +5,12 @@ Panel Config:
|
||||
metrics_description:
|
||||
Hit rate: The ratio of the number of vL1D cache line requests that hit in vL1D
|
||||
cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Bandwidth: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions, as a percent of the peak theoretical bandwidth achievable on the
|
||||
specific accelerator. The number of bytes is calculated as the number of cache
|
||||
lines requested multiplied by the cache line size. This value does not consider
|
||||
partial requests, so for instance, if only a single value is requested in a
|
||||
cache line, the data movement will still be counted as a full cache line.
|
||||
Bandwidth Utilization: The number of bytes looked up in the vL1D cache as a result
|
||||
of VMEM instructions, as a percent of the peak theoretical bandwidth achievable
|
||||
on the specific accelerator. The number of bytes is calculated as the number
|
||||
of cache lines requested multiplied by the cache line size. This value does
|
||||
not consider partial requests, so for instance, if only a single value is requested
|
||||
in a cache line, the data movement will still be counted as a full cache line.
|
||||
Utilization: Indicates how busy the vL1D Cache RAM was during the kernel execution.
|
||||
The number of cycles where the vL1D Cache RAM is actively processing any request
|
||||
divided by the number of cycles where the vL1D is active.
|
||||
@@ -42,11 +42,11 @@ Panel Config:
|
||||
Atomic Req: The total number of incoming atomic requests from the address processing
|
||||
unit after coalescing per normalization unit.
|
||||
Cache BW: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions per normalization unit. The number of bytes is calculated as the
|
||||
number of cache lines requested multiplied by the cache line size. This value
|
||||
does not consider partial requests, so for instance, if only a single value
|
||||
is requested in a cache line, the data movement will still be counted as a full
|
||||
cache line.
|
||||
instructions divided by total duration. The number of bytes is calculated as
|
||||
the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
as a full cache line.
|
||||
Cache Hit Rate: The ratio of the number of vL1D cache line requests that hit in
|
||||
vL1D cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Cache Accesses: The total number of cache line lookups in the vL1D.
|
||||
@@ -57,7 +57,7 @@ Panel Config:
|
||||
command during the kernel's execution per normalization unit. This may be triggered
|
||||
by, for instance, the buffer_wbinvl1 instruction.
|
||||
L1-L2 BW: The number of bytes transferred across the vL1D-L2 interface as a result
|
||||
of VMEM instructions, per normalization unit. The number of bytes is calculated
|
||||
of VMEM instructions, divided by total duration. The number of bytes is calculated
|
||||
as the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
@@ -128,7 +128,7 @@ Panel Config:
|
||||
/ TCP_TOTAL_CACHE_ACCESSES_sum)) if (TCP_TOTAL_CACHE_ACCESSES_sum != 0)
|
||||
else None))
|
||||
unit: Pct of Peak
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp
|
||||
- Start_Timestamp)))) / ((($max_sclk / 1000) * 128) * $cu_per_gpu))
|
||||
unit: Pct of Peak
|
||||
@@ -201,10 +201,10 @@ Panel Config:
|
||||
/ $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Cache BW:
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Cache Hit Rate:
|
||||
avg: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITH_RET_REQ_sum) + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum))
|
||||
@@ -242,12 +242,12 @@ Panel Config:
|
||||
unit: (Req + $normUnit)
|
||||
L1-L2 BW:
|
||||
avg: AVG(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
L1-L2 Read:
|
||||
avg: AVG((TCP_TCC_READ_REQ_sum / $denom))
|
||||
min: MIN((TCP_TCC_READ_REQ_sum / $denom))
|
||||
|
||||
+33
-30
@@ -20,8 +20,8 @@ Panel Config:
|
||||
HBM Bandwidth: Maximum theoretical bandwidth of the accelerator's local high-bandwidth
|
||||
memory (HBM) per unit time. This value is calculated as the number of HBM channels
|
||||
multiplied by the HBM channel width multiplied by the HBM clock frequency.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric per
|
||||
normalization unit.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric divided
|
||||
by total duration.
|
||||
HBM Read Traffic: The percent of read requests generated by the L2 cache that
|
||||
are routed to the accelerator's local high-bandwidth memory (HBM). This breakdown
|
||||
does not consider the size of the request (meaning that 32B and 64B requests
|
||||
@@ -42,9 +42,9 @@ Panel Config:
|
||||
as a single request), so this metric only approximates the percent of the L2-Fabric
|
||||
read bandwidth directed to an uncached memory location.
|
||||
Write and Atomic BW: The total number of bytes written by the L2 over Infinity
|
||||
Fabric by write and atomic operations per normalization unit. Note that on current
|
||||
CDNA accelerators, such as the MI2XX, requests are only considered atomic by
|
||||
Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
Fabric by write and atomic operations divided by total duration. Note that on
|
||||
current CDNA accelerators, such as the MI2XX, requests are only considered atomic
|
||||
by Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
fine-grained memory allocations or uncached memory allocations on the MI2XX.
|
||||
HBM Write and Atomic Traffic: The percent of write and atomic requests generated
|
||||
by the L2 cache that are routed to the accelerator's local high-bandwidth memory
|
||||
@@ -82,17 +82,17 @@ Panel Config:
|
||||
Atomic Latency: The time-averaged number of cycles atomic requests spent in Infinity
|
||||
Fabric before a completion acknowledgement (atomic without return value) or
|
||||
data (atomic with return value) was returned to the L2.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, per normalization unit.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, divided by total duration.
|
||||
The number of bytes is calculated as the number of cache lines requested multiplied
|
||||
by the cache line size. This value does not consider partial requests, so for
|
||||
example, if only a single value is requested in a cache line, the data movement
|
||||
will still be counted as a full cache line.
|
||||
Read Bandwidth: Total number of bytes looked up in the L2 cache for read requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Write Bandwidth: Total number of bytes looked up in the L2 cache for write requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Atomic Bandwidth: Total number of bytes looked up in the L2 cache for atomic requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Req: The total number of incoming requests to the L2 from all clients for all
|
||||
request types, per normalization unit.
|
||||
Read Req: The total number of read requests to the L2 from all clients.
|
||||
@@ -150,11 +150,11 @@ Panel Config:
|
||||
64B of data from any source other than the accelerator's local HBM, per normalization
|
||||
unit.
|
||||
Read Bandwidth - PCIe: Total number of bytes due to L2 read requests due to PCIe
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
"Read Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 read
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Read Bandwidth - HBM: Total number of bytes due to L2 read requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Write and Atomic (32B): The total number of L2 requests to Infinity Fabric to
|
||||
write or atomically update 32B of data to any memory location, per normalization
|
||||
unit.
|
||||
@@ -171,17 +171,17 @@ Panel Config:
|
||||
write or atomically update 32B or 64B of data in any memory location other than
|
||||
the accelerator's local HBM, per normalization unit.
|
||||
Write Bandwidth - PCIe: Total number of bytes due to L2 write requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Write Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 write
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Write Bandwidth - HBM: Total number of bytes due to L2 write requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Atomic Bandwidth - PCIe: Total number of bytes due to L2 atomic requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Atomic Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 atomic
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Atomic Bandwidth - HBM: Total number of bytes due to L2 atomic requests due to
|
||||
HBM traffic, per normalization unit.
|
||||
HBM traffic, divided by total duration.
|
||||
Atomic: The total number of L2 requests to Infinity Fabric to atomically update
|
||||
32B or 64B of data in any memory location, per normalization unit. See Request
|
||||
flow for more detail. Note that on current CDNA accelerators, such as the MI2XX,
|
||||
@@ -258,12 +258,15 @@ Panel Config:
|
||||
metric:
|
||||
Read BW:
|
||||
avg: AVG(((128 * TCC_BUBBLE_sum + 64 * (TCC_EA0_RDREQ_sum - TCC_BUBBLE_sum
|
||||
- TCC_EA0_RDREQ_32B_sum) + 32 * TCC_EA0_RDREQ_32B_sum) / $denom))
|
||||
- TCC_EA0_RDREQ_32B_sum) + 32 * TCC_EA0_RDREQ_32B_sum) / (End_Timestamp
|
||||
- Start_Timestamp)))
|
||||
min: MIN(((128 * TCC_BUBBLE_sum + 64 * (TCC_EA0_RDREQ_sum - TCC_BUBBLE_sum
|
||||
- TCC_EA0_RDREQ_32B_sum) + 32 * TCC_EA0_RDREQ_32B_sum) / $denom))
|
||||
- TCC_EA0_RDREQ_32B_sum) + 32 * TCC_EA0_RDREQ_32B_sum) / (End_Timestamp
|
||||
- Start_Timestamp)))
|
||||
max: MAX(((128 * TCC_BUBBLE_sum + 64 * (TCC_EA0_RDREQ_sum - TCC_BUBBLE_sum
|
||||
- TCC_EA0_RDREQ_32B_sum) + 32 * TCC_EA0_RDREQ_32B_sum) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
- TCC_EA0_RDREQ_32B_sum) + 32 * TCC_EA0_RDREQ_32B_sum) / (End_Timestamp
|
||||
- Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Read Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_RDREQ_DRAM_sum / TCC_EA0_RDREQ_sum) if (TCC_EA0_RDREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -290,12 +293,12 @@ Panel Config:
|
||||
unit: pct
|
||||
Write and Atomic BW:
|
||||
avg: AVG((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Write and Atomic Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_WRREQ_DRAM_sum / TCC_EA0_WRREQ_sum) if (TCC_EA0_WRREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -363,10 +366,10 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
avg: AVG((TCC_REQ_sum * 128) / $denom)
|
||||
min: MIN((TCC_REQ_sum * 128) / $denom)
|
||||
max: MAX((TCC_REQ_sum * 128) / $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
min: MIN((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
max: MAX((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Req:
|
||||
avg: AVG((TCC_REQ_sum / $denom))
|
||||
min: MIN((TCC_REQ_sum / $denom))
|
||||
|
||||
+10
-6
@@ -11,8 +11,12 @@ Panel Config:
|
||||
instructions, averaged over the lifetime of the kernel. Calculated as the ratio
|
||||
of the total number of cycles spent by the scheduler issuing LDS instructions
|
||||
over the total CU cycles.
|
||||
Theoretical Bandwidth Utilization: Indicates the maximum amount of bytes that
|
||||
could have been loaded from, stored to, or atomically updated in the LDS divided
|
||||
as percentage of theoretical peak. Does not take into account the execution
|
||||
mask of the wavefront when the instruction was executed.
|
||||
Theoretical Bandwidth: Indicates the maximum amount of bytes that could have been
|
||||
loaded from, stored to, or atomically updated in the LDS per normalization unit.
|
||||
loaded from, stored to, or atomically updated in the LDS divided by total duration.
|
||||
Does not take into account the execution mask of the wavefront when the instruction
|
||||
was executed.
|
||||
Bank Conflict Rate: Indicates the percentage of active LDS cycles that were spent
|
||||
@@ -58,7 +62,7 @@ Panel Config:
|
||||
Access Rate:
|
||||
value: AVG(((200 * SQ_ACTIVE_INST_LDS) / ($GRBM_GUI_ACTIVE_PER_XCD * $cu_per_gpu)))
|
||||
unit: Pct of Peak
|
||||
Theoretical Bandwidth (% of Peak):
|
||||
Theoretical Bandwidth Utilization:
|
||||
value: AVG((((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ (End_Timestamp - Start_Timestamp)) / (($max_sclk * $cu_per_gpu) * 0.00128)))
|
||||
unit: Pct of Peak
|
||||
@@ -116,12 +120,12 @@ Panel Config:
|
||||
units: Gbps
|
||||
Theoretical Bandwidth:
|
||||
avg: AVG(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQ_LDS_IDX_ACTIVE - SQ_LDS_BANK_CONFLICT) * 4) * TO_INT($lds_banks_per_cu))
|
||||
/ $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
/ (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
LDS Latency:
|
||||
avg: AVG(((SQ_ACCUM_PREV_HIRES / SQ_INSTS_LDS) if (SQ_INSTS_LDS != 0) else
|
||||
None))
|
||||
|
||||
+15
-12
@@ -3,15 +3,18 @@ Panel Config:
|
||||
id: 1300
|
||||
title: Instruction Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the L1I cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of L1I requests over the
|
||||
total L1I cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the L1I cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of L1I requests over
|
||||
the total L1I cycles.
|
||||
Cache Hit Rate: The percent of L1I requests that hit [#l1i-cache]_ on a previously
|
||||
loaded line the cache. Calculated as the ratio of the number of L1I requests
|
||||
that hit over the number of all L1I requests.
|
||||
L1I-L2 Bandwidth: "The percent of the peak theoretical L1I \u2192 L2 cache request\
|
||||
\ bandwidth achieved. Calculated as the ratio of the total number of requests\
|
||||
\ from the L1I to the L2 cache over the total L1I-L2 interface cycles."
|
||||
L1I-L2 Bandwidth Utilization: "The percent of the peak theoretical L1I \u2192\
|
||||
\ L2 cache request bandwidth achieved. Calculated as the ratio of the total\
|
||||
\ number of requests from the L1I to the L2 cache over the total L1I-L2 interface\
|
||||
\ cycles."
|
||||
L1I-L2 Bandwidth: Total number of bytes transferred across L1I - L2 interface
|
||||
divided by total duration.
|
||||
Req: The total number of requests made to the L1I per normalization-unit
|
||||
Hits: The total number of L1I requests that hit on a previously loaded cache line,
|
||||
per normalization-unit.
|
||||
@@ -30,7 +33,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_ICACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -38,7 +41,7 @@ Panel Config:
|
||||
value: AVG(((SQC_ICACHE_HITS * 100) / ((SQC_ICACHE_HITS + SQC_ICACHE_MISSES)
|
||||
+ SQC_ICACHE_MISSES_DUPLICATE)))
|
||||
unit: Pct of Peak
|
||||
L1I-L2 Bandwidth:
|
||||
L1I-L2 Bandwidth Utilization:
|
||||
value: AVG(((SQC_TC_INST_REQ * 100000) / (2 * ($max_sclk * $sqc_per_gpu)
|
||||
* (End_Timestamp - Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -100,7 +103,7 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
L1I-L2 Bandwidth:
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((SQC_TC_INST_REQ * 64) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
+13
-10
@@ -3,14 +3,17 @@ Panel Config:
|
||||
id: 1400
|
||||
title: Scalar L1 Data Cache
|
||||
metrics_description:
|
||||
Bandwidth: The number of bytes looked up in the sL1D cache, as a percent of the
|
||||
peak theoretical bandwidth. Calculated as the ratio of sL1D requests over the
|
||||
total sL1D cycles.
|
||||
Bandwidth Utilization: The number of bytes looked up in the sL1D cache, as a percent
|
||||
of the peak theoretical bandwidth. Calculated as the ratio of sL1D requests
|
||||
over the total sL1D cycles.
|
||||
Cache Hit Rate: Indicates the percent of sL1D requests that hit on a previously
|
||||
loaded line the cache. The ratio of the number of sL1D requests that hit over
|
||||
the number of all sL1D requests.
|
||||
sL1D-L2 BW Utilization: The percentage of the peak theoretical sL1D - L2 interface
|
||||
bandwidth acheived.\ \ Caclulated as total number of bytes read from, written
|
||||
to, or atomically updated\ \ across the sL1D - L2 interface.
|
||||
sL1D-L2 BW: "The total number of bytes read from, written to, or atomically updated\
|
||||
\ across the sL1D\u2194L2 interface, per normalization unit. Note that sL1D\
|
||||
\ across the sL1D\u2194L2 interface, divided by total duration. Note that sL1D\
|
||||
\ writes and atomics are typically unused on current CDNA accelerators, so in\
|
||||
\ the majority of cases this can be interpreted as an sL1D\u2192L2 read bandwidth."
|
||||
Req: The total number of requests, of any size or type, made to the sL1D per normalization
|
||||
@@ -51,7 +54,7 @@ Panel Config:
|
||||
value: Avg
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: AVG(((SQC_DCACHE_REQ * 100000) / (($max_sclk * $sqc_per_gpu) * (End_Timestamp
|
||||
- Start_Timestamp))))
|
||||
unit: Pct of Peak
|
||||
@@ -60,7 +63,7 @@ Panel Config:
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE)) if ((SQC_DCACHE_HITS + SQC_DCACHE_MISSES
|
||||
+ SQC_DCACHE_MISSES_DUPLICATE) != 0) else None))
|
||||
unit: Pct of Peak
|
||||
sL1D-L2 BW:
|
||||
sL1D-L2 BW Utilization:
|
||||
value: AVG(((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 100000) / (2 * ($max_sclk * $sqc_per_gpu) * (End_Timestamp - Start_Timestamp)))
|
||||
unit: Pct of Peak
|
||||
@@ -158,12 +161,12 @@ Panel Config:
|
||||
metric:
|
||||
sL1D-L2 BW:
|
||||
avg: AVG(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((((SQC_TC_DATA_READ_REQ + SQC_TC_DATA_WRITE_REQ + SQC_TC_DATA_ATOMIC_REQ)
|
||||
* 64)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 64)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Read Req:
|
||||
avg: AVG((SQC_TC_DATA_READ_REQ / $denom))
|
||||
min: MIN((SQC_TC_DATA_READ_REQ / $denom))
|
||||
|
||||
+21
-21
@@ -5,12 +5,12 @@ Panel Config:
|
||||
metrics_description:
|
||||
Hit rate: The ratio of the number of vL1D cache line requests that hit in vL1D
|
||||
cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Bandwidth: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions, as a percent of the peak theoretical bandwidth achievable on the
|
||||
specific accelerator. The number of bytes is calculated as the number of cache
|
||||
lines requested multiplied by the cache line size. This value does not consider
|
||||
partial requests, so for instance, if only a single value is requested in a
|
||||
cache line, the data movement will still be counted as a full cache line.
|
||||
Bandwidth Utilization: The number of bytes looked up in the vL1D cache as a result
|
||||
of VMEM instructions, as a percent of the peak theoretical bandwidth achievable
|
||||
on the specific accelerator. The number of bytes is calculated as the number
|
||||
of cache lines requested multiplied by the cache line size. This value does
|
||||
not consider partial requests, so for instance, if only a single value is requested
|
||||
in a cache line, the data movement will still be counted as a full cache line.
|
||||
Utilization: Indicates how busy the vL1D Cache RAM was during the kernel execution.
|
||||
The number of cycles where the vL1D Cache RAM is actively processing any request
|
||||
divided by the number of cycles where the vL1D is active.
|
||||
@@ -42,11 +42,11 @@ Panel Config:
|
||||
Atomic Req: The total number of incoming atomic requests from the address processing
|
||||
unit after coalescing per normalization unit.
|
||||
Cache BW: The number of bytes looked up in the vL1D cache as a result of VMEM
|
||||
instructions per normalization unit. The number of bytes is calculated as the
|
||||
number of cache lines requested multiplied by the cache line size. This value
|
||||
does not consider partial requests, so for instance, if only a single value
|
||||
is requested in a cache line, the data movement will still be counted as a full
|
||||
cache line.
|
||||
instructions divided by total duration. The number of bytes is calculated as
|
||||
the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
as a full cache line.
|
||||
Cache Hit Rate: The ratio of the number of vL1D cache line requests that hit in
|
||||
vL1D cache over the total number of cache line requests to the vL1D Cache RAM.
|
||||
Cache Accesses: The total number of cache line lookups in the vL1D.
|
||||
@@ -57,7 +57,7 @@ Panel Config:
|
||||
command during the kernel's execution per normalization unit. This may be triggered
|
||||
by, for instance, the buffer_wbinvl1 instruction.
|
||||
L1-L2 BW: The number of bytes transferred across the vL1D-L2 interface as a result
|
||||
of VMEM instructions, per normalization unit. The number of bytes is calculated
|
||||
of VMEM instructions, divided by total duration. The number of bytes is calculated
|
||||
as the number of cache lines requested multiplied by the cache line size. This
|
||||
value does not consider partial requests, so for instance, if only a single
|
||||
value is requested in a cache line, the data movement will still be counted
|
||||
@@ -128,7 +128,7 @@ Panel Config:
|
||||
/ TCP_TOTAL_CACHE_ACCESSES_sum)) if (TCP_TOTAL_CACHE_ACCESSES_sum != 0)
|
||||
else None))
|
||||
unit: Pct of Peak
|
||||
Bandwidth:
|
||||
Bandwidth Utilization:
|
||||
value: ((100 * AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp
|
||||
- Start_Timestamp)))) / ((($max_sclk / 1000) * 128) * $cu_per_gpu))
|
||||
unit: Pct of Peak
|
||||
@@ -216,10 +216,10 @@ Panel Config:
|
||||
/ $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Cache BW:
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((TCP_TOTAL_CACHE_ACCESSES_sum * 128) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Cache Hit Rate:
|
||||
avg: AVG(((100 - ((100 * (((TCP_TCC_READ_REQ_sum + TCP_TCC_WRITE_REQ_sum)
|
||||
+ TCP_TCC_ATOMIC_WITH_RET_REQ_sum) + TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum))
|
||||
@@ -257,12 +257,12 @@ Panel Config:
|
||||
unit: (Req + $normUnit)
|
||||
L1-L2 BW:
|
||||
avg: AVG(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX(((128 * TCP_TCC_READ_REQ_sum + 64 * (TCP_TCC_WRITE_REQ_sum + TCP_TCC_ATOMIC_WITH_RET_REQ_sum
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
+ TCP_TCC_ATOMIC_WITHOUT_RET_REQ_sum)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
Tag RAM 0 Req:
|
||||
avg: AVG((TCP_TAGRAM0_REQ_sum / $denom))
|
||||
min: MIN((TCP_TAGRAM0_REQ_sum / $denom))
|
||||
|
||||
+78
-78
@@ -20,8 +20,8 @@ Panel Config:
|
||||
HBM Bandwidth: Maximum theoretical bandwidth of the accelerator's local high-bandwidth
|
||||
memory (HBM) per unit time. This value is calculated as the number of HBM channels
|
||||
multiplied by the HBM channel width multiplied by the HBM clock frequency.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric per
|
||||
normalization unit.
|
||||
Read BW: The total number of bytes read by the L2 cache from Infinity Fabric divided
|
||||
by total duration.
|
||||
HBM Read Traffic: The percent of read requests generated by the L2 cache that
|
||||
are routed to the accelerator's local high-bandwidth memory (HBM). This breakdown
|
||||
does not consider the size of the request (meaning that 32B and 64B requests
|
||||
@@ -42,9 +42,9 @@ Panel Config:
|
||||
as a single request), so this metric only approximates the percent of the L2-Fabric
|
||||
read bandwidth directed to an uncached memory location.
|
||||
Write and Atomic BW: The total number of bytes written by the L2 over Infinity
|
||||
Fabric by write and atomic operations per normalization unit. Note that on current
|
||||
CDNA accelerators, such as the MI2XX, requests are only considered atomic by
|
||||
Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
Fabric by write and atomic operations divided by total duration. Note that on
|
||||
current CDNA accelerators, such as the MI2XX, requests are only considered atomic
|
||||
by Infinity Fabric if they are targeted at non-write-cacheable memory, for example,
|
||||
fine-grained memory allocations or uncached memory allocations on the MI2XX.
|
||||
HBM Write and Atomic Traffic: The percent of write and atomic requests generated
|
||||
by the L2 cache that are routed to the accelerator's local high-bandwidth memory
|
||||
@@ -82,17 +82,17 @@ Panel Config:
|
||||
Atomic Latency: The time-averaged number of cycles atomic requests spent in Infinity
|
||||
Fabric before a completion acknowledgement (atomic without return value) or
|
||||
data (atomic with return value) was returned to the L2.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, per normalization unit.
|
||||
Bandwidth: The number of bytes looked up in the L2 cache, divided by total duration.
|
||||
The number of bytes is calculated as the number of cache lines requested multiplied
|
||||
by the cache line size. This value does not consider partial requests, so for
|
||||
example, if only a single value is requested in a cache line, the data movement
|
||||
will still be counted as a full cache line.
|
||||
Read Bandwidth: Total number of bytes looked up in the L2 cache for read requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Write Bandwidth: Total number of bytes looked up in the L2 cache for write requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Atomic Bandwidth: Total number of bytes looked up in the L2 cache for atomic requests,
|
||||
per normalization unit.
|
||||
divided by total duration.
|
||||
Req: The total number of incoming requests to the L2 from all clients for all
|
||||
request types, per normalization unit.
|
||||
Read Req: The total number of read requests to the L2 from all clients.
|
||||
@@ -150,11 +150,11 @@ Panel Config:
|
||||
64B of data from any source other than the accelerator's local HBM, per normalization
|
||||
unit.
|
||||
Read Bandwidth - PCIe: Total number of bytes due to L2 read requests due to PCIe
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
"Read Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 read
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Read Bandwidth - HBM: Total number of bytes due to L2 read requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Write and Atomic (32B): The total number of L2 requests to Infinity Fabric to
|
||||
write or atomically update 32B of data to any memory location, per normalization
|
||||
unit.
|
||||
@@ -171,17 +171,17 @@ Panel Config:
|
||||
write or atomically update 32B or 64B of data in any memory location other than
|
||||
the accelerator's local HBM, per normalization unit.
|
||||
Write Bandwidth - PCIe: Total number of bytes due to L2 write requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Write Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 write
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Write Bandwidth - HBM: Total number of bytes due to L2 write requests due to HBM
|
||||
traffic, per normalization unit.
|
||||
traffic, divided by total duration.
|
||||
Atomic Bandwidth - PCIe: Total number of bytes due to L2 atomic requests due to
|
||||
PCIe traffic, per normalization unit.
|
||||
PCIe traffic, divided by total duration.
|
||||
"Atomic Bandwidth - Infinity Fabric\u2122": Total number of bytes due to L2 atomic
|
||||
requests due to Infinity Fabric traffic, per normalization unit.
|
||||
requests due to Infinity Fabric traffic, divided by total duration.
|
||||
Atomic Bandwidth - HBM: Total number of bytes due to L2 atomic requests due to
|
||||
HBM traffic, per normalization unit.
|
||||
HBM traffic, divided by total duration.
|
||||
Atomic: The total number of L2 requests to Infinity Fabric to atomically update
|
||||
32B or 64B of data in any memory location, per normalization unit. See Request
|
||||
flow for more detail. Note that on current CDNA accelerators, such as the MI2XX,
|
||||
@@ -257,12 +257,12 @@ Panel Config:
|
||||
metric:
|
||||
Read BW:
|
||||
avg: AVG((((TCC_EA0_RDREQ_32B_sum * 32) + (TCC_EA0_RDREQ_64B_sum * 64) +
|
||||
(TCC_EA0_RDREQ_128B_sum * 128)) / $denom))
|
||||
(TCC_EA0_RDREQ_128B_sum * 128)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA0_RDREQ_32B_sum * 32) + (TCC_EA0_RDREQ_64B_sum * 64) +
|
||||
(TCC_EA0_RDREQ_128B_sum * 128)) / $denom))
|
||||
(TCC_EA0_RDREQ_128B_sum * 128)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA0_RDREQ_32B_sum * 32) + (TCC_EA0_RDREQ_64B_sum * 64) +
|
||||
(TCC_EA0_RDREQ_128B_sum * 128)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
(TCC_EA0_RDREQ_128B_sum * 128)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Read Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_RDREQ_DRAM_sum / TCC_EA0_RDREQ_sum) if (TCC_EA0_RDREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -289,12 +289,12 @@ Panel Config:
|
||||
unit: pct
|
||||
Write and Atomic BW:
|
||||
avg: AVG((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
min: MIN((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
max: MAX((((TCC_EA0_WRREQ_64B_sum * 64) + ((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_64B_sum)
|
||||
* 32)) / $denom))
|
||||
unit: (Bytes + $normUnit)
|
||||
* 32)) / (End_Timestamp - Start_Timestamp)))
|
||||
unit: Gbps
|
||||
HBM Write and Atomic Traffic:
|
||||
avg: AVG((100 * (TCC_EA0_WRREQ_DRAM_sum / TCC_EA0_WRREQ_sum) if (TCC_EA0_WRREQ_sum
|
||||
!= 0) else None))
|
||||
@@ -381,25 +381,25 @@ Panel Config:
|
||||
unit: Unit
|
||||
metric:
|
||||
Bandwidth:
|
||||
avg: AVG((TCC_REQ_sum * 128) / $denom)
|
||||
min: MIN((TCC_REQ_sum * 128) / $denom)
|
||||
max: MAX((TCC_REQ_sum * 128) / $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
min: MIN((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
max: MAX((TCC_REQ_sum * 128) / (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Read Bandwidth:
|
||||
avg: AVG(TCC_READ_SECTORS_sum * 32/ $denom)
|
||||
min: MIN(TCC_READ_SECTORS_sum * 32/ $denom)
|
||||
max: MAX(TCC_READ_SECTORS_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_READ_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_READ_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_READ_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Write Bandwidth:
|
||||
avg: AVG(TCC_WRITE_SECTORS_sum * 32/ $denom)
|
||||
min: MIN(TCC_WRITE_SECTORS_sum * 32/ $denom)
|
||||
max: MAX(TCC_WRITE_SECTORS_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_WRITE_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_WRITE_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_WRITE_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Atomic Bandwidth:
|
||||
avg: AVG(TCC_ATOMIC_SECTORS_sum * 32/ $denom)
|
||||
min: MIN(TCC_ATOMIC_SECTORS_sum * 32/ $denom)
|
||||
max: MAX(TCC_ATOMIC_SECTORS_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_ATOMIC_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_ATOMIC_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_ATOMIC_SECTORS_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Req:
|
||||
avg: AVG((TCC_REQ_sum / $denom))
|
||||
min: MIN((TCC_REQ_sum / $denom))
|
||||
@@ -653,20 +653,20 @@ Panel Config:
|
||||
max: MAX((MAX((TCC_EA0_RDREQ_sum - TCC_EA0_RDREQ_DRAM_sum), 0) / $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Read Bandwidth - PCIe:
|
||||
avg: AVG(TCC_EA0_RDREQ_IO_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_RDREQ_IO_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_RDREQ_IO_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_RDREQ_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_RDREQ_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_RDREQ_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
"Read Bandwidth - Infinity Fabric\u2122":
|
||||
avg: AVG(TCC_EA0_RDREQ_GMI_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_RDREQ_GMI_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_RDREQ_GMI_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_RDREQ_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_RDREQ_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_RDREQ_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Read Bandwidth - HBM:
|
||||
avg: AVG(TCC_EA0_RDREQ_DRAM_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_RDREQ_DRAM_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_RDREQ_DRAM_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_RDREQ_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_RDREQ_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_RDREQ_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
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))
|
||||
@@ -693,20 +693,20 @@ Panel Config:
|
||||
max: MAX((MAX((TCC_EA0_WRREQ_sum - TCC_EA0_WRREQ_DRAM_sum), 0) / $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Write Bandwidth - PCIe:
|
||||
avg: AVG(TCC_EA0_WRREQ_WRITE_IO_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_WRREQ_WRITE_IO_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_WRREQ_WRITE_IO_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_WRREQ_WRITE_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_WRREQ_WRITE_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_WRREQ_WRITE_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
"Write Bandwidth - Infinity Fabric\u2122":
|
||||
avg: AVG(TCC_EA0_WRREQ_WRITE_GMI_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_WRREQ_WRITE_GMI_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_WRREQ_WRITE_GMI_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_WRREQ_WRITE_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_WRREQ_WRITE_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_WRREQ_WRITE_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Write Bandwidth - HBM:
|
||||
avg: AVG(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_WRREQ_WRITE_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Atomic:
|
||||
avg: AVG((TCC_EA0_ATOMIC_sum / $denom))
|
||||
min: MIN((TCC_EA0_ATOMIC_sum / $denom))
|
||||
@@ -718,17 +718,17 @@ Panel Config:
|
||||
max: MAX((TCC_EA0_WRREQ_ATOMIC_DRAM_sum / $denom))
|
||||
unit: (Req + $normUnit)
|
||||
Atomic Bandwidth - PCIe:
|
||||
avg: AVG(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_WRREQ_ATOMIC_IO_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
"Atomic Bandwidth - Infinity Fabric\u2122":
|
||||
avg: AVG(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_WRREQ_ATOMIC_GMI_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Atomic Bandwidth - HBM:
|
||||
avg: AVG(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum * 32/ $denom)
|
||||
min: MIN(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum * 32/ $denom)
|
||||
max: MAX(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum * 32/ $denom)
|
||||
unit: (Bytes + $normUnit)
|
||||
avg: AVG(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
min: MIN(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
max: MAX(TCC_EA0_WRREQ_ATOMIC_DRAM_32B_sum * 32/ (End_Timestamp - Start_Timestamp))
|
||||
unit: Gbps
|
||||
Tagairt in Eagrán Nua
Cuir bac ar úsáideoir