SWDEV-429377 : Fixing kernel name truncation for plugins
Change-Id: I5875048d1773959fdd73cbff5498854e61b92af8
[ROCm/rocprofiler commit: 49bd09b46c]
This commit is contained in:
committed by
Arjun Raj Kuppala
parent
7f9ec63c49
commit
7aaf49a641
@@ -612,7 +612,7 @@ void Plugin::HandleTracerRecord(const rocprofiler_record_tracer_t& record,
|
||||
std::string kernel_name;
|
||||
hip_api_data_t hip_api_data = *(record.api_data.hip);
|
||||
if (record.name != nullptr)
|
||||
kernel_name = rocprofiler::cxx_demangle(std::string(record.name));
|
||||
kernel_name = rocprofiler::truncate_name(rocprofiler::cxx_demangle(std::string(record.name)));
|
||||
else
|
||||
kernel_name = "";
|
||||
hip_api_tracer_.AddEventRecord(
|
||||
|
||||
@@ -307,7 +307,7 @@ class file_plugin_t {
|
||||
}
|
||||
if (operation_name_c) ss << ",\"" << operation_name_c << "\"";
|
||||
if (tracer_record.name && tracer_record.domain != ACTIVITY_DOMAIN_ROCTX) {
|
||||
ss << ",\"" << rocprofiler::cxx_demangle(tracer_record.name) << "\"";
|
||||
ss << ",\"" << rocprofiler::truncate_name(rocprofiler::cxx_demangle(tracer_record.name)) << "\"";
|
||||
} else if (tracer_record.domain == ACTIVITY_DOMAIN_HIP_OPS) {
|
||||
ss << ",";
|
||||
}
|
||||
@@ -379,7 +379,7 @@ class file_plugin_t {
|
||||
<< std::to_string(profiler_record->kernel_properties.wave_size);
|
||||
std::string kernel_name = "";
|
||||
if (name_length > 1) {
|
||||
kernel_name = rocprofiler::cxx_demangle(kernel_name_c);
|
||||
kernel_name = rocprofiler::truncate_name(rocprofiler::cxx_demangle(kernel_name_c));
|
||||
std::string key = "\"";
|
||||
std::size_t found = kernel_name.rfind(key);
|
||||
while (found != std::string::npos) {
|
||||
|
||||
@@ -336,7 +336,7 @@ class file_plugin_t {
|
||||
}
|
||||
if (operation_name_c) *output_file << ",\"" << operation_name_c << "\"";
|
||||
if (tracer_record.name && tracer_record.domain != ACTIVITY_DOMAIN_ROCTX) {
|
||||
*output_file << ",\"" << rocprofiler::cxx_demangle(tracer_record.name) << "\"";
|
||||
*output_file << ",\"" << rocprofiler::truncate_name(rocprofiler::cxx_demangle(tracer_record.name)) << "\"";
|
||||
} else if (tracer_record.domain == ACTIVITY_DOMAIN_HIP_OPS) {
|
||||
*output_file << ",";
|
||||
}
|
||||
@@ -369,7 +369,7 @@ class file_plugin_t {
|
||||
*output_file << std::to_string(profiler_record->header.id.handle) << ",";
|
||||
std::string kernel_name = "";
|
||||
if (name_length > 1) {
|
||||
kernel_name = rocprofiler::cxx_demangle(kernel_name_c);
|
||||
kernel_name = rocprofiler::truncate_name(rocprofiler::cxx_demangle(kernel_name_c));
|
||||
std::string key = "\"";
|
||||
std::size_t found = kernel_name.rfind(key);
|
||||
while (found != std::string::npos) {
|
||||
|
||||
@@ -121,7 +121,7 @@ std::string get_kernel_name(rocprofiler_record_profiler_t& profiler_record) {
|
||||
CHECK_ROCPROFILER(rocprofiler_query_kernel_info(ROCPROFILER_KERNEL_NAME,
|
||||
profiler_record.kernel_id, &kernel_name_c));
|
||||
if (kernel_name_c && strlen(kernel_name_c) > 1)
|
||||
kernel_name = rocprofiler::cxx_demangle(strdup(kernel_name_c));
|
||||
kernel_name = rocprofiler::truncate_name(rocprofiler::cxx_demangle(strdup(kernel_name_c)));
|
||||
}
|
||||
#pragma GCC diagnostic pop
|
||||
return kernel_name;
|
||||
@@ -548,7 +548,7 @@ class perfetto_plugin_t {
|
||||
case ACTIVITY_DOMAIN_HIP_OPS: {
|
||||
std::string::size_type pos = std::string::npos;
|
||||
if (tracer_record.name) {
|
||||
kernel_name = rocprofiler::cxx_demangle(tracer_record.name);
|
||||
kernel_name = rocprofiler::truncate_name(rocprofiler::cxx_demangle(tracer_record.name));
|
||||
TRACE_EVENT_BEGIN(
|
||||
"HIP_OPS", perfetto::DynamicString(rocprofiler::truncate_name(kernel_name).c_str()),
|
||||
gpu_track, tracer_record.timestamps.begin.value, "Agent ID",
|
||||
|
||||
Reference in New Issue
Block a user