SWDEV-432445: Reorganizing ATT packet start/stop. Bump ATT parser version.

Change-Id: I979648f8a6a25aa7b499b3eea49978578f6c3f5a
Dieser Commit ist enthalten in:
Giovanni LB
2023-12-07 16:08:55 -03:00
committet von Giovanni Baraldi
Ursprung b93d5e7e79
Commit e85c6911aa
4 geänderte Dateien mit 158 neuen und 110 gelöschten Zeilen
+33 -27
Datei anzeigen
@@ -19,7 +19,7 @@ import gc
from collections import defaultdict
from service import CodeobjService
ATT_VERSION = 2
ATT_VERSION = 3
class TraceData(ctypes.Structure):
_fields_ = [
@@ -83,36 +83,42 @@ class ReturnAssemblyInfo(ctypes.Structure):
class Wave(ctypes.Structure):
_fields_ = [
("simd", ctypes.c_uint64),
("wave_id", ctypes.c_uint64),
("begin_time", ctypes.c_uint64), # Begin and end cycle
("end_time", ctypes.c_uint64),
("traceid", ctypes.c_int64),
("simd", ctypes.c_uint8),
("wave_id", ctypes.c_uint8),
("trap_status", ctypes.c_uint8),
("reserved", ctypes.c_uint8),
# total VMEM/FLAT/LDS/SMEM instructions issued
# VMEM Pipeline: instrs and stalls
("num_vmem_instrs", ctypes.c_uint32),
("num_vmem_stalls", ctypes.c_uint32),
# FLAT instrs and stalls
("num_flat_instrs", ctypes.c_uint32),
("num_flat_stalls", ctypes.c_uint32),
# LDS instr and stalls
("num_lds_instrs", ctypes.c_uint32),
("num_lds_stalls", ctypes.c_uint32),
# SCA instrs stalls
("num_salu_instrs", ctypes.c_uint32),
("num_smem_instrs", ctypes.c_uint32),
("num_salu_stalls", ctypes.c_uint32),
("num_smem_stalls", ctypes.c_uint32),
# Branch
("num_branch_instrs", ctypes.c_uint32),
("num_branch_taken_instrs", ctypes.c_uint32),
("num_branch_stalls", ctypes.c_uint32),
# total issued memory instructions
("num_mem_instrs", ctypes.c_uint64),
("num_mem_instrs", ctypes.c_uint32),
# total valus insts and stalls
("num_valu_stalls", ctypes.c_uint32),
("num_valu_instrs", ctypes.c_uint64),
# total issued instructions (compute + memory)
("num_issued_instrs", ctypes.c_uint64),
("num_valu_instrs", ctypes.c_uint64),
("num_valu_stalls", ctypes.c_uint64),
# VMEM Pipeline: instrs and stalls
("num_vmem_instrs", ctypes.c_uint64),
("num_vmem_stalls", ctypes.c_uint64),
# FLAT instrs and stalls
("num_flat_instrs", ctypes.c_uint64),
("num_flat_stalls", ctypes.c_uint64),
# LDS instr and stalls
("num_lds_instrs", ctypes.c_uint64),
("num_lds_stalls", ctypes.c_uint64),
# SCA instrs stalls
("num_salu_instrs", ctypes.c_uint64),
("num_smem_instrs", ctypes.c_uint64),
("num_salu_stalls", ctypes.c_uint64),
("num_smem_stalls", ctypes.c_uint64),
# Branch
("num_branch_instrs", ctypes.c_uint64),
("num_branch_taken_instrs", ctypes.c_uint64),
("num_branch_stalls", ctypes.c_uint64),
# Begin and end cycle
("begin_time", ctypes.c_uint64),
("end_time", ctypes.c_uint64),
("traceid", ctypes.c_int64),
("timeline_size", ctypes.c_uint64),
("instructions_size", ctypes.c_uint64),
+2 -2
Datei anzeigen
@@ -535,7 +535,7 @@ def stitch(insts, raw_code, jumps, gfxv, bIsAuto, codeservice):
matched = True
skipped_immed -= 1
elif 'scratch_' not in as_line[0]:
print('Parsing terminated at:', as_line)
print('WARNING: Parsing terminated at:', as_line)
break
if matched:
@@ -558,7 +558,7 @@ def stitch(insts, raw_code, jumps, gfxv, bIsAuto, codeservice):
N = max(N, 1)
if i != N:
print('Warning - Stitching rate: '+str(i * 100 / N)+'% matched')
print('Warning - Stitching rate: '+str(i * 100 / N)+'% matched', i, ' of ', N)
print('Leftovers:', [WaveInstCategory[insts[i+k].type] for k in range(20) if i+k < len(insts)])
try:
print(line, code[line])