Use Internal Correlation ID values for Kernel Rename Feature (#397)

* Updated kernel rename service to use internal correaltion IDs for external correlation IDs and kernel rename values

* Updated for review comments

* Changed if-condition in generateJSON.cpp to check if string view is empty before calling get_entry

[ROCm/rocprofiler-sdk commit: afb27f3f1a]
This commit is contained in:
Trowbridge, Ian
2025-05-19 01:34:44 -05:00
committed by GitHub
parent b097e276a9
commit 8721c866a1
4 changed files with 44 additions and 17 deletions
@@ -569,19 +569,24 @@ kernel_rename_callback(rocprofiler_callback_tracing_record_t record,
{
auto* marker_data =
static_cast<rocprofiler_callback_tracing_marker_api_data_t*>(record.payload);
auto add_message = [](std::string_view val) {
auto _hash_v = common::add_string_entry(val);
return std::string_view{*common::get_string_entry(_hash_v)};
};
if(record.operation == ROCPROFILER_MARKER_CORE_API_ID_roctxMarkA &&
record.phase == ROCPROFILER_CALLBACK_PHASE_EXIT && marker_data->args.roctxMarkA.message)
{
thread_dispatch_rename->emplace(
common::add_string_entry(marker_data->args.roctxMarkA.message));
thread_dispatch_rename->emplace(tool_metadata->add_kernel_rename_val(
add_message(marker_data->args.roctxMarkA.message), record.correlation_id.internal));
}
else if(record.operation == ROCPROFILER_MARKER_CORE_API_ID_roctxRangePushA &&
record.phase == ROCPROFILER_CALLBACK_PHASE_EXIT &&
marker_data->args.roctxRangePushA.message)
{
thread_dispatch_rename->emplace(
common::add_string_entry(marker_data->args.roctxRangePushA.message));
thread_dispatch_rename->emplace(tool_metadata->add_kernel_rename_val(
add_message(marker_data->args.roctxRangePushA.message),
record.correlation_id.internal));
}
else if(record.operation == ROCPROFILER_MARKER_CORE_API_ID_roctxRangePop &&
record.phase == ROCPROFILER_CALLBACK_PHASE_ENTER)