GFX12 PC Sampling support (#186)

The GFX12 host-trap PC sampling support in SDK and V3.
Introducing parser tests specific to GFX12.

Co-authored-by: vlaindic_amdeng <vladimir.indic@amd.com>
This commit is contained in:
systems-assistant[bot]
2025-09-22 13:17:00 +02:00
committed by GitHub
parent 997b36f5bc
commit 63a723a287
21 changed files with 1325 additions and 350 deletions
@@ -1052,6 +1052,18 @@ save(ArchiveT& ar, rocprofiler_pc_sampling_snapshot_v0_t data)
ROCP_SDK_SAVE_DATA_BITFIELD("arb_state_stall_brmsg", arb_state_stall_brmsg);
}
template <typename ArchiveT>
void
save(ArchiveT& ar, rocprofiler_pc_sampling_memory_counters_t data)
{
ROCP_SDK_SAVE_DATA_BITFIELD("load_cnt", load_cnt);
ROCP_SDK_SAVE_DATA_BITFIELD("store_cnt", store_cnt);
ROCP_SDK_SAVE_DATA_BITFIELD("bvh_cnt", bvh_cnt);
ROCP_SDK_SAVE_DATA_BITFIELD("sample_cnt", sample_cnt);
ROCP_SDK_SAVE_DATA_BITFIELD("ds_cnt", ds_cnt);
ROCP_SDK_SAVE_DATA_BITFIELD("km_cnt", km_cnt);
}
template <typename ArchiveT>
void
save(ArchiveT& ar, rocprofiler_pc_sampling_record_stochastic_v0_t data)
@@ -1076,7 +1088,11 @@ save(ArchiveT& ar, rocprofiler_pc_sampling_record_stochastic_v0_t data)
ROCP_SDK_SAVE_DATA_BITFIELD("wave_cnt", wave_count);
ROCP_SDK_SAVE_DATA_FIELD(snapshot);
// TODO: add memory counters
// serializing memory counters only if they exist
if(data.flags.has_memory_counter)
{
ROCP_SDK_SAVE_DATA_FIELD(memory_counters);
}
}
template <typename ArchiveT>