Fix HIP Streams Duplication Error (#313)
* Fix stream duplication and fixed tests * Added comments to explain stream.cpp code, change stream nullptr check to occur in update table to prevent readding null stream, simplified hip-streams bin file code, add destroyStreams to hip-streams bin file code * Removed roctx from CMakeLists.txt * Updated documentation * Fix documentation * Removed update_table for HIP compiler table and updated stream.cpp to remove support for HIP compiler table * Added runtime initialization check for HIP * Changed tool name, working on fixing memory management * Added context for counter collection kernel rename combination * Changed name from map to set and changed description * Fix documentation description for group-by-queue * Merged memory copy and kernel operations onto a single track when on the same stream * Updated perfetto output to remove hardware information from track name to merge all memory copy and kernel operations on the same stream to the same track: * Most pr comments addressed * Added filter for counter collection and removed kernel buffer tracing hack * Added PR comment fixes --------- Co-authored-by: Madsen, Jonathan <Jonathan.Madsen@amd.com>
This commit is contained in:
@@ -253,6 +253,14 @@ WriteInterceptor(const void* packets,
|
||||
tracing::populate_contexts(ROCPROFILER_CALLBACK_TRACING_KERNEL_DISPATCH,
|
||||
ROCPROFILER_BUFFER_TRACING_KERNEL_DISPATCH,
|
||||
tracing_data_v);
|
||||
// these are for the services (dispatch counter collection, pc sampling, ATT) which use
|
||||
// the queue/queue_controller callback mechanism
|
||||
const auto queue_callback_context_filter = [](const context::context* ctx) {
|
||||
return (ctx->counter_collection || ctx->pc_sampler || ctx->dispatch_thread_trace);
|
||||
};
|
||||
|
||||
for(const auto* itr : context::get_active_contexts(queue_callback_context_filter))
|
||||
tracing_data_v.external_correlation_ids.emplace(itr, tracing::empty_user_data);
|
||||
|
||||
const auto* packets_arr = static_cast<const rocprofiler_packet*>(packets);
|
||||
auto transformed_packets = std::vector<rocprofiler_packet>{};
|
||||
|
||||
Fai riferimento in un nuovo problema
Block a user